Rychlost vývoje a zkušenosti s .NET

Lukas

Rychlost vývoje a zkušenosti s .NET
« kdy: 08. 04. 2011, 07:54:26 »
Dobry den,
chcel by som poprosit, pokial ma niekto skusenosti s net frameworkom, nech postne skusenosti. velmi ma zaujima ryhlost vyvoja, osobne skusenosti a aj v ktorom jazyku konkretne v nom robi, repektive aj dovod robenia v nom.
Robil som v C++ a Delphi, no teraz (kvoli firme) musim prejst na net, tak ma to velmi zaujima.

Este by som chcel poprosit, aby prosim nikto nepisal "microsoft net framework fuuuj" alebo "humus" ci "hrozna firma" a ine podobne.

dakujem
« Poslední změna: 08. 04. 2011, 08:13:33 od Petr Krčmář »


Zdenek Sejcek

Re: Rychlost vývoje a zkušenosti s .NET
« Odpověď #1 kdy: 08. 04. 2011, 08:55:46 »
Ahoj,

.NET je celá řada jazyků, takže i zmiňovaný C++. Já můžu mluvit pouze za C#, který je co se týče rychlosti vývoje hodně dobrý. Na netu najdeš hromadu připravených knihoven, v podstatě minimum věcí píšeš sám, spíš lepíš knihovně dohromady a píšeš jen business logiku specifickou pro konkrétní aplikaci.

C# je vyspělý jazyk, silně typový a pokud znáš C++, pak křivka osvojení si C# bude strmá. Pokud znáš javu, pak to bude procházka růžovým sadem, jen je potřeba nastudovat, jak funguje .NET framework, ale to se dá studovat běhěm vývoje. Žádné raketové inženýrství.

Ne každý musí se mnou souhlasit, ale Visual Studio je vyspělé prostředí s hromadou funkcí a např. způsob, jakých se debuguje ve VS jsem ještě nikde jinde neviděl. Je to velmi pohodlné, přehledné a výstup z debugu se nechá upravit pomocí attributů tak, že je hned na prní pohled vidět, co člověk chce a nemusí se debugem proklikávat. Tvorba vlastních debugovacích pohledů pak umožňuje koukat na debugovaný objekt pomocí vlastního pohledu, což u složitějších objektů velmi usnadňuje ladění. Pro často používané objekty jsou na netu celkem pěkné pohledy, např. na DataSet.

Pro windows platformu je to vedle javy další dobrá volba a .Net framework se Microsoftu opravdu povedl (a to říkám, že vím o spoustě problémech, ale celkový dojem mám po 7 letech na tomto frameworku dobrý - a to jsem přešel z javy:)).

alefo

Re: Rychlost vývoje a zkušenosti s .NET
« Odpověď #2 kdy: 08. 04. 2011, 11:00:49 »
Keď má človek skúsenosti z Delphi, tak migrácia je priamočiara a rýchlosť vývoja rovnaká: treba si zvyknúť na nový jazyk (typicky C#), a oveľa väčšiu objektovú orientáciu.

Klasická filozofia ťahania komponentov na formulár ostáva, však niekdajší autor Delphi je vo vývojom tíme .NETu :-)

Kým v Delphi som mal pocit, že objektom sa každý vyhýba pokiaľ to ide, tu je to úplne prirodzené, a garbage collector to v mnohých situáciách zjednodušuje.

Poviem to rovno, že síce som Javák, ale keby som mal vyvíjať GUI aplikáciu určenú len pre Windows, tak absolútne by som ani sekundu neváhal a bral C# a .NET.

marwyn

Re: Rychlost vývoje a zkušenosti s .NET
« Odpověď #3 kdy: 08. 04. 2011, 11:17:40 »
Pro interakci s existujícím C/C++ kódem používám C++/CLI, abych nemusel psát wrappery, marshalovat a podobné nepřehlednosti a na zbytek C#. Umíš-li nějaký podobný jazyk, zvykneš si na C# okamžitě.

blizz

Re: Rychlost vývoje a zkušenosti s .NET
« Odpověď #4 kdy: 08. 04. 2011, 11:51:15 »
Robil som v C++ a Delphi, no teraz (kvoli firme) musim prejst na net, tak ma to velmi zaujima.

Hlavný rozdiel medzi Object Pascalom a C# je že zatiaľ čo Object Pascal je zmes objektového a procedurálneho jazyka, C# je čisto objekotový jazyk, takže všetok kód musí byť umiestnený vo vnútri tried. A taktiež s premennými sa pracuje ako s objektami. C# síce kôli efektivite obsahuje aj primitívne dátové typy, no s tými sa vďaka automatickému boxingu pracuje tiež ako s objektami.

Rýchlosť vývoja je vďajka Visual Studiu, a výbornému debuggeru, veľmi vysoká. dnes vpodstate neexistuje rýchlejšia technológia na vývoj aplikácií. C# je silne typový jazyk, takže nemusíš veľa testovať, compiler za teba veľa chýb odhalí, a Visual Studio ti vačšinu chýb aj podčiarkne už v rámci písania kódu. Visual Studio má aj výborný našeptávač, ktorý našeptáva úplne všetko (delphi ti našeptráva len atribúty).


test

Re: Rychlost vývoje a zkušenosti s .NET
« Odpověď #5 kdy: 08. 04. 2011, 12:15:57 »
Rýchlosť vývoja je vďajka Visual Studiu, a výbornému debuggeru, veľmi vysoká. dnes vpodstate neexistuje rýchlejšia technológia na vývoj aplikácií.
Programoval jsem tom C# dlouhu dobu, muzu porovnat. Vyvoj v, treba, pythonu je rychlejsi a spolehlivejsi (jesli potrebujete UI, tak PyQt nebo PyGtk). VS studio je velmi tezky nastroj.

Zdenek Sejcek

Re: Rychlost vývoje a zkušenosti s .NET
« Odpověď #6 kdy: 08. 04. 2011, 12:49:08 »
VS studio je velmi tezky nastroj.

V jakém slova smyslu těžký nástroj? VS je komplexní nástroj, který v závislosti na použité edici umožňuje funkce od základního vývoje a debugu až po celý životní cyklus aplikace, testování, profilování atd. Já nemám s Pythonem žádné zkušenosti, ale trochu pochybuji, že by byl k dispozici podobný nástroj. Ale mohu se mýlit. Jinak záleží na tom, co chce tazatel programovat. VS dnes obsahuje tolik funkcí od debugu v cloudu, v SQL, remote debugu, před profilování, analýzu kódu, šablonování kódu, zmiňovaný návrh GUI pro WinForms i WPF atd. atd. atd.

blizz

Re: Rychlost vývoje a zkušenosti s .NET
« Odpověď #7 kdy: 08. 04. 2011, 12:55:02 »
Rýchlosť vývoja je vďajka Visual Studiu, a výbornému debuggeru, veľmi vysoká. dnes vpodstate neexistuje rýchlejšia technológia na vývoj aplikácií.
Programoval jsem tom C# dlouhu dobu, muzu porovnat. Vyvoj v, treba, pythonu je rychlejsi a spolehlivejsi (jesli potrebujete UI, tak PyQt nebo PyGtk). VS studio je velmi tezky nastroj.

V čom je vývoj v Pythone rýchlejší? Na rýchlosť vývoja má IMHO najvčší vplyv kvalitné IDE hlavne intelli sense, napíšem jedno - 2 písmená a doplní mi celý identifikátor, aj NetBeans má celkom kvalitné ale VisualStudio má najlepšie dokáže dokonca nájsť slovo aj v strede identifikátoru. A taktiež podčiarkovanie chýb, object browser automatické formátovanie - kôli prehladnosti atď. A taktiež možnosť veľa vecí si naklikať namiesto písania kódu. V tomto Visual Studio nemá konkurenciu, teda aspoň ja neviem o žiadnom IDE pre Python v ktorom by sa dali písať aplikácie tak rýchlo, ak o nejakom viete budem veľmi rád keď ho budem môcť vyskúšať. Skúšal som akurát Komodo IDE.

Btw. Python je aj v .NET, u .NET na jazyku nezáleží všetky kompilované sa kompilujú do CLI a interpretované sa vykonávajú nad DLR a sú navzájom interoperabilné takže môžem napísať knižnicu aj v Ruby alebo Pythone a použiť ju v aplikácii napísanej v C#

A v čom je Visual Studio ťažký nástroj to som nepochopil ani ja.

jehovista

Re: Rychlost vývoje a zkušenosti s .NET
« Odpověď #8 kdy: 08. 04. 2011, 13:01:52 »
... ale VisualStudio má najlepšie dokáže dokonca nájsť slovo aj v strede identifikátoru. A taktiež podčiarkovanie chýb, object browser automatické formátovanie - kôli prehladnosti atď. A taktiež možnosť veľa vecí si naklikať namiesto písania kódu. V tomto Visual Studio nemá konkurenciu

Vsechno tohle ale umi treba IntelliJ IDEA a jeste mnohem vic. Nesouvisi to sice uplne s diskuzi, ale docela by zajimalo co ma VS a ostatni to nemaji. Jde mi ciste o vytvareni kodu(i kdyz teda remote debug v idee(?) je taky dost dobry).

blizz

Re: Rychlost vývoje a zkušenosti s .NET
« Odpověď #9 kdy: 08. 04. 2011, 13:11:18 »
... ale VisualStudio má najlepšie dokáže dokonca nájsť slovo aj v strede identifikátoru. A taktiež podčiarkovanie chýb, object browser automatické formátovanie - kôli prehladnosti atď. A taktiež možnosť veľa vecí si naklikať namiesto písania kódu. V tomto Visual Studio nemá konkurenciu

Vsechno tohle ale umi treba IntelliJ IDEA a jeste mnohem vic. Nesouvisi to sice uplne s diskuzi, ale docela by zajimalo co ma VS a ostatni to nemaji. Jde mi ciste o vytvareni kodu(i kdyz teda remote debug v idee(?) je taky dost dobry).

S IDEOou nemám žiadne skúsenosti možno je ešte lepšia ako Visual Studio, ale pre Visual Studio existuje plugin ReSharper (http://www.jetbrains.com/resharper/) ktorý pridáva podobnú funkcionalitu akú má IDEA aj do Visual Studia.

test

Re: Rychlost vývoje a zkušenosti s .NET
« Odpověď #10 kdy: 08. 04. 2011, 13:19:01 »
Citace
VS dnes obsahuje tolik funkcí od debugu v cloudu, v SQL, remote debugu, před profilování, analýzu kódu, šablonování kódu, zmiňovaný návrh GUI pro WinForms i WPF atd. atd. atd.
Jo, ale to zre resourcy jako otesanek. V beznem programovani 90% toho funkcionalu vubec nepotrebujes. Ale to vsechno zatezuje pocitac vic nez java a eclipse. Jestli k tomu budes mit, treba, resharper nebo devexpress, tak to bude proste hruza.

Citace
V čom je vývoj v Pythone rýchlejší? Na rýchlosť vývoja má IMHO najvčší vplyv kvalitné IDE hlavne intelli sense,
IMHO, ale to je omyl, jestli umis psat, ten  intelli sense jen brzdi prace. Python ma vyhodu v lakonicnosti syntaxu, konstrukce.

Citace
Skúšal som akurát Komodo IDE.
Existuje spoustu jinych, lepsich. PyCharm, Wing etc, ktere umi skoro vsechno co jsi psal vyss.

P.S.
Omlouvam se za cestinu. :)

Zdenek Sejcek

Re: Rychlost vývoje a zkušenosti s .NET
« Odpověď #11 kdy: 08. 04. 2011, 13:45:25 »
Citace
Jo, ale to zre resourcy jako otesanek. V beznem programovani 90% toho funkcionalu vubec nepotrebujes. Ale to vsechno zatezuje pocitac vic nez java a eclipse. Jestli k tomu budes mit, treba, resharper nebo devexpress, tak to bude proste hruza.

