it-swarm-eu.dev

Jaké jsou klíčové body kódu Complete?

Slyšel jsem, že mnoho lidí zmiňuje kód Complete jako knihu, kterou si zaslouží čtení. Bohužel jsem tak zaneprázdněn, že nemám čas si ho přečíst, takže mi může někdo říct, jaké jsou hlavní body knihy?

74
Casebash

Code Complete je o softwarovém zpracování; je to kniha pokročilých začátečníků/středně pokročilých, napsaná pro pracovní programátory, ale stále by bylo velmi užitečné pro někoho, kdo programoval alespoň rok.

Klíčové body Code Complete (2. vydání) jsou tedy pěkně shrnuty v kapitole 34, Témata v softwarovém řemesle. Jak je parafrázováno z mých poznámek:

  1. Conquer Complexity : Snižte kognitivní zatížení vaší mysli disciplínou, konvencemi a abstrakcí.
  2. Vyberte si svůj proces : buďte si vědomi kvality od začátku (požadavky) do konce (nasazení) a dále (údržba).
  3. Zápis programů pro lidi nejprve, počítače druhý : čitelnost kódu je nesmírně důležitá pro srozumitelnost, schopnost kontroly, chybovost, korekce chyb, modifikovatelnost a výsledný čas a kvalita vývoje.
  4. Program do vašeho jazyka, ne v něm : pomyslete na co? a proč? před Jak?
  5. Soustřeďte svou pozornost pomocí konvencí : konvence řídí složitost poskytováním struktury tam, kde je to potřeba, takže konečný zdroj - vaše pozornost - lze efektivně využít .
  6. Program z hlediska problémové oblasti : práce na nejvyšší možné úrovni abstrakce; kód nejvyšší úrovně by měl popisovat problém, který je řešen. Rozlište úroveň operačního systému, úroveň programovacího jazyka, implementační struktury na nízké úrovni, termíny problémové domény na nízké úrovni a konečně termíny problémové domény na vysoké úrovni, které by uživateli (ne-kodéru) dávaly úplný smysl.
  7. Dávejte pozor na padající kameny : protože programování slučuje umění a vědu, je nezbytný dobrý úsudek, včetně varovných varovných signálů.
  8. Iterovat, opakovaně, znovu a znovu : opakovat požadavky, design, odhady, kód, ladění kódu.
  9. Thou Shender Render Software a Religion Asunder : být eklektický a ochotný experimentovat. Nebuď neflexibilní fanatik, vylučuje zvědavost a učení. Nad rámec toho, že máte v paletě nástrojů jen kladivo.

Ale nejdůležitější vzlety jsou v kapitole 33 osobní charakter : jakmile se vědomě snažíte vylepšit jako kodér, můžete a budete chtít. Nejrychlejším způsobem, jak toho dosáhnout, je zaujmout postoje mistrů kodérů (pokora, zvědavost, intelektuální poctivost, disciplína, kreativita) a zároveň cvičit jejich návyky (v knize je uvedeno mnoho dobrých návyků, např. výběr dobrých názvů proměnných/hodnot).

Kniha také objasňuje, že je rozdíl mezi průměrem a vynikajícím v softwaru obrovský ; tato skutečnost sama o sobě by měla vést svědomitého kodéra, aby se zlepšil.

To je ten krátký; dlouhá verze je v knize. :) Pokud chcete více podrobností, mohu vám také poslat své ne tak dlouhé a nepříliš krátké poznámky. Kniha je však jistě dobře vynakládaná na peníze a čas, i když styl psaní je občas únavný.

Po dokončení kódu bych velmi doporučil Pragmatický programátor . Je to pro středně pokročilé programátory, pěkně napsané a skvělou kombinaci vysoké, střední a nízké úrovně poradenství.

86
limist

Je to mezilehlá kniha, potpourri osvědčených postupů vývoje softwaru.

Pokud jste začínajícím programátorem, nebudete rozumět velkému množství materiálu a pokud máte zkušenosti, kniha potvrdí pouze to, co už víte. Kniha by proto mohla mít největší hodnotu pro středně pokročilé programátory, kteří již mají trochu znalosti programování, ale potřebují knihu osvědčených postupů, aby ji všechny spojili dohromady.

Několik stránek je věnováno tomu, jak formátovat bloky kódu a relativní přednosti každého přístupu. Osobně si myslím, že velká debata o tom, kam dát své složené závorky, skončila. (nebo je to?)

18
Robert Harvey