Microsoft geeft tool vrij om iOS-apps te porten naar WP7

Microsoft heeft een tool vrijgegeven, waarmee iPhone-apps makkelijk kunnen worden geport naar Windows Phone 7. De tool kan api's omzetten. Een Android-versie van de tool volgt over een paar maanden, aldus het Redmondse bedrijf.

Met de tool kunnen ontwikkelaars api-calls van een applicatie opzoeken en zien welke vergelijkbare calls in Windows Phone 7 kunnen worden gemaakt. Daardoor moet werk uit handen worden genomen, denkt Microsoft. Met de tool moet de drempel lager worden om applicaties te ontwikkelen voor Windows Phone 7. De tool kan overigens niet van alle api's equivalenten vinden, omdat de platformen te veel verschillen.

Een Android-versie van de 'api mapping software' volgt deze zomer. Daarmee moeten ook ontwikkelaars die Googles mobiele OS gebruiken, aangemoedigd worden om voor Windows Phone 7 te gaan ontwikkelen. Er is Microsoft veel aan gelegen om ontwikkelaars binnen te halen, omdat het Redmondse bedrijf apps als kritieke factor ziet om van Windows Phone 7 een succes te maken.

Alles wijst erop dat Windows Phone 7 vooralsnog geen groot verkoopsucces is: de prijzen van toestellen gingen afgelopen maanden door de helft of werden zelfs nog meer afgeprijsd, terwijl Microsoft al maanden de kaken op elkaar houdt over verkoopcijfers. In een eerder stadium meldde Microsoft wel een paar keer verkoopcijfers.

Windows Phone 7 krijgt in het najaar een grote update, waarmee onder meer een beperkte vorm van multitasking en de Nederlandse taal ondersteund gaan worden. Ook komt Nokia eind dit jaar of begin volgend jaar met Windows Phone-toestellen.

Api mapping tool van Microsoft

Door Arnoud Wokke

Redacteur Tweakers

30-04-2011 • 16:30

120

Submitter: Nimac91

Reacties (120)

120
110
71
7
0
6
Wijzig sortering
Afgelopen dagen op de DevDays in Den Haag heel veel leuke dingen gezien die me toch wel enthousiast maken over WP7. Het is best een tof platform eigenlijk, zowel voor de eindgebruiker als de ontwikkelaar. Prachtige tools voor verschillende niveaus en bewezen ontwikkeltalen en -modellen om mee te werken.

Ik verwacht dat Windows Phone 7 de komende jaren toch nog best een aardig marktaandeel zal verwerven. Vooral de Mango-versie die deze herst komt maakt het platform al een stuk volwassener en vroeg of laat komt er ook een versie 8 verwacht ik. Uiteindelijk schat ik in dat iOS, Android en WP7 nog best eens heel erg op gelijke voet kunnen gaan eindigen, aangezien het alle drie gewoon goed uitgedachte systemen zijn in verschillende fases van hun bestaan.

WP7 staat gewoon nog in de kinderschoenen, vooral in Nederland. Maar ik verwacht niet dat het een mislukking wordt.
Fout in de tekst:
Windows Phone 7 krijgt in het najaar een grote update, waarmee onder meer een beperkte vorm van multitasking en de Nederlandse taal ondersteund gaan worden
Dit moet zijn volledige multitasking. In de huidige versie van WP7 zit beperkte multitasking omdat dit alleen nog werkt met native WP7 apps en niet met 3rd party apps. Met de aankomende Mango update wordt er volledige multitasking geimplementeerd zodat ook 3rd party apps "ge-multitaskt" kunnen worden.
hmm, zouden ontwikkelaars dit soort tools nu echt gebruiken? volgens mij krijg je daar ontzettend rommelige en niet meer leesbare code van. Als ontwikkelaar is dat niet iets waar je op zit te wachten lijkt me.
Het gaat niet per se om schoonheid van de gegenereerde code: App development gaat ook om geld. Als het omzetten dankzij een dergelijke tool nauwelijks of geen moeite kost, dan is het voor developers erg aantrekkelijk om hun app over te zetten zodat ze ook geld kunnen verdienen met hun app in de Windows Marketplace. En Microsoft profiteert er ook van omdat een groot aanbod van apps hun telefoons aantrekkelijker maakt. win-win situatie.
Je wil toch geen slordige code in je eigen Apps?????
Als de code al geen schoonheid is dan kan je beter niks maken.
Daar ligt het hele fundament van programmeren en onderhoud.

