Published
Kilo
Kilo main() と
イベントループ
起動から入力、状態変更、再描画まで。22行のコードを、構造図・時系列・設計意図の3方向から読み解きます。
文法を順番に暗記するのではなく、実際のコードが、なぜその形で動くのかを読み解く。小さなプログラムから設計の考え方までつなぐ学習サイトです。
> このプログラムは、何を繰り返している?
最初の題材は、約1000行で作られた小さなテキストエディタKilo。入口の main() からプログラム全体の呼吸を読みます。
main() と起動から入力、状態変更、再描画まで。22行のコードを、構造図・時系列・設計意図の3方向から読み解きます。
struct editorConfig とグローバル変数 E から、状態管理の入口を読みます。
キー入力から行データの変更まで、関数呼び出しを縦にたどります。
「分からない単語を全部調べる」より先に、コードが作る関係と時間の流れをつかみます。
ファイルの先頭から読まず、入口・反復・状態の置き場所を見つけ、プログラム全体の骨格を先に作ります。
「aを押す」など具体的な出来事を選び、入力がどの関数を通り、いつ画面に現れるかを時間順に追います。
Whatだけで終わらず、How、Why、背景にあるCS概念、変更時のReview観点まで理解を広げます。
小さな題材を深く読むことから始め、言語・UI・設計・AIによるコード変更のレビューへつなげます。
Kiloを題材に、イベントループ・状態・メモリ・端末I/Oを読む。
HTML、CSS、JavaScriptが、入力・状態・表示をどう分担するか読む。
AIが変更したコードを、意図・影響範囲・テストの観点からレビューする。
読めるコードが増えると、書けるコードだけでなく、直せるコード、説明できるコードも増えていく。
Kilo Deep Reading #01 を始める