podla mna uplne zytocny clanok. Co takto radsej napisat o phonegap, ktory funguje na vsetkych mobilnych os vcitane bada ci blackberry? Je to ovela pouzitelnejsia vec nez nejaky xamarin a ma to aj viac moznosti. Navyse je to cisty open-source. Podla mna je to skvela myslienka, ktora by sa dala uplatnit aj na PC.
napr Android Service cez phonegap asi bude problem:
http://stackoverflow.com/questions/10343828/creating-an-android-service-with-phonegap-have-phonegap-app-run-even-when-clos
Podobne vytvaranie android widgetov atd.
Neviem ako je to s widgetmi ale pre android service existuje plugin do phonegap. Navyse xamarin vyzaduje napisanie gui casti pre kazdy OS zvlast a ta cena je tiez celkom "zaujimava". Ked uz by som chcel nieco podobne tak skusim vyuzit napr. codename one, xmlvm, robovm, j2objc,... a podobne tooly, ktore su opensource. Tiez by som mozno skusil pouzit nieco od oracle kedze oni uz portovali javu pod arm.
Takze stale nevidim dovod preco pisat o xamarine, ktory pouziva M$ jazyk a prostredie (je jedno ze implementacia prostredia nieje od M$).
>> Xcode 4 – je IDE (Integrated Development Environment) pro vývoj aplikací pro produkty Apple, je ho možné získat na OS X App Store, a pouze pokud máme koupený vývojářský profil od Apple...
- blbosť, žiadny vývojársky profil si kupovať nemusíte (teda pokiaľ si vystačíte so simulátorom a v začiatkoch programovania nebudete chcieť nahrávať na AppStore). Xcode sa dá stiahnuť aj bez developerského účtu.
>> Objective-C totiž nemá garbage collector implementován stejně jako v .Net frameworku. Paměť pro objekty v Objective-C je ve starších verzích jazyka alokována a uvolňována manuálně. Až od verze 2.0 se používá strategie počítání referencí.
Teda už mimo dávnej školy som už dlho neprogramoval, ale aj z toho mála čo o Obj-C viem, tak toto je ďalšia blbosť. Práve v Obj-C 2.0 pribudol garbage collector, avšak pri jazykoch typu Obj-C je problematický, tak ho vo frameworkoch pre iOS radšej zakázali (možno ho použiť pri OS X). Manuálne počítanie referencií je v Obj-C od začiatku, len teraz niekedy k nemu pridali možnosť ARC (automatic reference counting), ktorá ale tiež nie je univerzálna a niektoré prípady treba stále počítať ručne, ale aspoň nejaké zjednodušenie a menej problémové ako GC.
Článek je otřesný a autor o ObjC neví. Počítání referencí není vlastnost ObjC, ale byla zavedena hodně dávno do NextStepu Sunem. Tímto se ocitla v Cocoa. Místo GC tam byl "autorelease pool", jenž se vytvářel pro každou smyčku UI, čímž byla zajištěna plynulost ovládání (a vývojář se nemusel starat o správu paměti). GC à la C# je jen v OS X, protože v iOS je třeba šetřit pamětí a počítání referencí je mnohem efektivnější. Nakonec přibylo ARC, takže už ani na iOS není explicitní správa paměti nutná. Navíc vše dělá překladač a díky optimalizaci nevzniká "odpad", jejž by musel uvolňovat "autorelease pool". Tuto strategii nově okopíroval také Microsoft pro WinRT (počítání referencí + automatické generování příslušného kódu překladačem).
Slajdy z loňského WWDC podrobně popisují fungování ARC.
Teda že zrovna na Rootu bude článek o tom, jak programovat v C# pro iOS, to bych fakt nečekal.
Mnohem víc bych ocenil pořádný seriál o Qt5/QML. Za dveřmi je verze 5.1 s oficiální podporou Androidu (alfa už ke stažení), podpora iOS a WinRT je na cestě. Qt bude podle mě v blízké budoucnosti jednoznačně nejlepší volba pro většinu multiplatformních aplikací.
Berte to tak, že PR oddělení Microsoftu má mnohem větší rozpočet než PR oddělení firmy Digia. A rozhodně nepovažuji za náhodu, že se článek o tom, jak programovat multiplatformně v C#, což je primární jazyk pro Windows Phone, který zrovna Microsoft začal tlačit, a oslovuje české vývojáře mobilních aplikací (tohle není JPP, ale osobní zkušenost), protože potřebuje naplnit Windows Store aspoň nějakými aplikacemi... Což rozhodně není nic proti Rootu, ale to, že se tyhle "popularizační" věci dělají skrze partnery není zas tak neobvyklé...
Microsoft na to nejde hloupě, oni moc dobře ví, že nemají šanci s "Windows Phone je ta jediná správná platforma a měli byste vyvíjet jenom aplikace pro nás", a tak tlačí na to, aby vývojáři mobilních aplikací při vývoji s Windows Phone počítali, protože jinak by si o tu jejich (momentálně minimálně rozšířenou) platformu nikdo neopřel ani kolo...
Je to smutný, ale asi to tak bude...
Co mi přijde vtipný, že v prvnim díle zveřejněnym tady 18.4.2013 se píše: "Následně Microsoft vydal verze 7.5 (Mango), 7.5 (Tango) a koncem roku 2012 se čeká na vydání verze 8.0 (Apollo), který bude obsahovat nové jádro operačního systému, ..." Je to tedy evidentně poměrně starý článek a těžko číct, co všechno tam je ještě neaktuálního a zavádějícího. Podle diskuze pod prvním dílem dost...
Přitom je tolik věcí, o kterých by se dalo psát a budou 100x užitečnější. Namátkou by mě zajímal třeba GStreamer 1.0 ve spojení s Androidem, Windows a Pythonem 3. Taky jak to vypadá s Qt/QML a podporou multimédií napříč platformami. Co Python a Qt5, PySide se zaseklo na Qt4, ale PyQt (pod GPL licencí) už podporu Qt5 má.
Nebo díky Čechovi Martinovi Kolmanovi je tu projekt portace PySide na Android. Jak vypadá Ubuntu Touch SDK? Jak je na tom Sailfish SDK? A co na to Jan Tleskač? :-)
Prostě je toho v oblasti vývoje pro mobilní zařízení plno a mnohem zajímavějšího než proprietární nástroje pro iOS a WP.
Kupodivu to bude asi nejspíš Java, kvůli Androidu. Následovat bude zřejmě HTML (čili ten JS) a v Cx budou většinou jenom základní knihovny.
Qt/QML používá kombinaci JS (pro UI) a C++ (pro vlastní funkcionalitu). Ale jednoduchá aplikace se dá napsat i kompletně v JS bez jediné řádky C++ kódu. PySide narazuje C++ část Pythonem. Ten je sice o malinko pomalejší, ale za to rychlost programování je někde úplně jinde.
Diky za clanek, multiplatformni vyvoj na root urcite patri. Mel bych jen jednu pripominku do budoucna - spoustu vet jsem si musel cist 2x-3x nez jsem jim porozumnel. Chtelo by to trochu vice cestiny a trochu mene zbytecne dlouhych souveti.
"Simulátor sice dokáže nasimulovat většinu funkcí Apple zařízení, ale některé funkce ano, jako např. ovládání více prsty, akcelerometer, lokalizaci, a jiné."
Kazdopadne diky za serial!
Nieje nic krajsie ako citat "plodne" komentare od komunity... Ale ze by zdvyhla svoju linou prdel a nieco aj sama napisala to nie. Zato v tej "komunite" je tych premudrelych plna zumpa. Sa ani nedivim ze mono a Xamarin s nim sa vykaslal na nejaku podporu Linuxu. Ako fakt ktorej firme sa vobec chce dohadovat s exotami ta takymito zakaznikmi. Tu na miesto toho aby sa risili veci okolo c# a jeho pozitiva a vdaka Xamarinu aj slusna multiplatformovost, sa tu radsej hadate o tom ze c# navrhol MS co je proti OSS nabozenstvu a radsej budete vyskakovat na javou ktoru aj tak ,podla pristupu, Oracle potopi a Google so svojim pristupom k Androidu nema od toho daleko.
Mimochodom tiez by som bol rad keby uz bolo QT portnute na Android aj IOS lebo to fakt vyzera ako konecne funkcny multiplatformovy framework, akurat smola je ze o oficialne final verzii pre Andoid aj IOS sa basni uz viac ako rok.
Mono vzdy bolo, je a bude totalne hovno. Nikdy to na Linuxe poriadne nefungovalo. Ich biznis model totalne pohorel, nikto to nefunkcny zbastleny bazmeg nechcel. Pozri sa napr. na Moonshine - tiez to nikdy nefungovalo a tiez to zabalili (aj ked tu mozno zohralo ulohu ze MS to hovno Silverlight zabalil tiez, takze buducnost to nemalo ziadnu, aj keby to nahodou fungovalo).
bez ohladu na osobny nazor nemozem suhlasit.
1. Mono bolo open source, tj nemalo business model
2. Novel a potom Xamarin vyvyjaju komercne aktivity ohladne OSS Mono. Pridavaju tooly + nativne API wrapery pre mobilny vyvoj na iOS a Android, pricom v mobilnom segmente su komercne velmi uspesni, tj firma je podla blogov v zisku od prveho roku, zisk rastie a pred nedavnom ziskali investora na X milionov $. V sucasnosti ma firma cca 130 zamestnancov a klientov/subscriberov (xamarin produkty sa platia na rocnej baze) maju desiatky az stovky tisic.