Ga je daar al de fout in dan gaat uiteindelijk het systeem fout.
Persoonlijk vind ik zelfs dat je dan niet eens de naam programmeur verdient.
Elegantie is wat kunstenaars maken. En je hebt gelijk als je zegt dat je geen artiest bent, wanneer je zo je apps bouwt. Maar "programmeur"? Die reken ik niet af op dat soort vage termen, maar op aantallen bugs.
Juist bugs zijn een gevolg van slecht overzicht/onvoorbereid slordige codes.
Het gaat juist om gestructureerd programmeren zodat de code netjes en overzichtelijk blijft. Dat is niet alleen een kwestie van kunst maar zo hoort een programmeur ook opgeleid te zijn.

En bugs kan je alleen oplossen door overzicht te creëren zodat je weet waar je moet zoeken.

Slordige code heet gewoon ad-hoc en als het goed is wordt je dat als ICT-er meteen afgeleerd tijdens je opleiding.
Ok... het kan aan mij liggen, maar... ehm... is WP7 programmatuur niet op silverlight gebaseerd, van android op (rebranded) java en van mac op C++ (oid). Want al het C++ perfect kan vertalen en het gewoon vergelijkbare API's kan vinden is dat wel handig. Ik stel me er iets bij voor als een PHP.js library maar dan om vergelijkbare calls op WP7 te introduceren. Maar ben zelf meer voorstander van (al dan niet packaged) web apps, dus mn kennis van native (naja, op android zijn web apps meer native als java apps) is minimaal.
iOS applicaties moeten geprogrammeerd worden met objective c, wat enorm hard verschilt van C++ en er zelfs in de verste verte niet op lijkt. Bijvoorbeeld de manier waarop functies en dergelijke aangeroepen worden zijn zeer sterk verschillend en het porten van een applicatie van objective C naar een andere taal zoals java of c++ is niet zo eenvoudig als bijvoorbeeld van c++ naar java.
Ik denk dat dergelijke tools wel sterk de drempel zullen verlagen om een applicatie ook voor windows phone 7 uit te brengen.
Je kunt ook 'gewoon' C++ gebruiken voor iOS applicaties hoor, of objective-C++, en desnoods plain C of fortran. Verder denk ik niet dat van objective-C naar Java porten moeilijker is dan van C++ naar Java, beiden verschillen genoeg van Java dat het weinig uitmaakt, alleen de syntax van C++ lijkt ietsje pietsje meer op java dan objective-C.

Objective C is trouwens een superset van C, net zoals objective-C++ een superset van C++ is. Met andere woorden: de objective C/C++ compiler kan ook gewoon C/C++ code compileren.
Objective-C and Java komen redelijk bij elkaar in de buurt, C++ is veel lastiger (potentieel operator overloading, multiple inheritance). De syntaxis van Objective-C is wel helemaal anders (en fraaier in sommige opzichten).

Blijft wel een punt dat API vertalen redelijk onzinnig is: dit kan met een beetje search en replace ook en dat wil je al helemaal niet als je je project ook nog wilt onderhouden. Als het voor een one-of dirty conversion is zal het nog wel gaan en scheelt het googlen/bingen (is dat al een werkwoord) naar de juiste functieaanroepen. Zal je de geconverteerde code nog wel even moeten nalopen of het allemaal semantisch nog wel zinnig is en doet wat het moet doen want dan kan niet automatisch.
Geluk voor jou dat de Smalltalk-community niet sterk vertegenwoordigd is op t.net; de business-able OO van Java vergelijken met de pure semi-academische van Objective-C zou nogal een flame-war kunnen uitlokken... ;)

