[ rainman1977 @ 08.02.2003. 13:45 ] @
imam jednu veliku dilemu.Radi se o ovome:krecem da se bavim sa programiranjem ali u nedoumici sam koji prog.jezik da koristim.Znaci,razmisljam izmedju MS visual basic ili c++.Molio bih sve ljude dobre volje i znanja iz obe brasne da mi pomognu oko izbora prog.jezika ukljucujuci objasnjenja i obrazlozenja u vezi gore navedenog.S obzirom da sam pocetnik molio bih vas da mi odgovorite razumljivo bez skracenica.Unapred hvala.
[ Shadowed @ 08.02.2003. 14:29 ] @
Pa, najkrace receno, Visual Basic je laksi Visual C++ ima vise mogucnosti. Iako to verovatno vec znas, sve se vrti oko toga. U C-u imas vise mogucnosti u smislu da mozes da pristupas hardveru na nizem nivou kao i samom Windows-u. Samom bliskoscu sa Windows-om C++ je blizak sa koriscenjem API funkcija (API=Aplication Programing Interface, funkcije koje se nalaze u .dll fajlovima i koje pruzaju osnovne (i neke manje osnovne) finkcionalnosti Windows-a). U Visual Basic-u su mnoge stvari jenostavnije, pocevsi od sintakse pa do rada sa kontrolama (onim stvarima po kojima klikces u prozorima :)). Ako se govori o Visual Basic-u 6.0 onda se mora pomenuti njegov velini nedostatak a to je veoma slaba podrska za objektno orjentisano programiranje. Sa Visual Basic.NET-om je druga prica - mnogo je bolji i ima mnogo vise mogucnosti a nije mnogo tezi. E sad, nije ni Visual Basic bas naivan. Gotovo sve sto mozes u C-u mozes i u Visaul Basic-u (sve vreme govorim o verzizi 6.0 osim kad ne pmenem drugacije). Za sve stvari koje su blize sistemu moras koristiti API funkcije. Njihovo koriscenje je malo zapetljano tako da ga mnogi izbegavaju dok je Visual C++ dovoljno i sam zapetljan pa API ne predstavlja problem i otud delimicna zabluda da je Visual Basic nesposoban.
To su generalne razlike ali ima mnogo toga sto jos moze uticati na tvoj izbor.
Moj predlog je Visual Basic.NET jer ima vise mogucnosti, ima podrsku za objektno orjentisano programiranje, koristi .NET Framework...
[ legend @ 08.02.2003. 14:42 ] @
definitivno visual basic.net
[ degojs @ 08.02.2003. 15:39 ] @
Definitivno C# ako mu vec predlazete .Net platformu. Jednostavno: lakse je kasnije nauciti Javu, blizi je C/C++, a nije tezi za ucenje od VB.NET.
[ Lord Storm @ 08.02.2003. 20:57 ] @
Moj savet je da je najbolje za tebe da ucis c++, ukoliko zelis da budes ozbiljan programer.

Jednostavno, C++ je najbolji programski jezik od navedenih(citaj najmocniji), a uz to mozes, kada ga jednom naucis, da pises programe i za Windows i za Linux(nemoj misliti da se samo programira na Windows-u, jer Linux raste i ima sve vise korisnika, a uz to se u industrijskim i vojnim poslovima koristi, takodje, Linux).
Visual Basic(bez obriza da li je to .Net verzija ili 6,5...) je jednostavan programski jezik i lak za ucenje, ali se njime mogu postici samo osnovne stvari.
C#(nova tvorevina MS-a) ima, kako MS kaze "lakocu Visual Basica, a moc C++", ali i on kao i VB ne moze da se koristi za linux programiranje.
Ipak je C++ ostao prvi. Nemoj misliti da sad ja ovo pricam jer sam "okoreli" C++ programer, jer sam i ja poceo sa VB-om, a onda sam uvideo sta je sta.

Dakle, ako zaista zelis da se ozbiljno bavis programiranjem ja ti savetujem da ucis C++, jer ces ipak kasnije morati da ga naucis.
[ rainman1977 @ 09.02.2003. 00:14 ] @
Mnogo vam zahvaljujem stvarno ste brzi.Svaka cast.Puno mi je ovo znacilo.
[ Reljam @ 09.02.2003. 00:48 ] @
Ovo gore jednostavno nije tacno, C# postoji i na Linuxu, zove se projekat Mono ( http://www.go-mono.com/ ).

