Home > Archives > 2008-03-08 Archive
2008-03-08 Archive
KisoJava 4
改訂版基礎Javaを執筆するにあたって意識した事 その4
「KisoJava 3」ではIDEを採用しなかった理由について説明をしました。今回はPart 1のサンプルプログラムについて考えた事を整理してみます。
実際にプログラミングができるようになるためには、興味深いテーマを扱うのが一番なのですが、これは読者にとって様々であるため、これ、と決めるのは難しいものです。できるだけ色々な文法事項を説明できるもので、しかもシンプルな題材ということで、「テキストファイルを読み込んで、行番号つきで表示するプログラム」というものにしました。
Part 1では、「逐次処理」、「繰り返し処理」、「条件分岐処理」といった処理を基本単位として、これらの「基本となる処理」を組み合わせることにより、プログラムが作成できることを説明しています。ゴールとなるプログラムを完成するためには、こういった処理が必要、そのために、こういった文法が用意されている、といった形で説明をするように意識しています。厳密な文法の説明をしているわけではありませんし、ステップ方式で説明をしているので、それほど難しいと思うことなく、学習を進める事ができるはずです。ですから、順に読んでいけば、本書に書いてある通りのプログラムを作る事はできるようになるはずです。
本書のPart 1の内容を理解できれば、基本的には好きなプログラムが作れるようになるはずですが、そうなれる読者は一般的には多くはないと思います。本書で紹介してあるプログラムを真似して動かすだけではなく、自分で考えてプログラムを創り出すことができるようになるためには、壁があるのです。この壁を乗り越えるのは難しいのですが、こればっかりは自分で乗り越えてもらうしかありません。野球で言ったら、「ボールの投げ方は教えた」という段階であり、この後、自分で何度もボールを投げる練習をすることによって、はじめてボールを投げられるようになるというのと同じです。
話をサンプルプログラムに戻します。扱っている題材や、実際に行っている処理は、きわめてシンプルなものなので、サンプルプログラムを実行するところまでやってみても、大きな達成感はないかもしれません。読者としては苦労して達成感のあるプログラムを作成してみたいと思うかもしれませんが、執筆者としては、初心者が苦労することもなく、サンプルプログラムを実行できてPart 1を終わる事ができるなら、その方がいいと考えています。一番心配なのは、「ファイルを読んで行番号をつけて表示するプログラム」の有用性がよくわからないまま読み進んでしまうことです。そうすると、サンプルで提示しているプログラム全体が文法事項を説明するためだけのサンプルのように感じてしまい、内容的につまらないプログラムだ、と感じてしまうはずだからです。
「ファイルを読んで行番号をつけて表示するプログラム」が有用だと思う理由は、プログラムの仕様は「入力、出力、処理内容」で定義することができ、それを実現しているからです。このサンプルは、テキストデータについて、「データを読み込んで、加工処理をして、データを出力する」という基本的なデータ処理プログラムであり、処理内容自体は難しくありませんが、考えれば考えるほど味がでてくる例なのです。これを理解できれば、テキスト処理のプログラムを作成する事は、それほど難しくありません。
サンプルプログラムの題材については、厳選したつもりですが、ゲームを題材にしたり、GUIアプリケーションを題材にしたりした方が面白いはずだ、といった意見もあるでしょう。機会があれば、そういったテーマを使った書籍も執筆してみたいところですが、今回は比較的固めのテーマを採用しました。
- Comments (Close): 0
- Trackbacks (Close): 1
Home > Archives > 2008-03-08 Archive
- 検索
- カレンダー
« 3月 2008 » S M T W T F S 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 - 広告
- 最近のコメント
- Android携帯を改造する? に Tweets that mention Android携帯を改造する? - hiro345 -- Topsy.com より
- Android携帯を改造する? に Tweets in Japan 2010-07-29 « Android Fun! より
- HT-03Aの無線LANについて調子が良くない に Tweets that mention hiro345» ブログアーカイブ » HT-03Aの無線LANについて調子が良くない -- Topsy.com より
- HT-03AでGoogleアカウントリセット に Tweets that mention hiro345» ブログアーカイブ » HT-03AでGoogleアカウントリセット -- Topsy.com より
- ChaSenとRubyをMac OS へインストール に Tweets that mention hiro345» ブログアーカイブ » ChaSenとRubyをMac OS へインストール -- Topsy.com より
- アーカイブ
-
- 2010年7月
- 2010年6月
- 2010年5月
- 2010年4月
- 2010年3月
- 2010年2月
- 2010年1月
- 2009年12月
- 2009年11月
- 2009年10月
- 2009年9月
- 2009年8月
- 2009年7月
- 2009年6月
- 2009年5月
- 2009年4月
- 2009年3月
- 2009年2月
- 2009年1月
- 2008年12月
- 2008年11月
- 2008年10月
- 2008年9月
- 2008年8月
- 2008年7月
- 2008年6月
- 2008年5月
- 2008年4月
- 2008年3月
- 2008年2月
- 2008年1月
- 2007年12月
- 2007年11月
- 2007年10月
- 2007年9月
- 2007年8月
- 2007年7月
- 2007年6月
- 2007年5月
- 2007年4月
- 2007年3月
- 2007年2月
- 2007年1月
- 2006年12月
- 2006年11月
- 2006年10月
- 2006年9月
- 2006年8月
- 2006年7月
- 2006年6月
- 2006年5月
- 2006年4月
- 2006年3月
- 2006年2月
- 2006年1月
- 2005年12月
- 2005年11月
- 2005年10月
- 2005年9月
- 2005年8月
- 2005年7月
- 2005年6月
- 2005年5月
- 2005年4月
- 2005年3月
- 2005年2月
- 2005年1月
- 2004年12月
- 2004年11月
- 2004年10月
- 2004年9月
- 2004年8月
- 2004年7月
- 2004年6月
- 2004年5月
- 2004年4月
- 2004年3月
- 2004年2月
- 2004年1月
- 2003年12月
- 2003年11月
- 2003年10月
- 2003年9月
- 2003年8月
- 2003年7月
- 2003年6月
- 2003年5月