Nejste přihlášen/a.

Přihlásit se do poradny

 

Který program. jazyk je lepší

Od: deiv19* odpovědí: 2 změna:

Co myslíte je lepší na naučení C++/C#?

 

 

2 odpovědi na otázku
Řazeno dle hodnocení

 

 

dzordz*
hodnocení

5x

To je otázka asi jako jestli je lepší modré nebo červené tričko :)

Chtělo by to nějak upřesnit, co očekáváte, za jakým účelem, co máte za sebou. Společného mají ty jazyky asi tolik, že jsou objektové, imperativní (C++ ne nutně), modulární, silně typované (C++ silně i staticky), s obecným zaměřením.. Díky objektovému návrhu klasická trojice: polymorfismus, zapouzdření a dědičnost. Oba mají třídy, přetěžování operátorů i metod, virtuální funkce, obsluhu výjimek.. No a k rozdílům asi tolik, že:

C++ je v současné době pravděpodobně rozšířenější v profesionálním nasazení, průmyslu atd, může být snazší si najít uplatnění (nemusí ovšem platit ještě v době, kdy vy budete jazyk ovládat nebo mít dokončenou školu), bere se jak otakový ten standard. Je zpětně kompatibilní s C, takže si přenáší řadu drobných neduhů a nevýhod, na druhou stranu zas můžete psát i čisté neobjektové programy (pak ale není důvod se učit specificky C++). Na kompletní zvládnutí je velmi náročný a rozsáhlý, také náchylný na programátorské chyby, je tam nespočet věcí, které vás ošklivě ztrestají. Můžete s ním psát i programy pro linux.

C# je součástí .NET platformy, což znamená, že je kompatibilní a zaměnitelný s dalšími .NET jazyky a dokonce i automaticky převeditelný, mají společný runtime, platformní nezávislost, navíc naučením jednoho z nich v podstatě ovládáte všechny (VB, F#, IronPython, IronRuby..), alespoň tedy pro čtení a pochopení. Velkou nevýhodou při nasazení je nutnost mít .net framework, 4.0 se musí všude nainstalovat ručně (resp při vaší instalaci), win7 mají 3.5, xp se service packy snad 2.0, bez sp jen 1.0. Nevýhoda je to proto, že klientský balík může být mnohonásobně větší než vaše aplikace - při rozsahu na celé cd nebo dvd to je jedno, ale u malinké aplikace to (někdy, pro někoho) představuje velký problém.

Dále jste vhozen rovnou do objektového programování, což bez základů z fortranu, pascalu nebo C nemusí být nejjednodušší, po pochopení teoretické stránky věcí je pak C# ale poměrně snadný (no, snadný - komplexní učebnice mají pořád tak ke dvoum tisícům stránek). Další výhody by byly žádné pointery, automatický úklid smetí, v novějších verzích LINQ, volitelné parametry metod a lambda výrazy.

Závěrem, za sebe určitě C#, kvůli všem těm technologickým důvodům a proto, že ho doufám "čekají světlé zítřky". Ale jestli vás nic z tohodle neoslovilo a budete teprv začínat, je v podstatě jen na vás, co si vyberete.

 

deiv19*
hodnocení

Děkuji za rozepsání.

 

 


 

 

 

Přihlásit se k odběru odpovědí z této otázky:

Neneseme odpovědnost za správnost informací a za škodu vzniklou jejich využitím. Jednotlivé odpovědi vyjadřují názory jejich autorů a nemusí se shodovat s názorem provozovatele poradny Poradte.cz.

Používáním poradny vyjadřujete souhlas s personifikovanou reklamou, která pomáhá financovat tento server, děkujeme.

Copyright © 2004-2025 Poradna Poradte.cz. Všechna práva vyhrazena. Prohlášení o ochraně osobních údajů. | [tmavý motiv]