超絶リファクタリングを終えたスッキリJava、いよいよ発売開始ッ!


いつもありがとうございます。

今日も相変わらずのとろける暑さ予報に、思わずTVの電源を切ってしまったtakaxiです。いつも拙著『スッキリわかるJava入門』及びシリーズ各書に暖かいコメントをいただき、ありがとうございます。

先日こちらのトピックでご紹介したように、皆様よりいろんな励ましやお叱りをいただき、ありがたく拝読しています。

あと、これまで記事にはあまり書きませんでしたが、出版社に対するお問い合わせや誤記のご指摘、ご相談、ご質問なども内容は拝見しており、喜んだり、悲しんだり、踊ったり*1、Jiraでbugチケットや改善チケットを開けたりしてます。

ご恩返しをできる日がやってきました

そして今日、やっと皆様にご恩返しをできる日を迎えることができました。
Martin Fowlerもびっくりな超絶リファクタリングを終えた、『スッキリわかるJava入門 第2版』が発売開始です。


スッキリわかるJava入門 第2版 (スッキリシリーズ)

スッキリわかるJava入門 第2版 (スッキリシリーズ)


ただの素人だった私めが、文字通り「版を重ねる」ようなことをさせていただけるなんて、想像もしませんでした。しみじみ読者の皆様・出版社の皆様に、ひらに感謝でございます。

What's new in 第2版

ではさっそく、第2版における大きな改訂トピック4つをご紹介しましょう。

Java8対応

今年春にリリースされたJava8に対応した解説に切り替えました。といっても、入門編で扱う範囲での変更は大きくありませんので、日付APIや例外系の扱いなどの簡単な追記が主です。ラムダは入門編の範疇を超えるため取り扱っていません*2

なお、Java8に対応すると同時に、Oracleからの正式サポートも終了したJava1.4以前を前提とする記述を削除しました。つまり、第2版のサポートJavaバージョンは、5,6,7,8となります。

Eclipseでの学習に対応

初版ではJDKによる学習と、こちらの記事で紹介しているJava開発実行SaaS「dokojava」による学習を前提とした記事となっていました。しかし、Eclipseでも学びたいという方も多くいらっしゃったので、Eclipseで学ぶ方のための付録を追加しています。

ただ、個人的には6章(クラスパス)はJDKで学んで戴きたいなという思いはあります。Eclipseだと、このあたりの概念が上手く隠蔽されてしまうため、いざ本番機にデプロイなどと言ったときに応用力を持って対応できるほどの納得感・スッキリ感を得られにくいためです。

構文リファレンスの追加

スッキリJavaは、「物語的にすらすら読める」ことが特長ではありますが、これは「最終的にまとめて俯瞰して理解する」ためには少し不利な特徴でもあります。

そこで、Javaの構文全体を見開き2pで俯瞰しながら、各章の各トピックを学んで戴ける構文リファレンス*3を追加しました。

ソースコードの見やすさの大幅改善

ソースコード等幅フォントとし、かつ、予約後をほのかに紫色にするなどして視認性を高めました。少しするとEclipseなどを使ってカラーリングされているコードを見慣れることに加えて、コードの構造などを無意識に理解しやすくなるなどのメリットもあります。


・・・と、ここまで紹介したところで、「てめぇ、それはリファクタリングじゃねぇだろが!」とFowlerファン*4の皆様から苦情が聞こえてきそうです。

What's not-new in 第2版

ということで、「ユーザーから見た機能としては変化していないが、中身をより筋肉質にしたポイント」についてです。

これは...、いや、もう大変です。合計2,000箇所とか越えてます。ざっと挙げると、

  • 本文の文章の言い回し・語句・用法などの統一・改善
  • イラスト関連の改良(特に第4章の配列など)
  • 構文紹介カコミのデザイン&視認性の向上
  • 出版用原盤データ自体を容易に修正・再利用できるように改善

あまりに大量すぎて編集さんに相当つらい作業を強いてしまって大変申し訳なかったのですが...やはり書き物として大幅に読みやすく・迷いにくくなったと感じます。

また、今回の原盤修正で「より機動的に修正したり改善できる基盤」が整いました。技術がどんどん変化していっても、スッキリJavaはすばやくしなやかに、その変化に対応できるようになったことが、アジャイル人間としては何より嬉しいです。

お寄せ戴いた声も、しっかり反映してます

そして、この第2版の改訂作業では、初版にお寄せ戴いた声やご提案、お考えなども全て著者が検討した上で可能な限り盛り込ませて戴いています。この記事にあるようにただでさえデブだった本が、また少し分厚くなりましたが...ま、まぁ、ダイエットは明日から...。

でもこれで初版にコメントやご意見を寄せて戴いた皆様に、やっとご恩返しができました。

もし編集部などにご報告をいただいた方、ぜひ街角の書店でパラっと当該ページを見てみてくださいね*5

「変わらないもの」「変わってはならないもの」

このように第2版では、時代に合わせて追加したり、より中身に磨きをかけました。しかし、全く変えなかったものもあります。

それはスッキリシリーズ特有の「登場人物たちを用いた、わかりやすさ優先の解説の流れ」です。

初版で多くの皆様に愛して戴けた部分であるということもありますが、私自身、この本書にとって一番の軸となる部分は「変えてはならない」と考えたからです。



これからもスッキリシリーズが、読者の皆様に「できた!」「わかった!」「スッキリした!」をお届けできるよう努力して参ります。

今後とも同シリーズをどうぞよろしくお願い致します。



スッキリわかるJava入門 第2版 (スッキリシリーズ)

スッキリわかるJava入門 第2版 (スッキリシリーズ)

*1:時々です

*2:俺は「入門編の範囲は」と言ったぞ....あとは、わかるな?

*3:BNFを少し崩したような書き方で紹介しています

*4:Beckファン・Wardファンも可。Ralphファン、てめぇはダメだ。

*5:検討の上、見送ったものもございますが、それはどうぞご容赦いただけますと幸いです