Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Čtvrtkon #1 - Čistý kód
Search
Václav Novotný
June 07, 2013
Technology
66
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Č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
48
Čtvrtkon #3 - Git
ven
0
31
Other Decks in Technology
See All in Technology
ScotSecure West 2026 - Glasgow
raybugg
0
150
俺の仕事は AIに奪われないし、たぶんその BIも要らない
hikaruri
0
540
C#コードの結合を可視化する Roslyn解析による設計改善と リファクタリング判断
dora56
0
330
白金鉱業Meetup Vol.25 アウトカムが二値のデータに対するCausal Impact
brainpadpr
0
270
ユーザー価値を届け続けるためにウォンテッドリーが大切にしている文化
kotaminato
0
190
今話題のAI「Jev」って何? 宇宙最速で学ぶ会
minorun365
PRO
30
18k
AI時代の「技術的負債」の変質ー概念の終焉と再解釈、エージェントと共に向かう先
nwiizo
1
3.1k
エージェントはローカル、検証はMicroVM — Lambda MicroVMsでつくるServerless CI
fujioka6789
3
660
The Knowledge Spine: A Machine-Executable Ontology for Governed Marketing Activation
vananth22
0
120
AIを活用するために決めた "やらないこと" - 価値に注目する / Not betting on AI
soudai
PRO
3
580
フルカイテン株式会社 エンジニア向け採用資料
fullkaiten
0
12k
30座EKS, 180次升級淬煉的EKS Upgrade Skill 的歷程
eric8230
0
210
Featured
See All Featured
Leveraging LLMs for student feedback in introductory data science courses - posit::conf(2025)
minecr
1
400
Designing for humans not robots
tammielis
254
26k
The Cost Of JavaScript in 2023
addyosmani
55
10k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
35
2.8k
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
1
530
Art, The Web, and Tiny UX
lynnandtonic
304
22k
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
300
RailsConf 2023
tenderlove
30
1.6k
Large-scale JavaScript Application Architecture
addyosmani
515
110k
Mind Mapping
helmedeiros
1
370
What's in a price? How to price your products and services
michaelherold
247
13k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
4.2k
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