4/18に発売された「Java本格入門」を買いました(^^)
発売にあたってのAcroquestさんブログエントリはこちら。
acro-engineer.hatenablog.com
編集の方の「『35歳からのJava再入門』が裏テーマです」が個人的にメッチャ刺さりましたw
類書は数多くあるJava本ですが、「プログラミング未経験者向けの入門書」ばかりで、かといって名著『Effective Java』にいきなりいくには敷居が低くしかも内容が古い……という現状を鑑みた内容です
— 傳智之 (@dentomo) 2017年3月23日
Java本格入門https://t.co/nl5OqX7fID
ということで、もうすぐ37となる自分ですが…改めて初心に帰って再入門していこうと思います。
で、書籍はJava SE 8が前提なのですが、ふと以下の記事で書かれていた話(REPLツールを使うことにより、Java言語の勉強とかが手軽になる)を思い出して、JShell立ち上げながら読み始めることにしました。
やり始めると意外と面白いです。自分だけかもしれませんが、歳を取ると、本を買っても(ある程度知っているプログラミング言語だと)ガチで手を動かしてコード書く機会って意外と少なかったりします。Javaの場合は特にIDE立ち上げて、実行して、書き換えて、の繰り返しなので、書籍の最初のほうとか意外と打たないのですよね(^^;
JShell使うと一番最初のHello Java Worldは
public class HelloWorld { public static void main(String... args) { System.out.println("Hello Java World!"); } }
次のように書けるし、コード補完も効くので手軽に試せます。
jshell> System.out.println("Hello Java World!")
JShellの勉強にもなるなーと思ったのが、次のコメントの部分とかで
jshell> //メッセージを表示します jshell> /* ...> このような記号 で囲めば ...> 複数行のコメントを記載することもできます ...> */
あ、実行できるんだ!って当たり前か(^^;みたいに思ったり。
変数、型、リテラルの辺りも
int numberA; // int型のnumberAという変数を宣言する numberA = 10; //numberAに10を代入する System.out.println(numberA); //numberAの値を出力する
と本にはありますが、これをJShellで試していくと
jshell> int numberA numberA ==> 0 jshell> numberA = 10 numberA ==> 10 jshell> System.out.println(numberA) 10
のようになって、intで宣言した変数で初期値かかないと0が入るのね、とか、ちゃんと代入されてるー、とか確認しながら本を読めて良い感じです。
そして、JShellの書き方がよくわからないときは以下を読めば解決!
- Java SE 9で導入される「Project Kulla」、便利なREPLツール
- Java SE 9のProject Kulla、JShellを深く知る
- Java SE 9で導入されるJShellの組み込みコマンドを知る
- Java SE 9のProject Kulla、JShellの動作とJShell API
- Java SE 9のProject Kulla、JShellとIDE
- Java SE 9のProject Kulla、コンソールアプリケーションのためのJLine
Javaに再入門しながら、Java 9も触れられるという一石二鳥な感じ。やっぱりJShellいいなぁ。ということで、しばらく写経していこうと思います。
私は紙の書籍で買いましたー。
技術評論社
売り上げランキング: 1,824
Java本格入門はKindle版も既に出てます。
売り上げランキング: 870