it-swarm-eu.dev

Kam chodíte číst dobré příklady zdrojového kódu?

Slyšel jsem, že pár lidí říká, že jedním z nejlepších způsobů, jak zlepšit svou schopnost kódování, je přečíst si kód jiného a porozumět mu. Moje otázka, jako relativně nového programátora, kde najdu dobré příklady zdrojového kódu, které nejsou příliš daleko nad hlavou?

53
Jesse McCulloch

Projekty s otevřeným zdrojovým kódem můžete procházet na webech úložišť, jako je GitHub , Codeplex , Google Code nebo BitBucket . Najdete projekty různých úrovní složitosti, takže byste měli být schopni najít něco, co vás oba zajímá a nejdřív vás nejdou příliš nad hlavu.

Další možností jsou příspěvky blogu od Scotta Hanselmana Týdenní zdrojový kód .

Doporučuji začít se zavedeným, aktivním projektem, aby se snížila pravděpodobnost, že se začne číst kód, který dosud nebyl používán a kontrolován. V ideálním případě najděte něco, co vás zajímá a které můžete použít. Používání aplikace vám pomůže porozumět zdrojovému kódu. Další výhodou výběru projektu s otevřeným zdrojovým kódem je, že můžete přispět některými opravami nebo funkcemi, které vám pomohou udělat zajímavější čtení kódu.

Zírat na spoustu kódu někoho jiného může být zastrašující, takže začněte s funkcí main (nebo ekvivalentní) a projděte se odtamtud.

30
Adam Lear

Velmi málo lidí píše při prvním pokusu dobrý zdrojový kód. Dobrý zdrojový kód je často vytvářen řadou revizí. Pokud tedy najdete zdrojový kód, který byl několikrát recenzován a několikrát opraven, pravděpodobně jste na lepším místě. Některé projekty s otevřeným zdrojovým kódem (a některé z nich) jsou zvláště dobře přezkoumány. Kód pocházející od společností, které mají povinné cykly kontroly (např. Google, ale existuje mnoho dalších), se může stát fakturou.

Jak již bylo řečeno, nejsem si jistý, že vaším cílem by mělo být nalezení „skvělého kódu“. Mělo by se jednat o různé styly kódu (jako například ty, které napsali vaši spolupracovníci), a naučit se o něm identifikovat dobré a špatné body. Čím více špatných bodů identifikujete, tím více se budete snažit vylepšit svůj kód a vědět jak.

Zejména se domnívám, že velmi dobrým přístupem k získání pocitu dobrého kódu je použití interaktivního debuggeru k trasování složitým kódem podle řetězců vyvolání. Například jděte do jednoho z hlavních souborů vaší společnosti, vložte bod zlomu a začněte z nich vymýšlet věci.

Poté, co se několikrát dostanete dezorientací 100 řádkovými funkcemi s deseti úrovněmi odsazení a závislostí na globálech, a několikrát, jak prolétnete dobře rozloženým kódem, zlepšíte své vlastní programování.

10
Uri

Místo nalezení skvělých kódů, podívejte se do Všeobecných programovacích knih.

např. Kód dokončen, psaní solidního kódu, návrhové vzory (jsem si jistý, že v této otázce a odpovědi na tomto webu je spousta dalších knih)

Tyto knihy popisují filozofii, která je považována za dobrý kód. Čitelnost, výkon, udržovatelnost, detekce chyb atd.

Což slouží ještě lepším zdrojům a efektivnější než pokusit se zjistit, čeho se autor snaží dosáhnout.

P.s. Dobrý softwarový design je to, na co byste se měli také dívat. Což by bylo těžké poznat pouze z pozorování kódů, vzhledem k tomu, že projekt je dostatečně velký.

4
Zekta Chan

Zjistil jsem, že kód knihoven, které jsou dodávány s vybraným programovacím jazykem, je často dobrým začátkem v tom, co se považuje za osvědčené postupy a dobrý styl kódování.

Ačkoli nechcete začít s místy, jako jsou třídicí algoritmy nebo složité třídy kontejnerů.

Dalším místem pro zajímavé informace o psaní kódu je Project Euler ( http://projecteuler.net/ ). Mírná nevýhoda: Nejprve musíte problém vyřešit, abyste získali přístup na fórum, kde ostatní zveřejnili svá řešení (zajímavé výzvy pro všechny úrovně zkušeností). Až to jednou uděláte, najdete příklady téměř všech hlavních programovacích jazyků. A protože jste již tento problém vyřešili, pomůže vám to porozumět kódu jiných národů. Můžete získat kód jazyků, které ještě nevíte, ale mohou být zajímavé.

3
thorsten müller

Opravdu mě bavilo čtení Krásný kód . Má krátké, ale velmi pěkné příklady kódu s podrobným vysvětlením.

... přední počítačoví vědci nabízejí případové studie, které odhalí, jak našli neobvyklá, pečlivě navržená řešení pro vysoce profilové projekty. Budete se moci podívat přes rameno hlavních odborníků na kódování a design, abyste viděli problémy jejich očima.

... Autoři přemýšlejí nahlas, když procházejí architekturou svého projektu, kompromisy provedenými při jeho konstrukci a kdy bylo důležité porušit pravidla.

Tato kniha obsahuje 33 kapitol, které přispěli Brian Kernighan, KarlFogel, Jon Bentley, Tim Bray, Elliotte Rusty Harold, Michael Feathers, Alberto Savoia, Charles Petzold, Douglas Crockford, Henry S. Warren, Jr., Ashish Gulhati, Lincoln Stein, Jim Kent , Jack Dongarra a PiotrLuszczek, Adam Kolawa, Greg Kroah-Hartman, Diomidis Spinellis, Andrew Kuchling, Travis E. Oliphant, Ronald Mak, Rogerio Atem de Carvalho a Rafael Monnerat, Bryan Cantrill, Jeff Dean a Sanjay Ghemawat, SimonPeytvig William, Kent Otte a Douglas C. Schmidt, AndrewPatzer, Andreas Zeller, Yukihiro Matsumoto, Arun Mehta, TV Raman, Laura Wingerd a Christopher Seiwald a Brian Hayes ...

3
pyvi