Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Čtvrtkon #1 - Čistý kód
Search
Václav Novotný
June 07, 2013
Technology
62
0
Share
Čtvrtkon #1 - Čistý kód
Václav Novotný
June 07, 2013
More Decks by Václav Novotný
See All by Václav Novotný
Čtvrtkon 06.06. 2013 - Composer
ven
1
730
Čtvrtkon #1 - Refactoring
ven
0
46
Čtvrtkon #3 - Git
ven
0
31
Other Decks in Technology
See All in Technology
AIエージェントの権限管理 2: データ基盤の Fine grained access control 編
ren8k
0
120
こんなアーキテクチャ図はいやだ / Anti-pattern in AWS Architecture Diagrams
naospon
1
400
レビューしきれない?それは「全て人力でのレビュー」だからではないでしょうか
amixedcolor
0
280
LLM時代の検索アーキテクチャと技術的意思決定
shibuiwilliam
2
840
Azure Lifecycle with Copilot CLI
torumakabe
3
990
目的ファーストのハーネス設計 ~ハーネスの変更容易性を高めるための優先順位~
gotalab555
7
1.9k
JOAI2026講評会資料(近藤佐介)
element138
1
160
Standards et agents IA : un tour d’horizon de MCP, A2A, ADK et plus encore
glaforge
0
110
みんなの「データ活用」を支えるストレージ担当から持ち込むAWS活用/コミュニティー設計TIPS 10選~「作れる」より、「続けられる」設計へ~
yoshiki0705
0
210
Revisiting [CLS] and Patch Token Interaction in Vision Transformers
yu4u
0
320
AWS Agent Registry の基礎・概要を理解する/aws-agent-registry-intro
ren8k
2
340
扱える不確実性を増やしていく - スタートアップEMが考える「任せ方」
kadoppe
0
260
Featured
See All Featured
Navigating Algorithm Shifts & AI Overviews - #SMXNext
aleyda
1
1.2k
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
Heart Work Chapter 1 - Part 1
lfama
PRO
5
35k
Build your cross-platform service in a week with App Engine
jlugia
234
18k
jQuery: Nuts, Bolts and Bling
dougneiner
66
8.4k
Joys of Absence: A Defence of Solitary Play
codingconduct
1
350
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.9k
The Anti-SEO Checklist Checklist. Pubcon Cyber Week
ryanjones
0
120
The Language of Interfaces
destraynor
162
26k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
170
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
69
38k
Transcript
Čistý kód Václav Novotný, 6. září 2012, Čtvrtkon #1 (http://www.ctvrtkon.cz)
Definice čistého kódu Nečekejte exaktní definici.
Co tedy je čistý kód? Je to kód psaný někým,
kdo není prase je pečlivý.
http://www.osnews.com/story/19266/WTFs_m
Proč být pečlivý? Protože je to to nejlepší, co pro
sebe jako programátora můžete udělat. • méně starostí • méně stresu • méně nadávek (na vás)
A nejen pro sebe... S pečlivým programátorem je radost spolupracovat
:)
Proč je čistota kódu důležitá? Fatálně ovlivňuje cenu změn a
oprav v programu. Závažnost roste s počtem lidí v teamu
Aspekty čistého kódu
největší problém v historii programování Pojmenovávání
Pojmenovávání • vybírejte srozumitelné názvy • název musí odpovídat skutečnosti
• berte názvy z reálného světa • nemaťte kolegy
Rozklad odpovědností méně je více
Rozklad odpovědností • pište krátké metody • dělejte v metodě
pouze jednu věc • pracujte v jedné vrstvě abstrakce
Komentáře hodnotné komentáře lidé čtou
Komentáře • komentuje vnější chování • komentáře musí být aktuální
• objasňujte možné WTF • standardizovaný zápis • @todo
Formátování kódu důležitá banalita
Formátování kódu • dohodněte si konvence • automatická kontrola -
PHP CodeSniffer
Zpracování chyb občas to někde bouchne
Zpracování chyb • piště defenzivně • používejte výjimky • nečekejte,
že se "to" nestane
Testování testování je nutnost
Testování • nějaký test lepší než žádný test (nenechte se
ale ukolébat!) • automatizujte testy • používejte testovací frameworky • xUnit (PHPUnit)
Refactoring průběžné vylešování kvality
Refactoring • nedílná součást vývoje • nikdy nepřidávejte novou funkcionalitu
• bez testů nesrovnatelně obtížnější
Dotazy?
Děkuji za pozornost @VaclavNovotny