[ NastyBoy @ 18.03.2005. 21:41 ] @
Pozdrav Mekovci,

Uskoro mi stizhe PowerBook, namenjen uglavnom programiranju. Odnosno, bice druga mashina, pored PC-a, jer trenutno planiram portovanje odredjenih stvari sa PC-a, a nakon toga i uporedo razvijanje 3D engine-a za PC i Mac (OpenGL)

Pre nego se zakopam u Mac knjige, pitanje :

na prvi pogled, neobichan izbor programskih jezika za Mek je zbunjujuci. Vidim da je Cocoa vezana za Obj-C, ali da li mi je apsolutno neophodan josh jedan programski jezik? Vec godinama sam strogo na C++u i ne bih da menjam navike ako ne moram.
Chini mi se da je Obj-C++ namenjen kao svojevrstan bridge ka chistom C++u, ali ne vidim kako je podrzhan i koliko :[

Drugo, ako neko ima iskustva sa CodeWarrior-om, da li u njemu postoji wrapper za Cocoa u C++u ili mi Obj-C apsolutno ne gine (u kom sluchaju ne vidim razlog da uopshte kupujem prilichno skupi Codewarrior)? I kakav je u poredjenju sa XCode?

Da li je uopshte moguce razvijati native Cocoa aplikacije strogo u C++u (ne zhelim Javu, jer ne zadovoljava moje potrebe)?


Sorry ako je neko od pitanja notorna budalashtina, moguce je da sam stekao pogreshan utisak kopajuci po netu, do 'lean and mean' informacija o Meku i nije bash lako doci

TIA

[ caboom @ 18.03.2005. 22:25 ] @
poz,

ObjC je zapravo obj wrapper nad cistim C99 i kao takav nije bas pravi bridge ka C++-u. u sustini ti samo okruzenje namece koriscenje ObjC-a. Koliko mi je poznato nema direktnih Cocoa C++ binding-a, ali mozes da koristis stari Carbon API (koji postoji u sustini zbog backward kompatibilnosti sa OS9kom). Ono sto mozes da koristis jeste da pravis mix-eve u projektima, posto je moguce sasvim lepo mesati objc kod sa c++ kodom (to je ono sto se zapravo naziva ObjC++), sto doduse nije najurednija stvar na svetu, ali svakako veoma korisna.
Kljucne reci su zapravo ove:
1) ObjC + Cocoa framework
2) C++ + Carbon framework
I 1) i 2) se medjusobno ne iskljucuju, ali treba biti oprezan. Sto se tice literature, verovatno najbolja knjga na koju sam naleteo je:

http://www.amazon.com/exec/obi...0672322307/102-1168715-3162542

(spremi se na nedostatak literature i jurcanje po listama (cocoa-dev) i resource sajtovima).
hmm... pocinje da mi nedostaje udaljeni mekonja dok ovo pisem. :)
[ NastyBoy @ 18.03.2005. 23:05 ] @
Thx na informacijama.

Josh jedna stvar : poshto u firmi vec koristim CodeWarrior za PS2 (ne mogu da kazhem da mi se posebno dojmilo okruzhenje) mislim da mogu da ih nateram da mi nabave jednu Mac licencu.

Ako neko ima iskustva sa CW za Mac, kakva je situacija - da li da uopshte troshim uslugu na CodeWarrior za Mac, ili je XCode dovoljan? Narochito u pogledu IDE-a i debugger-a?
[ milke @ 19.03.2005. 00:03 ] @
Pozdrav,

pa, ako ti CW nije baš omiljen, eto prilike da pređeš na XCode! IDE je jako dobar i fleksibilan (bar meni, pazi nisam profesionalni programer) i nije glomazan kao obično, pa ne znaš kuda ćeš pre, dibager je u stvari "stari dobri" GDB sa OK GUI-jem i svim ostalim što treba, meni je doduše malo (malo više) konfuzan kod dibagovanja višenitnih programa, ali...

Koliko sam ja imao prilike da se petljam, Carbon je proceduralni C API, ali moj savet ti je NEMOJ TO DA RADIŠ, osim ako ti ne treba kompatibilnost sa Mac OS 8/9 (a, šta će ti to?). Ja lično se ježim od Carbon aplikacija, odbijam da ih koristim čak i ako su sam vrh ponude (Mac veterani će me proglasiti ludim što iz tog razloga ne koristim BBEdit). A kako otprilike Carbon API izgleda? Pa, ako si imao prilike da doživiš horor zvani Windows GDI, e to ti je to, malo blaža varijanta. Samo okruženje te upućuje na ObjC, nema ti od toga spasa, osim ako nećeš Javu. Cocoa framework možeš da koristiš i iz Jave (nije fleksibilno kao iz ObjC-a), ali opet moraš da učiš API, tako da je bolje odmah ići na ObjC, koji se jako lako uči, par OO ekstenzija oko ANSI-C, malo čudna sintaksa dok se ne navikneš, posle ti izgleda i logičnija nego kod C++ (moj slučaj). Kao iskusan programer savladaćeš ga za manje od pola dana. Cocoa API je ipak nešto veći zalogaj. Možeš da koristiš i čistu Javu, aplikacije će ti izgledati kao Mac OS X native, ali sam si rekao šta o tom jeziku misliš. Moguće je mešati ObjC i C++ (to je u stvari ObjC++), ali si ipak malo ograničen u primeni C++-a, a i kod izgleda stravično ružno. Od tri vrlo referentne knjige koje se bave Cocoa API-jem, nisam ni u jednoj našao primer korišćenja ObjC++-a, verovatno zbog toga što i ObjC++ nema veze sa Cocoa API-jem. Kao prvi primer mešanja ovih jezika, pogledaj na http://developer.apple.com/doc...view/chapter_3_section_10.html (podrazumeva da si "blizak" sa ObjC), a za ostalo se snalazi sam. Pregršt linkova ćeš naći na http://www.cocoadev.com
[ caboom @ 19.03.2005. 00:16 ] @
ja preporucujem XCode, osim ako neces da se petljas sa cistim Carbon development-om. XCode nije toliko napredno okruzenje kao Visual Studio npr. ali je sasvim dovoljan i uopste zapravo nije los, pogotovo sto je besplatan. Mislim da je Cocoa podrska u Codewarrior-u nabudzena preko nekih compatibility layer-a, tako da i nije neko resenje.
[ caboom @ 19.03.2005. 05:23 ] @
Citat:
milke:
Moguće je mešati ObjC i C++ (to je u stvari ObjC++), ali si ipak malo ograničen u primeni C++-a, a i kod izgleda stravično ružno. Od tri vrlo referentne knjige koje se bave Cocoa API-jem, nisam ni u jednoj našao primer korišćenja ObjC++-a, verovatno zbog toga što i ObjC++ nema veze sa Cocoa API-jem.


ovo sve stoji do sledeceg trenutka:
1) ne zatreba ti neki lower level api za koji ne postoji ObjC wrapper, gde doduse imas izbora da pravis objektni wrapper u nekom od pomenutih jezika.
2) nemas vec odredjeni code base koji zelis da iskoristis, mix ObjC-a i C++ moze da izgleda pristojno uz dobro osmisljenu arhitekturu aplikacije.