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
0
60
Čtvrtkon #1 - Čistý kód
Václav Novotný
June 07, 2013
Tweet
Share
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
42
Čtvrtkon #3 - Git
ven
0
28
Other Decks in Technology
See All in Technology
いま注目のAIエージェントを作ってみよう
supermarimobros
0
350
S3アクセス制御の設計ポイント
tommy0124
3
200
roppongirb_20250911
igaiga
1
240
20250913_JAWS_sysad_kobe
takuyay0ne
2
250
20250912_RPALT_データを集める→とっ散らかる問題_Obsidian紹介
ratsbane666
0
100
品質視点から考える組織デザイン/Organizational Design from Quality
mii3king
0
210
下手な強制、ダメ!絶対! 「ガードレール」を「檻」にさせない"ガバナンス"の取り方とは?
tsukaman
2
460
AIエージェント開発用SDKとローカルLLMをLINE Botと組み合わせてみた / LINEを使ったLT大会 #14
you
PRO
0
130
OCI Oracle Database Services新機能アップデート(2025/06-2025/08)
oracle4engineer
PRO
0
180
💡Ruby 川辺で灯すPicoRubyからの光
bash0c7
0
120
Firestore → Spanner 移行 を成功させた段階的移行プロセス
athug
1
500
IoT x エッジAI - リアルタイ ムAI活用のPoCを今すぐ始め る方法 -
niizawat
0
110
Featured
See All Featured
Being A Developer After 40
akosma
90
590k
KATA
mclloyd
32
14k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
31
2.2k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
18
1.1k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
229
22k
Mobile First: as difficult as doing things right
swwweet
224
9.9k
Context Engineering - Making Every Token Count
addyosmani
3
58
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
33
2.4k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
50k
GraphQLの誤解/rethinking-graphql
sonatard
72
11k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
36
2.5k
Documentation Writing (for coders)
carmenintech
74
5k
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