Má smysl se učit programovat v platformě .NET? Nebo se raději učit jiný jazyk?
Fórum › .NET
Má smysl programovat v .NET?
Zdravím,
nejlepší je učit se programovat a ve své podstatě je jedno v jakém jazyku. Ale abych odpověděl na otázku. Ano, má smysl programovat v .NET - klidně i pro začátečníka.
Je pravda že jsem zarytý "windowsák". Dle mého názoru je pro člověka užívajícího Windows rozhodně nejlepší volba. Máš docela velký portfolio jazyků (C#, C++, /i trochu hloupější Visual basic/). Microsofttí vydavatelství k nim všem (hlavně C#) vydává opravdu pěkné knihy (sám se učim z Visal C# 2008 Krok za krokem).
Celý framework má i ?opensource "port" na MacOS & Linux (MONO). Navíc je pak možnost využívat freeweare Visual Studio, které na to že je zadarmo (ve verzi Express) je velmi dobré. A díky tomu že většina desktopů běží na W je to i jeden z nejrozšířenějších frameworků.
Lets Flame begin :)
U .net počítej s tím že když si tvou aplikaci bude chtít pustit kámoš s OS jiným než w7 (kde je framework předinstalovaný) budeš ho muset ještě donutit stáhnout cca 35MB .net redist - občas je to těžší než by se mohlo zdát :) Pro javu platí to samé, třeba pro c++ ne :)
Taky je trochu problém že .net je ve svém jádru "tajné" - neuvidíš jak fungují vnitřnosti* a třeba takové vytvoření vlastního GUI prvku (nemyslím komponenty ale zcela nového prvku - třeba kulatý checkbox :) ) je pak docela porod. Taková Java je v tomhle na úplně jiném levelu, a i když jsou některé implementace tajné (proto třeba linux není distribuován s javou...) v praxi jsem na ně nikdy nenarazil a vesele se šťoural ve zdrojáku frameworku :)
Pokročilá grafika... .NET je v grafice zvláštní. Jako vlajkovej framework microsoftu se v něm nedá dělat** s DirectX (podpora D3DX skončila před dvěma lety...) takže buď OpenGL a nebo (někdo říká že pomalé) wpf (pozor, wpf je sice mocný nástroj ale do nějakého pokročilého 3d bych se s ním rozhodně nepouštěl - nějakej graf či křivku klidně...). Java má několik implementací OpenGL (DirectX bez šance) a není problém.
Jinak jestli se chceš začít učit... Myslím že s .net není problém. Nás na vejšce první naučili s Javou a pak až s .net ale z praxe můžu říct že když umíš s jedním umíš po dvou minutách i s druhým.
Ono není zas tak důležité naučit se datlit kód, jako samotný návrh a architektura projektu. Ve chvíli kdy povyšuješ proměnné které jsi měl jako instanční na statické bývá něco špatně s OO návrhem :) ) Je sice pěkné že hned po "hello world" si naprogramuješ batch run (třeba, prvni co me napadlo :D ) ale u větších projektů to prostě není o datlení.
Rozhodnutí je jen na tobě :)
Hezký den :)
*s .net reflector uvidíš, disassembly do zdrojáku, príma věcička a free :)
** dá, můžeš použít sexy XNA framework - ten je ale zaměřený na hry, pokud potřebuješ jen vykreslit graf je blbý uživateli nutit novej framework.
To splite : Proti tématickým flamům nic nemám, ale jestli se to ponese v tomto stylu, tak to brzy zamknu.
1) .NET je součástí OS snad už od Windows XP SP2, který má společně s Windows Vista a Windows 7 poměrně vysokou penetraci, takže o to bych se opravdu nebál :)
2) A je to skutečně problém? Já myslím, že nikoliv. Ve WPF lze snadno vytvořit vlastní prvky UI (třeba i ten kulatý checkbox). Je pravda, že ve WinForms je to trochu komplikovanější, ale stále je to možné a uzavřenost .NET FW na tom mnoho nemění. (Nehledě na to, že existuje již zmíněný Reflector, apod.)
Dovolim si odporovat s tim, ze nejsou zdrojaky- tady je vsechno (krome nekolika casti kodu, ktery nesmi sdilet, kvuli licencim a tak) : http://referencesource.microsoft.com/netframework.aspx
+K tomu stahovani frameworku, jak uz psal djanosik, staci, aby ho "nekdo" presvedcil. Nevim, jaka je rozsirenost, ale verim, ze .net 3 uz ma spousta lidi, takze to az tak horke nebude, staci pribalit webinstaller.
To djanosik : Penetrace: No, a to já mám právě historku s kamarádem kterého už lehce přes rok spamuju "aby si to konečně sosl" a ještě nebyl schopnej / ochotnej i když měl na icq link už mockrát. Jsou prostě lidi kteří zabrzdí kvůli dososávání frameworku.
Blahé paměti a dle wiki* je .net out-of-box jen v Vista (3.0) a W7 (3.5) a ruku na srdce, XP má pořád strašně moc lidí.
WPF je mocný nástroj, bezesporu, ale začátečníka může právě proto docela dobře ubít. To mi nevymluvíte. Naučit se pořádně WPF není otázka pár hodin a pan Jakub se ptal na jazyk a ne gui hejblátka :) Když už jsme u toho psaní nových (forms) prvků, ještě bych podotkl že i .net codebase obsahuje několik bugů s ktrerými se nikdo od Microsoftu neobtěžoval** a vlastně tak jen házej klacky pod nohy.
Trochu zkoriguju sám sebe... Zabíhat do tvorby forms prvků je trochu extrém, připouštím, hlavně pro začátečníka - mělo to sloužit jako porovnání s javou, kde je toto vyřešeno mnohem jednodušeji. Chci tím jen taktně naznačit že se rozhodně nedá říct "dotnet ruleeezZzZz!!!!11" protože všechno má svá slabá místa.
Ale to už jsme strašně daleko od původní otázky - prostě a jednoduše, smysl to má, určitě ano :) Jen všechno není absolutně dobré nebo absolutně špatné.
To Krychlik : Zajímavý odkaz :) To mi skutečně uniklo...
*viz http://en.wikipedia.org/wiki/.NET_Framework#Versions
**viz http://objectlistview.sourceforge.net/cs/blog3.html
ja som sa pred minulé prázdniny začal učiť .NET (jazyk C#, bez hocijakého myslenia v OOP) tak zľahka, následne na výške som si zobral kurz JAVA-y, že aké sú tam rozdiely (študujem fyziku...) a JAVA sa mi strašne podobala na C#, prakticky by sa stačilo naučiť používať nie MSDN, ale ich dokumentáciu (extra ma ale java nezaujala, urobil som projekt za víkend a dovidenia, kedže aj na LINUX je už MONO, ak si dobre pamatám názov)
WPF, s tým som začal pred 2 týždnami tak intenzívnejšie, jazyk XAML nie je až taký tažký, aj keď zatiaľ toho veľa nespravím... (kedže je založený na XML), podstatné je len pochopiť Data Binding, a následne programy ako Expression Blend (prípadne. expression desing, ktorý Ti urobí xaml kod z hocičoho) sú extrémne mocné, pokiaľ Vás kód ako taký netrápi.
Celé VS10 je vytvorené vo WPF, a myslím si, že nie je pomalé.
Ale zdôraznujem, som rekreačný programátor :), toto je len moj názor
To splite : Nj, pravda. U XP se jednalo pouze o MSI dostupné na instalačním CD systému a navíc se jednalo o .NET 1.x, takže to opravdu nelze počítat. Ale obecně vzato mě ten kamarád docela udivuje. Stáhnout nějakých 50 MB může jen těžko někomu ublížit - pokud to není fanatickej uctívač opensource, kterej jedná na základě nesmyslných předsudků vůči MS a všemu, co z tohoto zla vzešlo.
Ono to není jen u WinForms. U MS poslední dobou panuje trend, kdy raději přidaj novou funkcionalitu, než aby zlepšili / doladili stávající, ale s tím se nedá mnoho dělat (jedině jít jinam).
Říkat něco ve stylu "dotnet ruleeezZzZz!!!!", je strašně omezený. Myslím, že to není nikdy na místě.
K tomu Monu a vůbec C# v Linuxu - není to žádná sláva a pokud můžete, doporučuji se tomu vyhnout a zvolit si pro multiplatformní aplikace jiný jazyk. To není názor protí .Netu, ale jen poznámka, že pro Linux to zatím není úplně nejdotaženější.
Hůř, 35 MB :) Jde o to že to je úplně obyč člověk co s ním chodím na pivko a fotbal a sice ví kde se pouští počítač ale... Prostě když to zastaví jeho, tak pro nějakou sekretářku to může být nepřekonatelný problém. Ne všichni vědí že "framework" není vulgární nadávka. Sekretářka má alespoň systémáka kterej udělá hromadnou instalaci, ale jako sw "pro obyč lidi"... Nevím jak to popsat.Stáhnout nějakých 50 MB může jen těžko někomu ublížit
Přesně to se snažím celou dobu říct a uvést na příkladech. A já se těšil na flame :D No, snad příště ;)Říkat něco ve stylu "dotnet ruleeezZzZz!!!!", je strašně omezený. Myslím, že to není nikdy na místě.
To splite : Já jsem na flame už moc starej :D
Uz nespominam ako to bolo pi FW 1.1 ale pri FW4 vyskoci okienko kde clovek potvrdi a FW sa nainstaluje zo stranok MS (za predpokladu "vlastnictva" internetu) tusim treba 2x kliknut potom 1x restart a je to. Nic zlozite. Ked si zobereme, ze dajme tomu by bol program pisany vo VB 6.0 tak je tiez moznost, ze by to neslo. Chybali by dake ocx subory a podobne.
Ked som bol na MS konferencii este ked sa len uvadzal FW 2.0 tak typek z MS hovoril o vyhodach FW. Jednou z nich bolo aby programatori uz pribalovali k progrmom len svoje napisane kniznice a podobne. Tie ostatne by uz boli v systeme s FW. A teda by odpadol fakt, ze sa dany subor nachadzal v systeme viackrat.
Co sa tyka FW uz predinstalovanych wo Windows. Tak tusim XP uz malo so SP2 instalovany FW 2.0 isto to neviem. Vista ho uz Naisto mala. Dalsich x milion softikov instalovanych bud uz pri kupe pc alebo neskor uzivatelmi vyzaduje FW takze je minimalne 80% sanca, ze v pc ten FW bude.
To ci clovek bude pisat v tom ci onom programovacom jazyku je uuplne jedno. Ked vie tu logiku naucit sa syntax nieje problem.
To je uz len otazka par minut. A ci to zmysel ma? Ma to zmysel.
Přidej příspěvek
Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku
×Vložení zdrojáku
×Vložení obrázku
×Vložení videa
Uživatelé prohlížející si toto vlákno
Podobná vlákna
ASP.NET - VB.NET - Zákaz kopírování webu, Context menu — založil Standa
Smysl podtržítka — založil Váchyč
Lazarus - má to smysl? — založil Jan16
Má to nějaký smysl — založil nery
Moderátoři diskuze