c# via monotouch ima smisla koristiti ako i samo ako imaš gomilu postojećeg koda koji je napisan u c# i čje bi portovanje bilo vremenski suviše zahtevno. da bi se pisao efikasan ios kod moraš da koristiš cocoa, a cocoa je pisan tako da uzima u obzir specifičnosti objective c kao jezika. dakle, da bi napisao efikasan cocoa kod u c#-u morao bi ozbiljno da promeniš načn pristupa c#-u kao programskom jeziku. prvo, nisam siguran da bi mogao da pobegneš od reference countinga a sa druge strane, mergovanje imena cocoa metoda u c# ih čni totalno nečtljivim i jezivo komplikovanim…
sve u svemu, predlažem svima da zaborave. osim ako imaju gomilu postojećeg koda koji treba upotrebiti. druga varijanta bi možda bila paralelan razvoj za ios i android, ali u to već nisam siguran jer ne znam kako izgleda mono android…
dalje, imaj u vidu da je cocoa nekadašnji nextstep api, a da je james gossling kad je pravio javu krao nextstep api, a da je onaj danac kad je pravio c# krao javu. u prevodu, nema mnogo velike razlike u manipulaciji objektima između objc/cocoa i jave i c#/.net-a. ne radiš tu direktno sa pointerima u smislu malloc/free, već vrlo slično kao u javi ili .netu. jeste, razlika je u memory managementu, ali, zaista mislim da neko ko ne može da savlada reference counting ne bi smeo sebe da zove programerom. cocoa konvencije o tome kad se objekat eksplicitno oslobađa a kad ne su zaista toliko precizne da ćeš posle dve upotrebe znati koji objekat oslobađaš a koji se sam oslobađa. osim toga, u praksi je reference counting je bolji načn za memory management od garbage collectora, kad pričam sa android programerima i problemima koji oni imaju sa dalvikovim garbage collectorom, mnogo mi je drago što se apple tako čvrsto drži reference countinga…