Met jouw mening dat operator-overloading echt zo'n belangrijk concept is m.b.t. porten ben ik het ook niet helemaal eens. Voor multiple-inheritance daarentegen wel. Ik denk echter niet dat je de dynamische lookup van ObjC eenvoudig zou kunnen emuleren in Java zonder eigenlijk gewoon een ObjC-runtime te schrijven in Java...
En dan te bedenken dat er een implementatie van Foundation Kit in Java beschikbaar is in WebObjects.
Met andere woorden: de objective C/C++ compiler kan ook gewoon C/C++ code compileren.
Vooral omdat het in het geval van Apple, voor zowel 'normale' C/C++ als voor objective-C, om GNU GCC gaat. (die standaard bij iedere Mac wordt meegeleverd, IIRC)
Is Apple niet overgegaan op LLVM?
Ze worden nog steeds beiden geleverd, in XCode 3.x was GCC standaard maar stond LLVM ook bij de mogelijkheden, geen idee hoe het in XCode 4.x zit. Verder zijn de front-/backend van GCC en LLVM door elkaar te gebruiken.
LLVM is iig standaard op xCode 4, geen idee of je GCC kan instellen.
Is Apple niet overgegaan op LLVM?
LLVM zelf gebruikt ook nog steeds GCC om te compilen. Alleen komt er nog wat meer bij kijken / is er meer mogelijk nu.
De compiler van XCode kan zelfs Objective Pascal aan (free pascal).
Maar iOS apps dienen afgeleverd te worden in Objective C en niet in C++
WP7 apps worden geschreven in een van de .NET talen (vooral C#/VB), Silverlight en XNA zijn de frameworks die op WP7 gebruikt worden.
De tool genereert geen code, het is gewoon een handig hulpmiddeltje om WP7 equivalenten te vinden van iOS API's. Als je helemaal blanco begint met WP7 ontwikkeling, maar al wel ervaring hebt met iOS, dan kan je je op deze manier een hoop zoekwerk besparen.
Precies. Het is geen porteer automaat maar een referentietool, en die gebruiken programmeurs graag.
Ik hoor eigenlijk vrij weinig over WP7. Kan aan mij liggen, maar de laatste tijd is het toch echt gewoon Android vs iOS. Overigens kan dit WP7 wel een stapje in de goede richting duwen, heb ik het idee. Als het goed werkt, that is.

[Reactie gewijzigd door Foxpat op 6 augustus 2024 01:59]

Het aanbod van nieuws over Android en iOS is daarentegen zó overweldigend dat ik best kan begrijpen dat PurpleMadness deze berichten compleet over het hoofd heeft gezien.

http://tweakers.net/archi...1-1999&dateEnd=02-05-2011
http://tweakers.net/archi...1-1999&dateEnd=02-05-2011
Er valt over WP7 vrij weinig te zeggen, het OS werkt zoals het moet, het mist nu vooral nog de juiste updates, maar dat is niet erg nieuwswaardig tenzij er meer duidelijkheid daarover is.

Apple komt de laatste wel veel in het nieuws, maar veel goeds is het niet, dan kan je beter niet in het nieuws zijn.

Telefoons hebben gewoon een tijdje nodig, je hebt niet alleen met bekendheid enz te maken, maar ook met abo's, ik sluit altijd een abo van 2 jaar af met een nieuw toestel, veel mensen doen dit, veel zullen daarom ook nu nog niet een nieuwe telefoon kopen.

Ik denk dat je pas een echte conclusie kan trekken over WP7 een jaar van nu, dan is het pakweg 1,5 jaar oud, heeft het de taal/marketplace in veel landen, de grote update en dan hebben ze ook de tijd gehad om de meeste mensen de mogelijkheid te geven om WP7 als hun nieuwe toestel te kiezen.
Negatief nieuws is ook gratis publiciteit en publiciteit is nodig om niet vergeten te worden bij de mens.
Klopt, maar nu doet Microsoft zelf bepalen wanneer ze weer wat naar buiten brengen en dat doen ze ook zeker, MS is slim bezig. Natuurlijk gaat dit tijd kosten, maar dit is dan ook een zorgvuldige klus, MS kan dit niet afraffelen.
Tevens als MS zo negatief in het nieuws zou komen als Apple, dan zou WP7 geen kans maken, ze kunnen wel wat verdragen, maar zeker niet zulke massa's negativiteit.
De WP7 bal moet nog goed gaan rollen. En dat gaat gebeuren als Nokia de modellen lanceert. Vroeger was je voor een Windows mobile toestel op de kleinere Aziatische fabrikanten aangewezen. De fabrikanten hebben nu vooral op Android ingezet.
Alles wijst erop dat Windows Phone 7 vooralsnog geen groot verkoopsucces is: de prijzen van toestellen gingen afgelopen maanden door de helft of werden zelfs nog meer afgeprijsd, terwijl Microsoft al maanden de kaken op elkaar houdt over verkoopcijfers. In een eerder stadium meldde Microsoft wel een paar keer verkoopcijfers.
Tja, wat verwacht je ook wanneer er eerst gesuggereerd wordt dat een grote update + ondersteuning van nog een stel landen in januari/februari gelanceerd wordt en dit wordt verschoven naar de herst.
Beetje jammer is ook dat er betrekkelijk weinig nieuwe WP7 telefoons zijn uitgekomen of informatie over is uitgelekt. Al sinds oktober vorig jaar wil ik een WP7 telefoon, maar ik durf het nog niet aan te schaffen met de onduidelijkheid rondom wel/geen US live ID, wel/geen marketplace en weet ik wat niet meer.
Als daarover gewoon duidelijkheid was geweest in het begin dan wist men waar men aantoe was, nu is het nog altijd niet erg duidelijk imho. Dat is jammer, want ik ben er vanovertuigt dat het OS veel potentie heeft.
Microsoft heeft de bal erg goed geslaan met hun OS (multitasking enzo zullen wel welkome verbeteringen zijn, maar op zich is het een erg vlot OS, veel vlotter dan Android), maar heeft een owngoal gemaakt met hun belabberde marketing, ondersteuning van landen in de eerste fase en daarmee samengaand het achterblijven van apps. In de toekomst zal dit alles wel ok worden en icm het feit dat Phone 7 voor de rest een erg goed OS is zullen ze wel marktaandeel verwerven. En of je nu een Phone 7 toestel moet kopen? Met de huidige prijzen kan je bijna niet meer missen.... De Omnia 7 heb ik en dat is echt perfect om alles mee te doen wat ik doe (vooral veel surfen). Ik mis een aantal apps die ik op Android wel heb, maar al bij al wint de vlottere UI het nu bij mij van het grotere aantal apps bij Android.
Het is dezelfde fout als dat ze met de Zune gemaakt hebben. Had vroeger zeer graag een Zune HD gehad, maar je kan hem gewoon niet verkrijgen. Nu gaan ze met WP7 devices dezelfde kant op.
Over 5~6 maanden komen toestellen met support voor Nederland uit, dus zal er in NL ook wel een campagne komen om WP7 te promoten. Overigens bieden diverse Nederlandse providers al WP7 toestellen aan.
Tegen die tijd zal de concurrentie ook nieuwe versies van hun OS hebben en is het voordeel van Windows 7 verdampt en het success verkeken: het aantal apps zal voorlopig niet groeien want niemand koopt de telefoon met het idee: over 7 maanden kijken we nog wel eens. Dat betekend, naast het OS wat ingehaald zal worden, er over 7 maanden een verbeterd OS zal zijn maar nog niet het aanbod aan apps, zodat mensen het als een featurephone kunnen gebruiken ipv. als een volwaardige smartphone.
Het aantal apps groeit anders sneller dan voor iOS of Android, is ook logisch natuurlijk omdat er nu pas 13.000 apps zijn, zitten er nog meer gaten in het aanbod die makkelijk opgevuld kunnen worden.
Anoniem: 80466 @Ramon1 mei 2011 14:59
15500 apps inmiddels.
Dus je denkt dat alleen Nederland het succes bepaalt? :)
Ik heb het idee dat Microsoft zijn eigen plan trekt en zich niet gek laat maken door concurrentie in hun uitrol. Ze moeten een goed product hebben, en ze kunnen zich geen grote missers veroorloven, dus gaat het allemaal wat langzamer.

