投稿元:
レビューを見る
0 はじめに
Djangoの本家チュートリアルをChpter1~7までやり終えて、「で?」となったので本書を購入。
目次を見てワクワクしてしまった方、「一人でもサクッと会員制Webアプリを作って運用まで行う」という裏設定にワクワクしてしまった方、きっと本書に運命を感じることでしょう。
だが、一度俯瞰して見てほしい。
本書がなぜ低評価なのか。
1 免責
このレビューは主にKindle版について言及しています。紙は未読ですが、構成は同等と察します。
以下、個人差があるかと思います。
2 本書が低評価たらしめる理由
技術書のセオリーを逸脱し、読みづらいさが散見する。
以下、4つの読みづらさの要因をあげます。
2.1 配色 ★☆☆☆☆
参照先がカラフルに色付けされている。(Kindle版)
リストがブルー、表がグリーン、図がラベンダーといった具合。
完全に悪目立ちしており、ぼくの読書体験にはストレスでした。(個人差)
Kindle Paperwhiteで読むことで、幾分緩和されます。
(例)データベーステーブル間のリレーション(関連付け)もモデルクラスで表現できます。 リスト 3.17 ❶ ではフィールドクラス(ForeignKey)を使って・・・【中略】
2.2 参照 ★☆☆☆☆
文(センテンス)の途中に参照先が記載されている。
参照先の図や表が本文から遠く、思考が中断され、解説に集中しづらい状況に陥ります。
(リストが前のページにあったり、表が次のページにあったり。)
(例)ForeignKeyの場合、1対多の関係を表現することができ( 表 3.12)、 この例だと1Userに対して・・・【中略】
2.3 図、表 ★☆☆☆☆
表が機能していない、むしろ理解の妨げになる。
該当の解説が重要であることは理解できるのですが、表を見ても理解しずらく、思考がしばしば中断されます。
(例)リレーションを表すフィールドクラスでは「on_delete」オプションが必須となります( 表 3.13)。このオプションは・・・【中略】・・・リスト 3.17 ❶ では・・・【中略】・・・紐づくBmiレコードが存在すると削除できません。
2.4 段落 ★☆☆☆☆
上述の(例)がすべて同じ1段落で解説されている。
本能的に、ぼくは「技術書」に以下のような体裁を期待してしまいます。(「技術書のセオリー」も個人差。)
リスト3.17
リスト3.17の解説。
表3.12
表3.12の解説。
表3.13
表3.13の解説。
なぜ段落をケチるのか、意図がわかりません。
3 技術的内容 ★★★★☆
本家チュートリアルより手順が明確なので、Django初見者にわかりやすいかと思います。
DjangoによるCRUDアプリ開発~デプロイまで網羅されており、デプロイはAWSのEC2インスタンスにNginx、Gunicorn、PostgreSQLという構成で解説しています。
アナログ感を感じますが、本書のデプロイを理解しておけば、VPSなどでもデプロイできるのかなと思います。
ぼくは面倒くさがり屋なので、本番はPaaS(Heroku)あたりかなと妄想しちゃいます。(個人差)
4 総評 ★★★☆☆
もうちょい技術書っぽいく仕上げてほしかった。
Djangoを学ぶには良いです。
ライティングの勉強になります。(個人差)
5 所感
紙は未読なので定かではありませんが、敏感肌の方はKindle版(PCやPadで読もうかなと思っている方)は読みづらいかも、と留意しておくといいかもしれません。
サンプルをDLしても、本書の真骨頂は見えてきません。その先にあります。
Pythonは他の書籍で学習コストが低いと察したけど、本書に関しては余計なコスト(時間)がかかりました。
ちなみに本書の出版日は2019/12/13ですが、エビデンスを見るとデプロイ日時(Nginx起動日時)は2019/02/14っぽいです。本書に限った話ではないですが、仕様変更やバージョン対応などのスキルも必要かもですね。