Dilema koji jezik izabrati nije jednostavna: C++ je univerzalan, ali i nezgodan za odredjene zadatke (recimo UI, rad sa bazama, i ostali vidovi "Office" i web programiranja). VB.NET dobro radi upravo to Office programiranje i stvari koje su potrebne firmama (manje interne aplikacije, itd.), dok C# treba da bude nesto izmedju ova dva....

Ako ti kompjuteri 'leze' i ako vec znas neki programski jezik, izaberi C++, a ostalo po potrebi. A ako ipak ne znas da programiras, onda uzmi jedan od ova druga dva. (C#?)
[ Lord Storm @ 09.02.2003. 15:37 ] @
Reljam i sam kaze da je rec samo o projektu .
Ja znam "tonu" c/c++ linux programera, ali iskreno ne znam ni jednog koji programira na linuxu koristeci c#.
[ impaque @ 09.02.2003. 20:33 ] @
Hm, a da li znate da prilikom zaposlenja u nekim firmama znanje visual basica NIJE poželjno?
[ degojs @ 09.02.2003. 21:55 ] @
Kako dodatno znanje nekog jezika/okruzenja moze da bude nepozeljno?
Svasta.
[ B o j a n @ 09.02.2003. 22:22 ] @
Vrlo moguce, cak i izvesno.
Razlozi mogu biti razliciti, pocev od vodjenja istog kao "lose navike", ili sutrasnjeg eventualnog priblizavanju istom ...... A sa pravne strane je potpuno jednako uslovom, odsluzenog vojnog roka, ili marriage status: single.
[ -zombie- @ 09.02.2003. 22:37 ] @
krenuli smo u offtopic, ali ajde..

elem, kako moze da bude pravno isto? ako kazu da je recimo znanje vb-a negativno brojanje, (kao vojska ili porodica) ko je lud da im kaze da zna vb (to ipak ne mogu tako lako da provere kao prva dva)?

ako ne kazu, a ipak vrednuju na osnovu toga, mislim da to nije pravno valjano..
[ Reljam @ 09.02.2003. 23:45 ] @
U USA ne smeju da te pitaju da li si single, odakle si, kad si rodjen, koji si pol, ne smes da saljes slike uz rezime, itd.

To su samo 'nase' fore :)
[ Lord Storm @ 10.02.2003. 20:15 ] @
Ja ne mislim da je znanje drugih programskih jezika stetno. O tome ni govora. Samo mislim da ima boljih programskih jezika cije ucenje zasluzuje vise paznje.
[ Dragi Tata @ 10.02.2003. 21:20 ] @
Hajde malo da razdvojimo stvari:

1) Kao razvojno okruženje i RAD alatka za razvoj desktop programa VB6 je fantazija - više mi se sviđa nego VS.NET, a da ne govorimo o VC6.

2) Kao programski jezik, VB je dosta ograničen i ima (po mom mišljenju) previše glomaznu sintaksu. Što se samog jezika tiče, C++ je kilometar ispred njega (i ispred bilo kog drugog jezika koji sam imao prilike da isprobam).

3) Što se tiče marketinške prolaznosti, VB6 će u narednih nekoliko godina potpuno nestati - VB.NET je sasvim drugi programski jezik, mada sa sličnom sintaksom. Prema tome, mislim da ne vredi učiti VB6. Međutim, teorije da znanje VB-a može da bude minus kod zapošljavanja nikad do sad nisam čuo i mislim da nemaju nikakvog osnova. I mnogi drugi jezici (Perl, Fortran, assembler, čak i C) su na "lošem glasu" što se tiče čitljivosti i "dobrih programerskih navika", pa ipak nikom ne pada na pamet da znanje ovih jezika smatra nedostatkom.

Uglavnom, moj predlog za redosled učenja je: C, Java, C#, C++. Srećno.

