U školi smo krenuli da učimo C ali mislio sam da ćemo učiti C++ tako da sam nabavio dosta knjiga te i malo učio, ali pošto ne radimo C++ interesujeme koja je razlika između C++ i C?
http://www.durofy.com/programming/10-ma ... n-c-and-c/ sad koliko se razumijes to ne znam,predpostavljam da znas neki base,procitaj mozda ti bude jasnije,ako ne trazi dalje.
Pa C je proceduralno orjentisan jezik, dok je C++ objektno orjentisan, ali ne možeš smatrati C++ nasljednikom C-a, jer to on u biti nije, iako je pokupio skoro pa sve njegove osobine, što se sintakse tiče. Kažeš da ste to u školi radili, pa po gradivu iz srednjih škola jedino ti razlika može biti modul stdio i iostream, tj. ispis/unos, ali to se u imalo naprednijem razlikuje i to dosta. Ako mene pitaš, radi C++, ja sam radio C pa sam prešao na C#.
Prenapredno je to za skole svakako... da bi razumio C++ moras prvo shvatiti objektno orjentisani model. Elem, ako te bas interesuje mozes istrazivat al generalno, to je nivo iznad.
Uvijek pocnes uciti proceduralan jezik, pa tek onda OO. Moraju se shvatiti jednostavne stvari, kao varijable, loops, matrice, funkcije, pa tek onda OO. Samo mi ne ide uglavu zasto je prvi susret s programiranjem kod nas C, a ne nesto modernije kao VB ili Delphi. Po meni je cak i PHP bolja alternativa nego C. Doduse, moj nivo programiranja je poprilicno nizak, ali logicno razmisljajuci, mislim da bi imali vise koristi sa npr Delphijem.
Bilo bi bolje, ali nema strucnog kadra da predaje to u skolama. Ko je iskusan u tome sigurno nece raditi u prosvjeti.
Ne!, zašto bi se ukaljavao drugim paradigmama kada će i ovako završiti na OO, ja kolegi savjetujem da odmah uči C# i .NET, sa njim može sve (micro.NET, mobile.NET, System.Web...)
Nije zgoreg poceti i sa nekim "lijepim" jezikom, koji je lagan za nauciti, poput Pythona. MIT ga koristi u svom Intro to CS predmetu, fakticki prvoj stvari sa kojom se srecu ljudi kada odu na taj smjer, pa i to ide u prilog ka ucenju ovog. Jedini problem sto nema puno prilika za posao sa tim jezikom, pogotovo kod nas, ali bi se trebalo to popraviti u buducnosti. U sustini, kao sto Zeleni rece, bitno je dobiti osnovu i shvatiti te jednostavne stvari, i ako se to prodje kroz neki jezik koji to fino predstavi, kao sto je Python, ne bi trebalo biti problema sa prelaskom na nesto "ozbiljnije", za neki posao ili konkretan projekt i sl. Java isto nije los izbor, iako ima malo cudnih stvari za pocetnike, String []args, , sto bude cesto pitanje odma na pocetku a odgovor obicno "polahko, doce to poslije", ali definitivno ima siroku primjenu, pogotovo poslije za razvoj za vise platformi. Zgodna stvar je sto i nije problem poslije preci na C# ako bude potrebe za tim. Za skolu ces svakako to morati nauciti, to sto koristi profesor, ali cim skontas neke osnovne stvari nece biti problem u bilo kojem jeziku isprintati nesto, uzeti ime prezime i tako to, napraviti obicnu petlju, sabrati neke gluposti i slicno sto obicno bude za zadacu, pa se ne sikiraj puno. I meni je recimo zanimljivo ovo, http://en.wikipedia.org/wiki/Hello_worl ... m_examples Tu se nalaze primjeri za obicni program koji printa "Hello world", pa se vide razlike izmedju jezika gdje se stvari nepotrebno komplikuju, a negdje je to obicna linija koda. Nije sad ovo neki problem, ali ako se po jutru dan poznaje...
Kao prvo u srednjoj skoli ili na prvim godinama fakulteta sa uci C, jer se ne uci programski jezik vec ucis logiku programiranja, tako da je manje-vise svejedno koji jezik ces uciti. Ali ne znam sta je prednost uciti npr. VB koji je event driven i onda izgubis svu logiku programiranja misleci da je programiranje napisati message box kad kliknes na neki button. A osim toga, prednost C-a je sto se koristi prakticno u svemu, te ga je vrlo korisno znati. Od operativnih sistema, mikrokontrolera, vm-ova, embedded uredjaja itd. A i vrlo je lahko preci sa njega na C++, C#, pa i Javu, PHP, .NET itd.
Da slažem se sa selvinom, C ti pruža mogućnost da naučiš kako to radi ispod haube, pokazivači recimo, C# i Java su ih puni, a za programera ih nigdje, što je dobro za korisnika, ali programer bi morao znati šta se dešava kada povuče referencu na neki objekt.
Pa dobro u Javi nemas pokazivaca, imas referencu na objekat. U C-u bas imas direktni pokazivac na memoriju, sto naravno u Javi ne mozes imati, jer sve ide preko JVM. Ali kao sto ti rece, dobro je znati sustinu.
U školi ćete učiti samo osnove programiranja, tako da neće biti neke značajne razlike za tebe. Sintaksa je identična, samo ćeš upotrebljavati drukčije funkcije za input/output i početak programa će se neznatno razlikovati. Petlje, funkcije, računske operacije, rekurzija i sl. je identično u oba jezika. Postoje razlike u baratanju pokazivačima, ali ako shvatiš suštinu, neće ti to predstavljati problem.