Mono, monotouch c # vs

Sa întâmplat astfel încât activitatea mea ca dezvoltator de software să fie conectată atât la iPhone, cât și la tehnologiile .NET. Dacă spunem că este primar, atunci, bineînțeles. NET și C #, astfel încât informațiile vor fi furnizate din punctul de vedere al destinatarului.

În acest articol, vreau să vorbesc despre mica experiență de a dezvolta un proiect simultan pe un mono folosind MonoTouch și pe obiectivul-nativ.

Descrierea proiectului

A fost necesar să se dezvolte un efect frumos de cotitură a paginii pentru o aplicație iPhone. Un bun exemplu de ceea ce trebuia făcut a fost găsit pe Internet sub forma unei aplicații Silverlight.

Numărul de opțiuni 1: Mono + MonoTouch

Nu trebuie să spun ce e Mono.

MonoTouch vă permite să scrieți aplicații în C # și să le compilați pentru iPhone și să utilizați și biblioteca .NET.

Set complet de software:

  • Apple Mac OS X
  • Mono instalat pentru Mac OS X
  • MonoDevelop
  • MonoTouch

În primul rând, codul sursă pentru Silverlight a fost compilat fără probleme în MacOS și a început în Safari (Silverlight on makosi este deja Moonlight). A fost un semn bun.

Din păcate, clientul nu a organizat opțiunea pentru MonoTouch, era necesar să scrie o cerere scrisă pe obiectivul-nativ.

Opțiunea # 2: iPhone SDK + Obiectiv-C

Codul de la C # la obiectivul C a fost rescris în timpul zilei și ... după ce aplicația a început să împiedice teribil. Două zile mai mult au fost cheltuite pentru combaterea scurgerilor de memorie și scrierea versiunilor pentru anumite variabile locale, după care aplicațiile au început să funcționeze identic.

Aici, trebuie să vă opriți și să faceți o digresiune lirică. Înțeleg foarte bine faptul că un dezvoltator bun ar trebui să înțeleagă cum funcționează selecția, cum să elibereze memoria, cum să caute scurgeri de memorie și cum să se asigure că nu există. Deci, de ce iubesc .NET și C #, că nu trebuie să fiu distras de modul în care să implementez ceva, dar te poți concentra asupra a ceea ce trebuie să pun în aplicare.

Deci, am făcut următoarele concluzii în această situație:

  • nici o dependență și manuale suplimentare nu sunt necesare (ca în cazul Xcode) pentru a începe să lucrați cu instrumentele de mai sus;
  • dacă sunteți un contabil și aveți posibilitatea să scrieți la C # și MonoTouch - mai bine și face acest lucru vă va salva de la multe probleme;
  • mono - nu o astfel de platformă finală, cum cineva vrea să gândească;
  • În ciuda faptului că MonoTouch - un produs tânăr, rețeaua are deja o mulțime de materiale legate de caracteristicile acestui produs;
  • de fapt, utilizați SDK-ul iPhone, dar utilizați funcțiile sintaxei C # și .NET (de exemplu, string1 + string2 în loc de [string1 stringByAppendingString: string2]);
  • confortul de a lucra în MonoDevelop este mult mai mare decât în ​​Xcode.

Sper că această experiență mică vă va ajuta să navigați în viitor când alegeți instrumente pentru dezvoltarea aplicațiilor iPhone (în cazul în care sunteți un contabil).

P.S. Ca rezultat, OpenGL ES a fost ales pentru implementare, deoarece efectul asupra dispozitivului a fost extrem de lent.

Articole similare