Cider aplikacje iOS na Androidzie

Kilku studentów Columbia University wpadło na genialny pomysł uzdrowienia świata. Stworzyli Cider czyli coś rodzaju platformy wirtualnej na Andorida, pozwalającej uruchamiać na tym systemie aplikacje napisane dla iOS. Projekt jest jeszcze w bardzo wczesnym stadium rozwoju i np nie pozwala aplikacjom iOS korzystać z kamery, odbiornika GSP czy modułu Bluetooth. Jednak podobno będą go dalej rozwijali. Na powyższym firmie możecie zobaczyć aktualne demo.

Projekt jest bardzo ciekawy, ale niestety ciekawy tylko z akademickiego punktu widzenia. Po pierwsze nigdy nie uda się zapewnić 100% wsparcia dla wszystkich aplikacji, po drugie nie uda się uzyskać odpowiedniej wydajności i po trzecie aplikacji dla Androida nie brakuje więc zapotrzebowanie niskie. To wszystko razem powoduje, że Cider raczej nie doczeka się publicznej wersji. Siła obu systemów jest właśnie w ich odmienności.

9 Comments

  1. po co ? Przecież w większości aplikacje są i tu i tu

  2. Dariusz Gardyński

    Jeszcze jeden argument, żeby pisać tylko pod iOS :P.

  3. Szymon Serocki

    no i jak zwykle takie głosy… po co? a dlaczego nie? Pewnie miało to być jakąś pracą zaliczeniową czy coś takiego, a przy okazji stworzyli program, który może się przydać nawet zwykłemu kowalskiemu. Większość aplikacji jest tu i tu, ale takie jak z pakietu iWork czy iLife, czy nawet Remote, nie znajdziesz w sklepie play, więc narzędzie może się przydać. Nawet w celu odczytania jakiegoś pliku tekstowego który masz w iCloud ;)
    Program może nie super przydatny, ale kilka zastosowań na pewno ma, wiec skoro była techniczna możliwość, dlaczego mieliby go nie napisać?

  4. Proste, żeby odpalić aplikacje, których nie ma na Androidzie i pewnie nigdy nie będzie, np. Reeder, iA Writer, etc.

  5. Czy tylko ja odnoszę wrażenie, że C# (Windows 8/Phone) i Java (Android) są o wiele przyjaźniejsze dla programisty? I jakie są poprzednie argumenty za pisaniem tylko pod iOS? Przyznam, że sam nie zabierałem się za Objective C, bo nie mam za bardzo na czym, ale z przykładowego kodu (chociażby z tutoriali w sieci) ciężko jest coś zrozumieć…

  6. Dariusz Gardyński

    1. Mniejsza fragmentacja,
    2. Większy zwrot/zarobek, krótko mówiąc, ludzie więcej wydają pieniędzy na iOS’ie,
    3. Dobre środowisko do pisania i debugowania. Jednym się oczywiście XCode podoba, innym nie, ale trzeba przyznać, że to wszystko działa wzorowo i można jakoś na tym polegać. Na Androida pisałem 1 aplikacje, na warsztatach. Robiąc to samo co prowadzący, jednym działało, innym nie, a do tego sam prowadzący powiedział, że symulator to parodia i do niczego się nie nadaje. Oczywiście to się zmienia, ale Apple też nie próżnuje. Generalnie znajomi jak się pobawią narzędziami Apple, to się jarają jak to wszystko fajnie działa :P.
    4. Sam Obj-C na początku wydaje się straszny (jak dla mnie przynajmniej), ale łatwo się go czyta. Jest bardzo przejrzysty dzięki swojej nadmiarowości. W Jave zasady są proste jak kij od szczotki, w Obj-C jest to dużo bardziej rozbudowane, mnóstwo dodatkowych znaczników, itd., co utrudnia zrozumienie. To jest ten paradoks. Jak nie wiesz co one znaczą, jest trudno, jak poznasz, robi się aż do bólu łatwo. Czy lepszy od Javy czy C# ?? Ja zawsze byłem zwolennikiem Javy i Netbeansa (w C# nie pisałem). Za mało pisałem w Obj-C żeby tak szczegółowo się wypowiadać. Myślę, że Obj-C to taki następca C. Klasa sama w sobie, ale do prostych rzeczy i nauki jest dość toporny. Teraz piszę w Rubym i to jest jakaś magia :P. Mogę jeszcze dodać, że dokumentacja jest genialna. Bardzo rozbudowana, dużo przykładów, w ogóle dużo tam wszystkiego. Mnóstwo jest też w internecie. Java miała dobrą dokumentacje za czasów Suna, teraz to jest masakra. Niby podobna, a już jakoś nie czytelna. Na szczęście Netbeans zawsze mi pomaga w jej czytaniu i to sobie bardzo cenię. Do tego mnóstwo przykładów.

    Więcej nie bardzo mogę powiedzieć. Nie wiem ile np. kodu można przenieść z iOS’a do Mac OS’a. Kwestia pamięci – tu nie wiem, jak na Andku. Obj-C wywodzi się C, więc programista ma pełną władzę, ale jest chyba też garbage collector jak dobrze pamiętam. Poza tym, nie wiem jak Ty, ale ja piszę w tym co jest w danym momencie potrzebne i co zapewni mi odpowiednią wydajność na jak największej liczbie urządzeń (dlatego teraz kombinuje z Rubym, a zaraz zamierzam z rozszerzeniem do Andka i iOS). Pewnie, że wolałbym jeden język, najlepiej 4 generacji i który jednocześnie będzie miał możliwość pełnej kontroli i będzie dostępny wszędzie. Tego jednak nie ma (Ruby nie jest natywny, więc nie do wszystkiego się nada) i nie da się dopasować wszystkim. Zastanawia mnie jednak, czy z duetu Java i C# nie dałoby się zrezygnować z jednego, podobnie C, C++, Obj-C i zostawić 1. Każdy jednak forsuje swoje + licencja i tak jest potrzebne wielu programistów, co z kolei przekłada się na wiele miejsc pracy :P. Można to różnie rozpatrywać. Do tego jest jeszcze Perl, Python i wiele innych. Straszny galimatias. Czemu ten, a nie tamten ?? Odwieczne pytanie. Szczęśliwszy bym był, jakby ludzie współpracowali i pakowali w jeden język wszystkie możliwości, a ja sam bym sobie dobierał, z czego chce korzystać. No ale to już takie gadanie sobie i filozofowanie. Pozostaje być cyber lingwistą.

  7. Czytam i czytam i jakbym czytał dskusje na temat przydatności parallels czy vm na maka – argumenty są poniżej: przecież apki są i tu i tu. Boje sie, że pomysł skończy się tak, że albo Apple pozwie studenta, albo student sprzeda know-how jakiejs firmie, firme pozwie Apple albo ją wykupi :D bo w końcu nie można emulować Appla :)

  8. a czym oni ten film kręcili ? nokią 7650 ??

  9. Piotr Jarocki

    c# jest bardziej przyjazny i to bez dwóch zdań, natomiast pytanie jest, czy aplikacja, która tworzysz ma działać na wszystkich platformach czy tylko na iOS. Jeśli tylko iOS to lepiej pouczyć się Objective-C, jeśli multiplatformowa to ja osobiście używam xamarin studio i pisze w c#.

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *