Hodnotenie:
Kniha poskytuje podrobný prehľad kompromisov v softvérovom inžinierstve, pričom zdôrazňuje dôležitosť pochopenia alternatív a reálnych dôsledkov rozhodnutí o návrhu. Hoci ponúka cenné postrehy a nabáda k pragmatickému prístupu, získala zmiešané recenzie, pokiaľ ide o kvalitu jej písania a relevantnosť pre rôzne úrovne skúseností.
Výhody:⬤ Ponúka cenné poznatky o kompromisoch a realistických scenároch v softvérovom inžinierstve.
⬤ Podporuje kritické myslenie o tom, kedy treba porušiť zaužívané pravidlá, ako je napríklad prijateľné používanie duplikácie kódu.
⬤ Obsahuje praktické príklady použiteľné v reálnych situáciách.
⬤ Zaoberá sa celým radom tém relevantných pre softvérových inžinierov na rôznych úrovniach.
⬤ Podporuje vyvážené chápanie osvedčených postupov v porovnaní so skutočnou implementáciou.
⬤ Niektoré kapitoly sú príliš zamerané na triviálne témy špecifické pre Javu, čo nemusí byť pre skúsených vývojárov pútavé.
⬤ Kolísavá kvalita písania, pričom niektoré časti sú zbytočne rozvláčne alebo zjednodušené.
⬤ Chýba hĺbkový prieskum zložitých reálnych scenárov a odkazy na ďalšie čítanie.
⬤ Niektoré príklady sa môžu zdať príliš vymyslené alebo zjavné, čo obmedzuje ich praktickú použiteľnosť.
(na základe 5 čitateľských recenzií)
Software Mistakes and Tradeoffs: How to Make Good Programming Decisions
Optimalizujte rozhodnutia, ktoré určujú váš kód, preskúmaním bežných chýb a zámerných kompromisov, ktoré robia odborní vývojári.
V knihe Chyby a kompromisy v softvéri sa naučíte, ako:
Uvažovať o svojich systémoch, aby ste mohli prijímať intuitívne a lepšie rozhodnutia o návrhu.
Pochopiť dôsledky a ako vyvážiť kompromisy.
Vybrať správnu knižnicu pre váš problém.
Dôkladne analyzovať všetky závislosti vašej služby.
Pochopiť sémantiku doručovania a jej vplyv na distribuovanú architektúru.
Navrhnúť a vykonať výkonnostné testy na odhalenie horúcich ciest kódu a overenie SLA systému.
Zistiť a optimalizovať horúce cesty v kóde s cieľom zamerať optimalizačné úsilie na hlavné príčiny.
Rozhodnite o vhodnom dátovom modeli pre spracovanie dátumu/času, aby ste sa vyhli bežným (ale jemným) chybám.
Uvažujte o kompatibilite a verziách, aby ste predišli neočakávaným problémom pre klientov API.
Pochopte tesné/voľné prepojenie a jeho vplyv na koordináciu práce medzi tímami.
Vyjasnite si požiadavky, kým nebudú presné, ľahko implementovateľné a ľahko testovateľné.
Optimalizujte svoje rozhrania API pre priateľský používateľský zážitok.
Výkonnosť kódu verzus jednoduchosť. Rýchlosť dodania verzus duplicita. Flexibilita verzus udržiavateľnosť - každé rozhodnutie, ktoré robíte v softvérovom inžinierstve, zahŕňa vyvažovanie kompromisov. V knihe Softvérové chyby a kompromisy sa poučíte z nákladných chýb, s ktorými sa Tomasz Lelek a Jon Skeet stretli počas svojej pôsobivej kariéry. Preskúmate reálne scenáre, v ktorých zlé pochopenie kompromisov viedlo k veľkým problémom, aby ste mohli predísť vlastným chybám premyslenejším prístupom k rozhodovaniu.
Dozviete sa, ako duplicita kódu ovplyvňuje prepojenie a rýchlosť vývoja vašich systémov a ako jednoducho znejúce požiadavky môžu mať skryté nuansy s ohľadom na informácie o dátume a čase. Zistite, ako efektívne zúžiť rozsah optimalizácie podľa Paretových princípov 80/20 a zabezpečiť konzistenciu vašich distribuovaných systémov. Čoskoro si vybudujete takú vedomostnú základňu, aká sa dá získať len na základe dlhoročných skúseností.
Zakúpenie tlačenej knihy zahŕňa bezplatnú elektronickú knihu vo formátoch PDF, Kindle a ePub od Manning Publications.
O technológiách: Kniha je určená pre všetkých používateľov, ktorí majú záujem o prácu s počítačom.
Každý krok v softvérovom projekte zahŕňa kompromisy. Keď vyvažujete rýchlosť, bezpečnosť, náklady, čas dodania, funkcie a ďalšie, rozumné rozhodnutia o návrhu sa môžu v produkcii ukázať ako problematické. Odborné postrehy a príbehy z vojny v tejto knihe vám pomôžu robiť správne rozhodnutia pri navrhovaní a vytváraní aplikácií.
O knihe.
Kniha Chyby a kompromisy v softvéri skúma skutočné scenáre, v ktorých boli prijaté nesprávne kompromisné rozhodnutia, a objasňuje, čo sa dalo urobiť inak. Autori Tomasz Lelek a Jon Skeet sa v nej delia o múdrosť založenú na desaťročiach skúseností z oblasti softvérového inžinierstva vrátane niektorých rozkošne poučných chýb. Oceníte konkrétne tipy a praktické techniky, ktoré sprevádzajú každý príklad, spolu s evergreenovými vzormi, ktoré zmenia váš prístup k ďalším projektom.
Čo je vo vnútri.
Ako systematicky uvažovať o svojom softvéri.
Ako si vybrať nástroje, knižnice a frameworky.
Ako úzke a voľné prepojenie ovplyvňuje koordináciu tímu.
Požiadavky, ktoré sú presné, ľahko implementovateľné a ľahko testovateľné.
O čitateľovi.
Pre vývojárov a architektov na strednej a vyššej úrovni, ktorí rozhodujú o návrhu a implementácii softvéru.
O autorovi: Autorka sa zaoberá problematikou softvéru a jeho tvorby.
Tomasz Lelek denne pracuje so širokou škálou produkčných služieb, architektúr a jazykov JVM. Inžinier spoločnosti Google a autor knihy C# in Depth Jon Skeet je známy svojimi mnohými praktickými príspevkami na Stack Overflow.
Obsah.
1 Úvod.
2 Duplikácia kódu nie je vždy zlá: Duplikácia kódu verzus flexibilita.
3 Výnimky vs. iné vzory spracovania chýb v kóde.
4 Vyváženie flexibility a zložitosti.
5 Predčasná optimalizácia vs. optimalizácia horúcou cestou: Rozhodnutia, ktoré ovplyvňujú výkonnosť kódu.
6 Jednoduchosť verzus náklady na údržbu vášho API.
7 Efektívna práca s údajmi o dátume a čase.
8 Využívanie lokality údajov a pamäte vašich strojov.
9 Knižnice tretích strán: Knižnice, ktoré používate, sa stávajú vaším kódom.
10 Konzistentnosť a atomicita v distribuovaných systémoch.
11 Sémantika doručovania v distribuovaných systémoch.
12 Správa verzií a kompatibility.
13 Aktualizácia trendov verzus náklady na údržbu vášho kódu.