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
コードをきれいに書く基本のキ
Search
huwamoko6210
June 29, 2019
Programming
190
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
コードをきれいに書く基本のキ
コードをきれいに書く上で最低限覚えておいた方がいいことまとめ。
huwamoko6210
June 29, 2019
Transcript
17 slides
新卒一年目の コードをきれいに書く基本のキ 6/29 (若手)エンジニアもくもく会 vol.14 @CrowdWorks
学生時代 コードのきれいさなんて気にしたこともなかった
個人開発 お仕事 ・自分が読めればよし ・他の人も読む ・とりあえず動けばよし ・安全なコード 技術より先にきれいなコードが書けることが大前提!
コードをきれいに書く基本のキ 一貫性 可読性 型指定 役割
class hoge{ } class hoge { } 「正しさ」よりも一貫性を重視する
•一貫性のあるコードは正しいコードよりも重要。 ーチーム全員が一貫したスタイルを持つ ー変数名の書き方も同じ(ex.キャメルケース、スネークケース) ー基本的にはコード規約をまず守ろう! (PHPはPSR)
コードをきれいに書く基本のキ 一貫性 型指定 役割 可読性
time_str += (hour >= 12) ? "pm" : "am"; if(hour
>= 12){ time_str += "pm"; }else{ time_str += "am"; } 理解が早くできるコードはどっち?
•理解が早くできるコードを優先する。 ーネストが深くならないように注意する ーif/else文は直観的に理解しやすい(場合による) ー早く理解できるコードは良いコード
コードをきれいに書く基本のキ 一貫性 型指定 役割 可読性
function addScore($score, $totalScore) { return $totalScore + $score; } どこが間違ってるでしょうか?
型指定をしていない!!!!
型指定はきっちりと function addScore(int $score, int $totalScore): int { return $totalScore
+ $score; }
コードをきれいに書く基本のキ 一貫性 型指定 役割 可読性
function inputScore() { //スコアの入力を行う } function addScore() { //スコアを加算する }
function outputScore() { //スコアを出力する } 関数の役割を独立させる
•関数に役割を持たせ、独立させる ー分割したものを関数にして、役割を持たせる ー目的に従ってコードを分割する。 ーそれぞれ依存せず、独立した関数やクラスにすること
参 考 ・ 出 典
ご清聴ありがとうございました!
Other Decks in Programming
See All in Programming
プロジェクトコードをキレイキレイしよう!暗黙的な参照を読み解く静的解析
ostk0069
0
210
あなたの await、OS まで届いてる? strace で覗く JavaScript の非同期
hasutosasaki
1
2.4k
どうしても Eloquent でリポジトリパターンをやりたいんだ #phpcon_niigata / phpcon-niigata-2026
shogogg
0
140
TS 7.0 で baseUrl が使えなくなった今、パスエイリアスをどうするか
bicstone
2
640
Snowflake Openflow Connector利用の勘所 / 20261024developersio2026tokyo-snowflake-openflow
kasacchiful
PRO
0
340
全ての永続トークンを、生まれる前に消し去りたい!
sylph01
3
1.7k
小さなアプリを作って公開するまで
onozaty
0
170
例外からRich Errorsまで Kotlinエラーハンドリングの進化を読み解く
shiita0903
0
130
Vapor Mode でアクセシビリティは 壊れないか検証した話
fuqda
1
350
ビジネスロジックを堅牢に~Scala 3のドメインプリミティブ~
j5ik2o
0
160
Materialが消えた日 〜真っ白なFlutterキャンバスにRenderObjectで絵を描く〜
umigishiaoi
0
160
PyConTW 2026 - AI Coding 不只是工具升級, 區域醫院醫療資訊系統協作開發與資訊團隊轉型實踐
cclai999
0
250
Featured
See All Featured
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
750
Bash Introduction
62gerente
615
220k
Joys of Absence: A Defence of Solitary Play
codingconduct
1
570
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
2k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
123
22k
Unsuck your backbone
ammeep
672
58k
Faster Mobile Websites
deanohume
310
32k
Typedesign – Prime Four
hannesfritz
42
3.2k
The SEO identity crisis: Don't let AI make you average
varn
0
630
Large-scale JavaScript Application Architecture
addyosmani
516
110k
Balancing Empowerment & Direction
lara
6
1.4k
Believing is Seeing
oripsolob
1
280