[ genye @ 24.02.2003. 10:52 ] @
Biti ili ne biti...
[ Rapaic Rajko @ 24.02.2003. 11:57 ] @
O 'minus-plus' vrednovanju znanja nekog jezika...evo da se nadovezem iz licnog iskustva.
Godine 2000. u avgustu sam presao da radim u jednu beogradsku firmu. U firmi se radilo iskljucivo u C++-u, sve moguce varijante, osim BCB-a (kasnije sam skuzio da su to programeri ubedili gazdu da BCB ne valja - jer nisu hteli da uce VCL -))) ). Elem, primljen sam na osnovu Delphi referenci; znaci, predstojalo mi je ucenje C++-a.
Da ne duzim, jezik sam naucio i vrlo sam lepo radio, ali sam posle 6 meseci ipak leteo iz firme. Razlog? Razmimoilazenje sa lokalnim 'starosedeocima' po pitanju OOP-a. Pogadjate, ja kao disciplinovan Delphi OOP programer 'nisam mogao da gledam' sta se sve protura gazdi pod maskom OOP-a; drugim recima, dolazio sam u tihe sukobe sa kolegama, inace nativnim C++ programerima. Kao sto to biva, otisao sam (gazda je sutn'o mene; nekog je morao) vrlo nezadovoljan i prilicno razocaran u C++ kao jezik.
Mnogo, mnogo kasnije (pre par meseci) procitao sam bas ovde tekst Dragog Tate o 'statickom i dinamickom OOP-u i early i late binding-u'; bese tako nesto. Tada sam shvatio da nije sve tako crno-belo, a nisu ni svi jezici ni OOP modeli isti. (Hvala Dragom Tati.)
Ono sto sam pouzdano saznao u vezi te firme je da gazda vise NIKADA nije zaposlio non-C++ programera, ma koliko on dobar bio. Jednostavno, programer koji sazri na drugom jeziku ne odgovara trazenom profilu programera.
Da li je sada jasnija opaska o 'nepozeljnom' znanju VB-a?

Rajko
[ degojs @ 24.02.2003. 13:51 ] @

Hm, ne znam koliko ova priča ima veze sa 'sazrevanjem programera na određenom jeziku', meni se čini da to više ima veze sa nekim drugim sazrevanjem.
Možda valja nekad otići na piće sa kolegama posle posla pa se uklopiti, a ne suprotno, pogotovo ako si usamljen.. tja. Ne znam da li je tebi sad jasnija ova priča o sazrevanju uz određeno pivo, recimo. ;))))

pozdrav
[ -zombie- @ 24.02.2003. 15:24 ] @

mislim da moze da ima veze. recimo, ja sam poceo na paskalu (dobro, comodore basic se ne racuna), pa presao na delphi, i od onda naucio josh 10 jezika (programerskih, markup, skript, ...), ali s' vremena na vreme, opet mi dodje neki delphi poslic, i ja se samo tu osecam kao kod kuce..

u stvari, najlepse mi deluje definicija "meni je pascal (kao) maternji jezik.", stim da mogu ja da naucim i javu, i c++, i c#, i c@, c% ... ;D .. ali sve ce to biti za mene "strani" jezici, ma koliko ih dobro budem naucio...

Citat:
Rapaic Rajko:
Mnogo, mnogo kasnije (pre par meseci) procitao sam bas ovde tekst Dragog Tate o 'statickom i dinamickom OOP-u i early i late binding-u'; bese tako nesto. Tada sam shvatio da nije sve tako crno-belo, a nisu ni svi jezici ni OOP modeli isti. (Hvala Dragom Tati.)


gde, ne mogu da nadjem, a trazio sam po ovim kljucnim recima sto si spomenuo...
[ degojs @ 24.02.2003. 16:10 ] @
Zombie: ma, ima veze, ali u tolikoj meri da bi dobio sut-kartu na poslu? I sta sad, na osnovu te price treba zakljuciti da je poznavanje nekog dodatnog jezika potencijalni problem. Pa, jeste, ako si.. tvrdoglav? ;)))
[ Dragi Tata @ 24.02.2003. 18:35 ] @
Najpre, moram da primetim da je Rajko nastradao zbog poznatog srpskog sindroma koji se zove "ispravljanje krive Drine". Pristup tipa "nisam mogao da gledam šta oni rade" u principu vodi u sukobe. Jednostavno, kada se pridružiš nekom timu moraš da im se prilagodiš, pa tek kad te prihvate možeš da počneš da menjaš stvari i to "kurvinski" - korak po korak. Recimo, krajem 1998 sam dobio šansu da radim jedan zanimljiv GIS projekat, ali je zahtev bio da se koristi Visual Basic. Naravno, u sebi sam psovao onoga ko je izmislio VB, ali sam ćutao, naučio ga i odradio taj posao. Što je još zanimljivije, kasnije sam zahvaljujući znanju VB-a, radio još par vrlo zanimljivih poslova, a i posao u Americi sam dobio jer sam znao (i) VB, mada se ispostavilo da im je to moje znanje VB-a koristilo samo u jednom sitnom pod-projektu. Poenta - pokušaj da se prilagodiš, nikad ne znaš zašto je to dobro.