Android is enorm gegroeid, maar nu zie je dat ze wel wat controle terug willen, blijkbaar omdat niet alle apparaten de juiste experience bieden.

Het zal trouwens niet de eerste keer zijn dat Microsoft andere partijen laat innoveren, maar uiteindelijk toch de markt gaat domineren. Misschien juist omdat je kunt leren van fouten van anderen.
Ik denk dat Microsoft dit keer pech heeft gehad.
Waarom zouden iPhone of Android gebruikers nu nog eens gaan switchen? immers hebben de meesten al allerlei Apps geïnstalleerd/gekocht. Je denkt toch niet dat men dat opnieuw wil gaan kopen?

Dat is tevens het mooie van Apple apparaten, het sluit op elkaar aan.
iPhone, iPad, iPod touch, Apple TV en OSX.
Allemaal dezelfde AppStore die bedient kan worden via 1 account.
Apparaten die naar elkaar kunnen streamen (iTunes, Air Video ... noem maar op).
Airport Extreme erbij en je sluit het in no time aan op je versterker. Apple TV op je TV.
En als de geruchten ook nog eens zouden kloppen misschien ook nog eens een Televisie van Apple.

Android zal met name grote groep Linux gebruikers en open source liefhebbers behouden. Terwijl Microsoft 4 jaar na dato nog eens aan komt zetten. Niet te vergeten dat RIM ook nog eens hard aan de weg timmert en zeker een grote groep zakelijke gebruikers zal behouden.