VS je vývojové prostředí na dev. stanici, kde jsou zdroje proto, aby se využívaly. Na počítadle za 15kKč Tě tato otázka dlouho nebude zajímat. Náklady na vývoj v .NETu nejsou nízké, musíš mít samotné VS (pokud Ti nestačí Express), Windows, mašinu a pokud děláš weby, tak WServer, SQL Server atd. Pokud si tedy nevystačíš s Express edicí, pak jsou náklady vyšší než u PHP (hostingy jsou také dražší a je jich řádově méně). Pro vývoj na platformě Windows budeš potřebovat MSDN (desitky tisíc ročně) atd. Takže mašina za 15kKč na několik let je samozřejmost. Opět ale záleží na velikosti projektu.

test

Re: Rychlost vývoje a zkušenosti s .NET
« Odpověď #12 kdy: 08. 04. 2011, 14:39:59 »
To je asi silenost. :) Aby bylo mozne psat zdrojovy kod (text), je treba mit minimalne 8Gb pameti, 4x core cpu a SSD? A duvod je mit jako soucast nakladu na vyvojarsky software takovy hardware , aby se dalo spustit ten software, aby se mohl napsat ten kod. :) Napriklad potrebujes koupit detske kolo, ale abys ho dovezl domu, koupis auto, na ktere potrebujes garaz, ktera je jen soucast noveho domu atd... :)

Jen legrace, nic vic. Vsechno chapu. :)

Lukas

Re: Rychlost vývoje a zkušenosti s .NET
« Odpověď #13 kdy: 08. 04. 2011, 14:46:05 »
Velmi dakujem vsetkym za odpovede :)

po precitani diskusie a dalsich clankov som uz presvedceny, ze volba .net je dobry vyber. najviac sa mi paci moznost pisat vo viacerych jazykoch, co dufam, ze budem vyuzivat, aj ked vacsina toho bude asi v C++, kedze vacsina nasho kodu je uz v C++. Rozhodne aj C# vyzera zaujimavo.

Urcite .net neni najlacnejsi vyber, ale asi sa to dlhodobo oplati, kedze drahsia vec ako software a hardware su vyvojari  ;D

blizz

Re: Rychlost vývoje a zkušenosti s .NET
« Odpověď #14 kdy: 08. 04. 2011, 18:18:14 »
Citace
V čom je vývoj v Pythone rýchlejší? Na rýchlosť vývoja má IMHO najvčší vplyv kvalitné IDE hlavne intelli sense,
IMHO, ale to je omyl, jestli umis psat, ten  intelli sense jen brzdi prace. Python ma vyhodu v lakonicnosti syntaxu, konstrukce.

Neviem ako v iných IDE ale vo Visual Studiu musíš vybrať našepkávaný kód enterom (tabulátorom v prípade code snippets) takže máš na výber či chceš písať alebo si ich pridáš výberom z ponuky našeptávača, a našeptávač ťa nebrzdí všetko môžeš kľudne písať aj ručne. Našptávač je užitočný hlavne vtedy keď nepoznáš presné názvy identifikátorov, nemusíš stále pozerať do dokumentácie, ale môžeš rovno písať kód. Pochybujem že sa nájde vývojár ktorý pozná rozhrania tisícok tried naspamať. Aj python obsahuje tisícky rôznych knižníc a bez našeptávača musí vývojár stále pozerať do dokumentácie.

Btw Code snippets sú tiež užitočná vec. Stačí napísať pár písmen a IDE mi vygeneruje kód, užitočné napr u cyklov, blokov try catch.

O odsadzovanie sa vôbec nemusím starať IDE odsadzuje automaticky.

Alebo napíšem názov neexistujúcej metódy, vedla nej sa objavý šípka že či ju nechcem vygenerovať, a takýmto spôsobom dokáže vygenerovať aj celé tiredy. Ďalej sa triedy a rozhrania dajú generovať tak že si ich nakreslím do diagramu a Visual Studio mi podľa nich vygeneruje príslušné zdrojové súbory.

Citace
Skúšal som akurát Komodo IDE.
Existuje spoustu jinych, lepsich. PyCharm, Wing etc, ktere umi skoro vsechno co jsi psal vyss.

Dík za info, určite vyskúšam.