Citat:
NastyBoy: Da ne ulazimo preterano u (off-topic) tematiku, ali eto primera oko kog Dragi Tata zapomazhe: da li si video kako izgleda debugging u VisualStudiu?
Nijesam skorih dana visio u VisualStudo. Zadnja iskustva na tu temu su 94/95/96 i veoma su zastarjela. Tad smo kao ¨tesku artiljeriju¨ trosili WinIce (limitiran broj licenci, prvo pokusas sa VisualStudio), ilustracije radi. Pretpostavljam da se radi o dobro integrisanom debugeru u IDE, ekvivalentu, kaziga, VxWorks-ovom Tornado ;).
Citat:
NastyBoy: I kako je jednostavno, i centralizovano, podesiti project properties, compiler/linker options, pre-build/post-build korake itd itd, lista je podugachka.
Ovdje se mnogo i nasiroko pricalo o ¨religijskoj vjernosti¨ diskutanata ovom ili onom operativnom sistemu. Ja se nesto busam da po tom pitanju nijesam zadrt i ogranicen, ali sto se alata za razvoj tice, veci dio zivota provedoh u gcc svijetu. Projekti su veliki, visestruke "kartice" (znaju da budu povelikacke te "kartice", pa iako je demunitiv) i programabilna parcad hardvera, mnogo linija koda. Softver nije istog tipa kao veliki projekti o kojima pricate, jako mnogo in-house razvoja ima, a ima i jako mnogo naslijedja iz davnih vremena, ovo je industrija koja je oduvijek bila zabran za Unix radne stanice.
Make fajlovi su dio folklora, jer su farme servera za build (ili distcc distribuiranje kompajliranja medju masinama) vezane za ovaj ili onaj nacin za ClearCase, tradicionalni code revision system koji ima svoju varijaciju na "make", ne mnogo razlicitu od GNU verzije. Mi trosimo GUI-je za razvoj softvera za komponente, ali od svojih snabdjevaca UVIJEK zahtjevamo da imaju komandne verzije kompajlera, da se binarna verzija moze generisati na Unix/Linux build serveru.
Da l' sustinskih razlika u oblasti primjene, da l' zbog sustinskih razlicitosti cijelog procesa, mijenjanje parametara projekta (valjda su pandan tome parametri kompajlera, primjera radi) je rijetko. Promjene u make fajlovima su relativno malene (kad se doda novi direktorijum) po svakoj iteraciji a vecina posla se obavi u pocetku. Diff tools omogucavaju da se odradi code review promjene u make fajlu, nemam pojma kako se takva operacija radi u GUI svijetu. Svaka promjena mora da bude pregledana od strane bar dvoje kolega, drugacije se produkt koji radi "sest devetki" ne pravi.
U ovom svijetu je postojanje nekakvog grafickog alata za pojednostavljeno konfigurisanje projekta nesto za cime se ne osjeca pretjerana potreba. Da takve potrebe ima, sklepati gui u nekom interpreteru (ili okaciti web stranicu) je ocas posla i to bi neki od studenata koji su na praksi (ili mladih inzenjera) odradio ocas.
Mi dosta softverskih alata (tools) radimo sami. Kad se sprava izruci kupcu, to treba nadgledati, skontati zasto je pukla ako pukne, mijenjati softver na zivo... Nama ne radi posao (off the shelf) debugger, "support infrastructure" (produkta) je nesto sto se dizajnira i implementira. Mnogo redundantnih mehanizama, takva je priroda industrije.
Za mene bi mnogo nezgodnije bilo da me neko lisi distcc-a (vise masina napravi pool u kome se jedan te isti build paralelizuje koliko se moze, nije idealno, ali je poveliko ubrzanje za prevodjenje) nego da mi ukine neki graficki alat.
Mislim da je korektno da se kaze da je zivot u ta dva razvojna okruzenja drasticno razlicit, te da su navike u razvoju prilagodjene jakim stranama alata.
Ljudi trose svasta. Spomenuh Eclipse, dobija mnogo na zamahu, narocito kod mladje generacije, koja je definitivno iz IDE filma. Ima i paradoksa gdje face drze otvoren prozor za IDE (gdje koriste debugger, drugoga nema), ali fajlove edituju i pretrazuju vim/ctags kombinacijom na koju su navikli. Ima faca i koja je skinula VisualStudio i to trosi, mada je upotrebljivost smanjena, ipak to nije svijet u kome se prave VisualStudio projekti i trosi Microsoft folklor.
Ja sam dugo trosio Sniff+ i ine gui igracke za pretrazivanje koda i snalazenje (narocito) u hijerarhijama objekata, ali vala bas nikad nesto nijesam osjecao da sam zbog same te tehnologije brzi ili produktivniji od druzine koja u vim-u za tri mikrosekunde pronadje dio koda od interesa u moru fajlova.
Rational Rose je vec deseti koncept, to je iznad IDE/editor&komandna_linija ratova, ali zahtjeva da se cio proces uvede u alat. I kosta. I para za alat, i vremena i ucenja da se tim osposobi da efikasno koristi alat i metodologiju.