WP7 zal misschien een groep kunnen aantrekken maar ze zullen RIM/Google & Apple niet meer gaan inhalen.
Er zijn nog genoeg mensen die geen iPhone of Android toestel hebben die wel potentiele smartphone gebruikers zijn.

Het is nog lang geen verzadigde markt. Er zijn ook misschien nieuwe doelgroepen aan te boren. Net zoals de iPad door ouderen gebruikt wordt, terwijl de pc tablet zich juist richtte op de zakelijke gebruiker.

@BoringDay, aantal gebruikers van zowel iOS als Android blijft nog steeds flink groeien, dus zijn er nog heel veel mensen die geen van beide hebben. Anders kon er ook geen groei zijn. Ouderen op de iPad was slechts een illustratie van een vergeten doelgroep.

Microsoft besteed veel aandacht aan de user experience van WP7 en minder op het volproppen van features.

Overigens ben ik tevreden gebruiker van iPhone, iPod, iPad, airport express, timecapsule en macbook air. Meer fanboy kan ik niet zijn.

[Reactie gewijzigd door MisterBlue op 6 augustus 2024 01:59]

Daar kan ik me weinig bij inbeelden ... ik denk eerder dat die op een simpele telefoon wachten i.p.v. een smartphone.

Tablet PC richtte op de zakelijke gebruiker?
Ik denk dat men heeft zitten slapen en op geen enkele gebruiker gericht. Het was gewoon een grote flop. Wellicht heeft Apple die bedrijven doen wakker schudden anders waren we nog steeds op hetzelfde niveau en bij WM toestellen.

Verder ben ik nog steeds van mening dat de meeste bedrijven nog steeds amper door hebben wat voor invloed design heeft.
Zou je als gebruiker ipv als auteur zo'n tool miet live kunnen gebruiken? Het klinkt een beetje als Wine voor Linux.
Android is open-source. Zou wat zijn als MS een Android VM op Windows 7 uitbrengt. Dat is zo'n knieval dat gaat niet gebeuren (misschien wel 3rd party onderwater betaald door MS als ze echt wanhopig worden).
Een ander bedrijf is wel wanhopig genoeg ;) (RIM)
Een ander bedrijf is wel wanhopig genoeg ;) (RIM)
is dat wanhopig, of gewoon slim? RIM heeft sowieso veel ervaring met java, omdat ze dat al gebruiken. Kleine moeite (relatief) om hun eigen java vm dan zo te maken, dat die ook in staat is overweg te kunnen met wat android doet. ( wat ook gewoon java is, alleen mogen ze het zo niet noemen )
Dalvik is géén Java. Dalvik is een VM (net zoals de Java Virtual Machine) maar hij werkt met een ander principe (Dalvik is register- based en de JVM is stack-based). Google heeft ervoor gezorgd dat Java (de taal) gecompileerd kan worden naar bytecode die Dalvik begrijpt. Dat maakt het geen Java.

