Suggerimenti per l'inserimento di sviluppo mobile — puro iPhone SDK, Android SDK, Mono Touch o Titanio?

StackOverflow https://stackoverflow.com/questions/2653122

Domanda

Ho inserito lo sviluppo mobile.Ho lavorato principalmente nel .Rete da 1.0 è uscito in versione beta.Prima ero per lo più un C++ e Delphi ragazzo e ancora si dilettano in C++ da tempo a tempo.Faccio la web app un po ' così sono abbastanza abile con Javascript, JQuery e CSS.Ho anche fatto un paio di applicazioni Java.Ho iniziato la programmazione web con CGI e vivono per lo più nella ASP.NET MVC mondo in questi giorni.

Sto cercando di decidere su quale piattaforma/OS e uno strumento per selezionare.Io sono interessato con la dimensione del mercato è disponibile per il mio utilizzo marketibility delle competenze I pick up.

Le applicazioni che ho in mente di lavorare su entrambi i telefoni e pad.Alcuni aspetti di quello che ho in mente di giocare meglio su schermi più grandi, che saranno disponibili sul pad.

Qui ci sono le opzioni che sto valutando:

  1. Apple iPhone/iPad utilizzando puro Apple SDK (Objective-C)
  2. Apple iPhone/iPad utilizzando Mono Touch (C#)
  3. Android utilizzando puro Android SDK (Java)
  4. Piattaforme Multiple utilizzando qualcosa come il Titanio per generare applicazioni native da tecnologie web (HTML, CSS e Javascript)
  5. Piattaforme Multiple utilizzando HTML5 web, le applicazioni in esecuzione nel browser (HTML, CSS e Javascript).

Quale opzione scegliere?Avete un suggerimento diverso?Quali sono i pro e i contro?

È stato utile?

Soluzione

Penso che devi coprire quasi tutte le opzioni, mi permetta di condividere il mio parere su ciascuno.

  1. Vale la pena di iniziare con priorità più alta come Buzz ora un giorno.
  2. Secondo iPhone OS 4 sviluppatori accordo di sezione 3.3.1, apple permette solo apps sviluppate in C/C++ e JAVA script.Io non suggerisco di mettere i vostri sforzi in C#.
  3. La sua vale la pena e se si dispone di un buon grip su core JAVA quindi, si può essere produttivi in pochi giorni.In questa fase Android non potrebbe avere molto di quota di mercato ma la Mia opinione personale è che ANDROID È il FUTURO.
  4. Il mio punto numero 2 effetto Titanio, come pure, ma secondo il loro ultimo tweet, hanno l'approvazione da parte di Apple.Io non sono a conoscenza con terreno realtà.
  5. Stesso punto numero 2

È bene, se si inizia a concentrarsi sul nativa per iPhone e Android quadro di programmazione in questa fase.Ancora, se avete tempo, è possibile investire su Blackberry RIM, come hai JAVA sfondo.

Benvenuti a smartphone dev.:)

Grazie,

Rajnikant

Altri suggerimenti

Se ci si rivolge l'iPhone / iPad, le modifiche della convenzione di iPhone SDK che vengono inaugurato con iPhone OS 4.0 e il nuovo stato SDK che vi sono solo permesso di presentare applicazioni per l'App Store che sono stati scritti in C / C ++ / Objective-C, o Javascript se una webapp.

È necessario prendere in considerazione questo, in quanto i livelli di compatibilità, cross-compilatori, traduttori di origine tutte sguardo come stanno andando per essere vietata ai sensi del nuovo accordo, che comprende le cose come MonoTouch, di Adobe Flash CS5, PhoneGap, etc.

Croce quadri piattaforma si dovrebbe guardare:

PhoneGap QuickConnet

Si può essere meglio fuori attenersi ad applicazioni web, se stai cercando di renderli cross-platform; il principale smartphone sistemi operativi-iPhone OS, Android e WebOS, il sistema operativo Blackberry dice di essere il prossimo-tutto l'uso il renderer Webkit, e avrete un tempo più facile fare le cose che non si sentono estraneo ogni piattaforma che se si 're utilizzando uno dei quadri per la scrittura apparentemente codice cross-platform. Questo è particolarmente il caso in cui si prende in considerazione i recenti cambiamenti di Apple per il loro contratto di licenza SDK: strumenti come MonoTouch e PhoneGap non possono più essere utilizzabile per ottenere le cose nella loro App Store.

Volevo solo per coprire un punto di ri. v Android di sviluppo iPhone. Mi permetta di essere in anticipo e dire che non ho sviluppato per Android, ma io ho per l'iPhone. Tuttavia, noi possediamo un telefono Android-based e un iPhone nella nostra famiglia, così posso parlare come un utente per entrambi.