Druga stvar koja mi često pada u oči je idealizovanje OOP-a. Ljudi zaboravljaju da OOP nije samo sebi cilj, već služi da olakša organizaciju koda i upravljanje projektom. Zbog takvog "OO idolopoklonstva" često izbegavam da koristim funkcije koje nisu članice klase, mada to ume da vodi boljem i čitljivijem kodu (pogledajte http://www.cuj.com/articles/2000/0002/0002c/0002c.htm ) - jednostavno se bojim da neki "OO fanatik" ne drekne "ovo nije objektno orijentisani kod". OOP treba koristiti tamo gde ima smisla i u meri u kojoj ima smisla, ali ne treba mu staviti krunu na glavu, ili još gore izgubiti posao zbog njega.
[ -zombie- @ 24.02.2003. 23:44 ] @
pa dobro, oce neko mene da uputi na doticni clanak, ili da pretrazujem rucno tatinih 1k poruka? ;)

(opet, pretragom nisam uspeo...)
[ Dragi Tata @ 24.02.2003. 23:59 ] @
Verovatno je mislio na onu našu raspravu šabloni vs OO, ali nisam siguran...
[ -zombie- @ 25.02.2003. 01:40 ] @
btw, u medjuvremenu sam "shvatio" prednosti sablona u programskom jeziku ;p. i dalje mislim da nisu nesto "revuliconarno", ali je stvarno fina opcija za imati u vasem omiljenom programskom jeziku (nijedan moj omiljeni prog. jezik je nema ;(

no,

Citat:
Dragi Tata:
Druga stvar koja mi često pada u oči je idealizovanje OOP-a. Ljudi zaboravljaju da OOP nije samo sebi cilj, već služi da olakša organizaciju koda i upravljanje projektom. Zbog takvog "OO idolopoklonstva" često izbegavam da koristim funkcije koje nisu članice klase, mada to ume da vodi boljem i čitljivijem kodu (pogledajte http://www.cuj.com/articles/2000/0002/0002c/0002c.htm ) - jednostavno se bojim da neki "OO fanatik" ne drekne "ovo nije objektno orijentisani kod". OOP treba koristiti tamo gde ima smisla i u meri u kojoj ima smisla, ali ne treba mu staviti krunu na glavu, ili još gore izgubiti posao zbog njega.


mada se mogu generalno sloziti sa tobom, ovaj clanak mene ne bi mogao da ubedi u isto (da se vec ne slazem sa tobom).

prvo "formalno definise" da je jedna tehnika implementacije nekog problema "enkapsuliranija" od druge (fali mi prevod), ako njeno menjanje kvari manje funkcija, a zatim izvlaci zakljucak da je klasa vise enkapsulirana od druge, ako ima manje metoda.

zatim daje primer koji bash kosi njegovu prethodnu definiciju. metoda koja ne mora da pristupa privatnim delovima klase (znaci ne mora biti friend ili member) se nece pokvariti ako se promene privatni delovi klase, sto znaci da njeno prisustvo/neprisustvo u klasi ne menja njenu "enkapsulaciju"..

ovo ponistava razlog na kome bazira ostatak svog clanka, pa samim tim ceo clanak pada u vodu (dobro, skoro ceo. onaj deo oko podele utility funkcija u posebne .h fajlove za spavanje, jedenje i disanje je i dalje validan...)


mozda ja nesto nisam dobro shvatio (posto nisam native-cpp-speaker ;), ali ne bi me ubedio onom pricom...
[ Dragi Tata @ 25.02.2003. 04:40 ] @
Sad sam malo pospan, pa ne mogu da detaljno obrazlažem zašto je čovek u pravu. Uglavnom, kad sam prvi put čitao članak iskolačio sam oči od čuđenja i da Scott Meyers nije tako značajno ime u C++ svetu (jeste, i ja sam od onih što se klanjaju autoritetima) verovatno bih batalio posle prve rečenice. Međutim, kad sam malo bolje "svario" šta je hteo da kaže, oduševio sam se kao kuče u liftu.

Ponekad mi se čini da toliko volim C++ baš zato što i posle 8 godina profesionalnog rada stalno naletim na nešto novo...