issues
search
KATO-Hiro
/
Daily-hit
Wants to make & prototype list inspired by https://masuidrive.tadalist.com/lists/1941485/public
MIT License
0
stars
0
forks
source link
スライド「カーネルコードの歩き方 ‐ ソースコードを読むための勘所を知る」を読んで
#1267
Closed
KATO-Hiro
closed
1 year ago
KATO-Hiro
commented
1 year ago
要約
汎用的なあらゆるソースコードの読み方、とくに大きめのソースコードの読み方
明確、かつ、小さめの目標を立てる
Linuxカーネルは3000万行以上
2023年2月〜4月のバージョン間だけでもコミット数が1.5万件以上、約5万行が追加されている
順番に読むのは非現実的
例: ある機能のオプションを使ったときのコードを知りたい = 1000行くらいなら対処可能なレベルに
ツールを駆使して、読む必要がある範囲を減らす
grepをかけて、あたりをつける
二分探索的に範囲を絞る
実際に動かしてみる
特定のバージョンのソースコードを見るのは大変 & 面倒なので、実機で確認
動かせば読まなくても分かる、動かした方が早いこともよくある
前提知識を適宜身につける
コードリーディングは経験値がモノをいう
読まずにできること、読まない方が早いこともよくある
どこで読み始めるか
どこまでツールに任せて、実際にはどこから読むか?
最適解はないので、考えるうる選択肢から、フィーリングで楽できそうなものから順番に適宜試す
最初は回数をこなす >> 最善を求める
感想
有名な強強エンジニアが巨大なコードベースにどのようにアプローチされているかを知ることができた
OSSをコードリーディングする本に書かれていたことと共通している
前提としてコードを読む必要がある、という思い込みがあったが、動かして分かること・動かした方が早いという視点が目から鱗
ツールを活用して読む範囲を絞る
経験値を積む + 楽そうな方針を順番に試すのが大事
Keep
+
Problem
+
Try
+
出典
https://techfeed.io/entries/64c344b2704ddd0bc8f1b8a6
要約
感想
Keep
+
Problem
+
Try
+
出典
https://techfeed.io/entries/64c344b2704ddd0bc8f1b8a6