Per quanto riguarda le applicazioni vanno, trovo applicazioni per iPhone modo più semplice e divertente da utilizzare (per l'utente finale). Un sacco di applicazioni Android sono davvero scadente. Questo non vuol dire che le applicazioni per iPhone non lo sono, ma l'interfaccia naturale iPhone davvero li puntella un po '. L'interfaccia di Android è niente di speciale. Come utente finale, preferisco l'iPhone e questo dovrebbe importa a uno sviluppatore che sta cercando di scegliere una piattaforma.

Ultimamente, c'è stato un sacco di critiche in direzione di Apple per la loro ToS il cambiamento, e gli sviluppatori dicendo che si sposteranno ad Android. Io dico - bastone per l'iPhone perché l'iPad è la creazione di buzz e rappresenta un'occasione unica per voi. Come qualcuno che ha utilizzato in titanio e Objective-C per creare applicazioni, vi suggerisco di bastone con il set di strumenti nativi. Ci vorrà più tempo per imparare, ma si impara il design pattern corretti al contrario di titanio che non ha nemmeno insegnare buoni modelli di JS ad essere onesti (Non c'è molto lì MVC).

Ci sono un sacco di cose da considerare. Prima di tutto bisogna porsi due domande:

  1. Quali piattaforme e quale tipo di utenti che si vuole coprire.
  2. Avete bisogno di comunicare con il telefono (GPS, SMS, ecc ...) oppure è necessario solo un po 'di manipolazione dei dati di base e punti di vista.

Se è necessario accedere a funzioni del telefono, allora si deve sviluppare un'applicazione reale che corre al telefono. La scommessa più sicura qui è JAVA perché gira su quasi tutti i telefoni. Ma anche JAVA è fuori come unificata strumenti multi-piattaforma come di ritardo. Apple ha messo restrizioni su iPhone e iPad e MS è anche poco chiaro a me con l'ultimo Windows Phone 7.

Ora, se avete solo bisogno di visualizzare e manipolare i dati, HTML potrebbe essere un valido approccio. Ha un vantaggio di essere multi-piattaforma e tutti i cellulari di nuova generazione non avrà alcun problema la visualizzazione HTML di base. Javascript o forme più complesse sono ancora però discutibile. Ancora per me è il futuro per i dati di applicazioni orientate come il supporto web è solo andare a stare meglio, Javascipt inclusi. Per quanto riguarda HTML5 dico non pensarci più. Ci vorrà del tempo per essere ampia diffusione sui desktop e sui telefoni ci vorranno anni per arrivarci di sicuro.

Per sviluppare applicazioni native per la grande varietà di telefoni è piuttosto Chalange e prende un sacco di lavoro e, probabilmente, una grande squadra. Così ancora una volta dipende dal compito che dovete fare. Anche se si sta facendo alte bussines di fascia applicazioni, allora si poteva solo indirizzare Blacberry, Windows Mobile e qualcos'altro. Non so quanto sia diffusa iPhone e Android sono nel mondo bussines. Io non immagino così tanto.

Si sarebbe la mia guidellines. Ovviamente se è possibile, bastone per applicazioni web.

indipendente della nuova Agrement sviluppatore, i cui effetti sono ancora sconosciute (ad esempio le persone presume che PhoneGap e Appcellerator erano morti, che è non è il caso ); siete ancora meglio nella mia mente mira Objective-C su piattaforma iPhone OS.

Il fatto è che ci sono un sacco di molto potente framework di Cocoa. Utilizzando Objective-C, si sta anche imparando a pensare come i progettisti quadro che significa che avrete un tempo molto più facile la comprensione dei modelli usati, e anche nel corso del tempo imparano ad anticipare le abilità e nomi nel quadro WinCE si dispone di una comprensione più chiara norme sopra stilistici in uso.

Si sono anche immediatamente pronto a sfruttare nuove abilità all'interno del linguaggio e quadri (come blocchi o multitasking) piuttosto che aspettare che lo scrittore quadro (s) per capire come presentare alcune nuove funzionalità per voi. L'accelerazione delle funzionalità della piattaforma, che potrebbe essere un vantaggio significativo.

Inoltre, a livello personale - si sono semplicemente meglio come programmatore più lingue che profondamente comprendere, e più si spinge fuori della vostra zona di comfort per imparare qualcosa di veramente nuovo. Questo allargamento aiuta la tua mente in altri modi e si fa un pensatore più flessibile.

Non ho niente contro coloro che utilizzano altri linguaggi come Mono sulla piattaforma, penso solo che rende più senso per usare realmente gli strumenti e le lingue che sono primarie per qualsiasi piattaforma di destinazione. Se dovessi spostare in sviluppo Android vorrei passare a tutti Java in un battito cardiaco, piuttosto che cercare un ponte di Objective-C.

Se decide di andare via Objective-C, pensare ancora di prendere un bottino a MonoTouch, come strumento di apprendimento, a causa di tutta l'esperienza che avete con C #.

Essere in grado di imparare il quadro prima, e poi passare alle semplifica l'apprendimento delle lingue molto. Con MonoTouch sarete in grado di imparare tutti i quadri di iPhone che sarà necessario imparare (UIKit, ecc) nella lingua sei già familiarità con, così come abituarsi a strumenti come Interface Builder e alcuni di XCode.

Raccogliendo Obj-C dopo si conosce già il quadro ben rende le cose molto più facile. Sto facendo che in questo momento. E a seconda della linea temporale, la luna, e l'umore di Steve Jobs', si potrebbe semplicemente finire per essere in grado di finire per non dover mai andare in Obj-C a tutti ..:)

In uno dei tuoi commenti che dichiara di possedere un Droid, lo amano, e preferiscono la filosofia di Google. Nella tua domanda dichiarate siete uno sviluppatore Java - naturalmente, si può sempre imparare Objective-C come dev Java come ho fatto io, ma poi di nuovo io sono totalmente in amore con l'iPhone. Sembra che si sono totalmente innamorato di Android, quindi direi che applicano la tua passione per questo e fare un po 'di kick-ass Android apps. Non credo che si dovrebbe fare come bene di un lavoro su iPhone, soprattutto senza una grande comprensione o la passione per la piattaforma.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top