関連記事: https://woshidan.hatenablog.com/entry/2019/09/28/192147
紙版との差分について: https://woshidan.hatenablog.com/entry/2019/09/28/191902
BOOTHでの電子版: https://booth.pm/ja/items/1584921
■■ 誰のためのどういう本なの?
・C言語のコンパイルやリンカがどうしてもよくわからずgccでコンパイルして動かしながら実装していくのをあきらめ、シャーペンで紙の上にプログラミングしていたり
・初めてインターンに行ってgemやBundlerに出会ったとき、「なんか知らない人がいっぱい出てきたな…?」とめちゃくちゃ焦ったり
プログラミングどころか、それ以前のところでプログラミングについて焦ったり諦めたりしそうな人、初心者にプログラミングを教える人を対象とした、各種チュートリアルなどの副読本です。
■■■ プログラミング初心者がもやもやしがちな「実行環境」に関連する話題を扱っています
さて、そういう昔の自分みたいなプログラミングの初心者がつまずくプログラミング以前のポイントといえばプログラミングの実行環境の構築ではないでしょうか。
というわけで、この本ではプログラムを実行するために必要な要素を扱うことにしました。
まず、プログラムを実行するためにはプログラムをコンピュータが扱える形に直したり、開発者が書いたプログラムを解釈・実行するプログラムが必要です。
また、我々が書いたプログラムはそれだけで動くわけではなく、他人の書いたプログラムをまとめたライブラリを揃えたり、設定ファイルやデータベースなどに入ったデータを必要とすることも多いでしょう。
ということで、他にもこうした実行環境を構成する要素はあるでしょうが(たとえばIDEやOSとか)、本書では上記の範囲に関連する話題を扱うことにします。
■■■ ふいんき把握用にかんたんなコード例は多少ありますが、背景知識が中心です
自分自身の経験からチュートリアルや既にあるドキュメントによってコマンド自体はわかっても、そのコマンドがどういったことをしているかわからず不安になることが多かったです。
そこで、本書ではそういった背景知識となるような部分を説明していくことにしました。
そのため、実行環境に関連する話題を扱うといいつつ、ツールの細かいコマンドの一覧やオプションについては扱っていません。そうした具体的な構築手順は各ツールのドキュメントやチュートリアルに任せることにしています。
雰囲気をつかめる程度のかんたんなコード例はある程度載せていますが、 「コマンドは書いてあるのを叩けばいいんだろうけど、こうしたツールがどういうことをしているのかわからずもやもやする」 という人のための本です。