Skocz do zawartości

Recommended Posts

Stale obserwujemy rozwój rynku urządzeń mobilnych. Patrząc na ich możliwości mobilne zastanawiam się kiedy dojdziemy do takiego poziomu, że chętniej będziemy kupować nowoczesny tablet aniżeli wielozadaniowy, ale masywny komputer stacjonarny. A może era tradycyjnego oprogramowania i usług w domu niedługo odejdzie? Ten temat to dobra podstawa do dyskutowania w innym wątku - może założę i poprowadzę w wolnej chwili ;)

Teraz natomiast piszę z pytaniem - czy warto uczyć się programować pod urządzenia mobilne? Pisanie pod jaki rodzaj urządzeń mobilnych (opartych o system/software itp.) warto pisać? Może macie sugestie co do rodzajów programowania mobilnego. To pytanie bardziej do developerów oprogramowania aniżeli kogoś innego, ale wszelkie odpowiedzi mile widziane.

Oczywiście proszę też o wskazówki "how to begin", co powinienem mieć i co poznawać. Będę wdzięczny za każdą odpowiedź :)

Odnośnik do komentarza
Udostępnij na stronach

Gdyby programowanie aplikacji mobilnych nie było opłacalne to nikt by ich nie pisał :). Jest to dobry rynek, bo to świeży i jest na nim sporo miejsca na nowe pomysły. Z drugiej strony nie jest to też łatwy rynek, z różnych powodów.

Dla przykładu Android to świetna platforma, najpopularniejsza z niską barierą wejścia, zwłaszcza jeśli ktoś zna javę, bo w zasadzi aplikacje na Androida pisze się w zmodyfikowanej lekko Javie. Problem polega na tym, że aplikacji jest mnóstwo trudno się przebić, trzeba mieć naprawdę jakiś dobry pomysł na grę lub aplikację, bo jak w wielu przypadkach prawie wszystko już jest, więc trzeba coś zrobić lepiej niż konkurencja.

W przypadku iOS jest trochę inaczej, tam rynek aplikacji jest kontrolowany przez apple i każda aplikacje musi przejść weryfikację dzięki czemu jest mniej syfu i konkurencja jest mniejsza, w dodatku aby pisać aplikacje na iOS trzeba mieć wykupioną licencję co kosztuje 100 dolarów rocznie z tego co pamiętam. Innym problemem jest język Objective-C, z tego co słyszałem nie jest najprostszy w nauce, ale nie wiem na ile to wiarygodna informacja, sam nigdy go się nie uczyłem. Urządzeń na iOS jest mniej niż z Androidem.

Kolejną platformą jest Windows Mobile, tu trudno mi coś powiedzieć, bo to młoda platforma. System WIndows Mobile ma się znaleźć również w samochodach (zresztą android chyba też), więc jest to kolejny rynek aplikacji, który wkrótce powstanie, po nad to dochodzą jestcze telewizory (Google planuje wspólny produkt z Samsungiem).

A teraz wracając do pytania jak zacząć, zależy co już potrafisz :). Jeśli nie potrafisz programować to najpierw musisz się nauczyć tego, bo nie napiszesz niczego sensownego bez znajomości programowania. Dla kogoś znającego Javę najlepszym wyborem jest android bo darmowy i odchodzi nauka bibliotek składni i całej reszty, trzeba się tylko nauczyć rzeczy specyficznych dla danej platformy.

Wracając do samych aplikacji, spora część aplikacji to takie, które pełnią rolę klienta dla różnego typu stron internetowych, i żeby za coś takiego się rać to najpierw trzeba mieć stronę która skorzystałaby z takiej aplikacji.

Odnośnik do komentarza
Udostępnij na stronach

Gdyby programowanie aplikacji mobilnych nie było opłacalne to nikt by ich nie pisał

Prawda jest jak zawsze dwojaka ... ale generalizując temat, prawdą jest, że warto działać w branży mobilnej. Tym bardziej, że obecne rozwiązania mobilne, co raz częściej stają się zamiennikiem czy też wręcz wypierają konwencjonalne (dotychczasowe) rozwiązania/technologie stosowane w przeciętnym gospodarstwie domowym. Mowa tu przede wszystkim o telewizorach z budowanym systemem (najczęściej Androidem) funkcjonalnie z punktu widzenia zwykłego zjadacza chleba nie odbiegające od komputera (internet, filmy, komunikacja, gry, muzyka) a znacznie bardzie dostępne, już z poziomu pilota. Jeżeli nasz TV jeszcze nie posiada owego, alternatywą są przystawki, tak zwane TV BOX, na allegro już poniżej 400 zł dostępne. Do końca roku będą pewnie modele poniżej bariery 200zł. Więc obecny czas poświęcony w aplikacje na systemy mobilne z pewnością zaprocentuje jako dobra inwestycja w przyszłości (jeżeli nie prędzej :) ).

Co do technologi, bezdyskusyjne obecnie prym bierze Android OS w dodatku w bliżej określonym czasie trudno wyrokować jego degradację. Nie mniej świat się zmienia, i to zmienia się w skali logarytmicznej. Kolejna dekada niesie z sobą coraz to większe przełomy. Więc w dalszej nie określonej przyszłości prym przejmie jakiś inny system.

Dlatego warto dobrze przemyśleć strategię technologii, które wykorzystamy przy tworzeniu naszych aplikacji. W zamieszkałych czasach była nią Java w technologii MIDP (2.0). W przypadku prostych aplikacji wystarczyła jedna paczka na działająca na wszystkich modelach telefonów obsługującą MIDP. Dziś również mamy multim platform mobilnych Android/iOS/Symbian/BB OS/WM/Bada OS/Web OS/MeeGo/inne ... ale one większości już nie obsługują MIDP. Lecz jak to często w życiu jest, rynek nie znosi próżni. Jedną z propozycji jej wypełnia jest QT. QT w swej definicji, czy też w statusie ma być zestawem bibliotek dostępnych na możliwie wiele platform. Gdzie piszemy jeden kod dający się skompilować na różne platformy. Ja zainwestowałem w QT kilka lat temu, dziś mogę już powiedzieć iż była to bardzo dobra decyzja.

Podsumowując:

Na początek, według mnie, powinieneś zacząć Androida + QT.

Odnośnik do komentarza
Udostępnij na stronach

Obecnie liczą się w zasadzie tylko 3 platformy Andrid, iOS i Windows Mobile. Symbian najprawdopodobniej utonie, bo nokia słabo się trzyma, no i podpisali umowę z MS, a więc pewnie ich telefony będą działały głównie pod kontrolą WM. Bada to system który występuje tylko na samsungach Wave, co ogranicza rynek, WebOS już został zarzucony przez HP. Zostaje jeszcze BB OS, ale te telefony są najpopularniejsze w USA i Kanadzie, o MeeGo też krążyły plotki o tym, że nie będzie kontynuowany, z tego co się orientuję tylko jeden telefon jest wyposażony w ten system.

Obecnie jeśli ktoś jest nowy na rynku i chce od czegoś zacząć to Android to najlepsze rozwiązanie, ale ja radzę najpierw opanować Javę w stopniu przynajmniej podstawowym, bo rzucanie się na pisanie aplikacji bez znajomości platformy moim zdaniem nie ma sensu. Choć tak naprawdę na androidzie nie ma prawdziwej Javy, a więc mówienie o platformie jest trochę nadużyciem, ale różnice są subtelne i nie aż tak istotne.

Odnośnik do komentarza
Udostępnij na stronach

Gość
Ten temat jest zamknięty i nie można dodawać odpowiedzi.
×
×
  • Dodaj nową pozycję...