Microsoft's CLR (ook stack- based) ligt dichter bij Java dan Dalvik.
Het is iets subtieler: de JavaVM is dan wel stack-based, maar door de verificatie garanties van de VM is er een 1-op-1 mapping met een register machine. Het voordeel om het toch stack-based uit te voeren is de instruction density: de opcodes hoeven geen register te bevatten (dus a=b+c zou iets als ADD B,C,A zijn in Dalvik en in JVM gewoon ADD want de stack bevat impliciet te waardes waarom het gaat).

.Net/CLR is stack based en kent volgens mij een optionele verificatie die een dergelijke garantie geeft. Het is in ieder geval wel zo dat .Net bytecode ook niet verifieerbaar mag zijn (dan heet het unsafe code afaik) en dan zal een dergeijke mapping niet altijd mogelijk zijn.
http://www.berryreview.co...ok-along-with-native-sdk/

Dat hebben ze dus al gedaan op de playbook. Daar kan java & adroid in een eigen vm draaien.

Maar dat is niet erg geintegreerd he?

Je krijgt dan een applicatie die werkt, maar net iets anders werkt.
Opzich niet eens zo'n slecht idee, maakt wellicht de drempel wat lager voor ontwikkelaars. Maar ik vraag me af he bij WP7, is er überhaubt wel een marktmodel?

Want als ik kijk naar Apple is er een uitgekiemd model voor zowel Apple als de ontwikkelaar als de uiteindelijke klant. Dat bedoel ik in de vorm van betalen enz.

Android heeft dat namelijk veel minder, eveneens RIM. Maar Microsoft? Iemand enig idee? Ik heb namelijk nog niemand in Nederland gesproken die een app heeft gekocht in hun Marketplace. En ja ik weet dat er officieel nog geen toegang is tot de
Marketplace vanaf een Nederlands toestel.
Het is dus ook gewoon nog niet mogelijk om apps te kopen in de Marketstore. Je kunt nu namelijk aangeven dat je in de VS woont, maar dan moet je alsnog betalen met een Amerikaanse creditcard. Als ze WP7 officieel introduceren in Nederland doen ze daar natuurlijk wat aan, maar voor systeem ze zullen introduceren is nog niet bekend.
Misschien dat de stap naar WP7 hierdoor iets kleiner wordt voor sommige ontwikkelaars. Hoop dat WP7 wat aan populariteit wint want het verschilt lekker van Android en iOS. En gezien Apple zich overal mee bemoeit zou ik het niet zo erg vinden dat ze wat terrein verliezen ;)
Wie weet wordt het aandeel wel voornamelijk van Android gesnoept ;)
Anoniem: 145867 @ZpAz1 mei 2011 00:23
Nee hoor, mensen leveren niet graag functionaliteit in. En doordat de functionaliteit in WP7 groter is als iOS zie ik juist meer iOS mensen naar WP7 gaan...
Een loze uitspraak als je niet even de moeite neemt om 1 voorbeeld van je bewering te noemen.
Ondanks de wat negatieve bijsmaak van WP7 vind ik het een zeer interessant platform, en ik hoop dan ook dat het een succesvol platform wordt. Waarschijnlijk zal dat zodra Nokia met WP7 toestellen komt wel op gang komen. En ook de mango update zal in belangrijke mate bijdragen in het succes van WP7.

Enige waar ik nog op zit te wachten is een goede offline navigatie mogelijkheid a la TomTom en goede Twitter apps enzo.
Niet alle WP7 toestellen zijn gehalveerd in prijs. Graag de feiten. Ergo zou het niet aan het OS liggen maar aan de specifieke toestellen.
Is trouwens wel jammer want ik had de non branded HTC Trophy voor m'n vrouw graag goedkoper gezien ;)

Op dit item kan niet meer gereageerd worden.