実録:Javaのことを調べてみた その3

なるほど、これはホスト系のプログラマーが、
Javaの世界に入っていくのは大変だ。
JSPサーブレットの入門書を買って、読んでみた感想である。


開発環境のセットアップは、拍子抜けするくらい簡単だった。
インストーラーでインストールするだけ。
ややこしいiniファイルの設定を覚悟していたのだが、
ちょっとあれれ、と思ったのは、
環境変数の設定ぐらいだった。


ということで、例題なんかをやりつつ、動かしてみたのであるが・・・
ちょっとこいつは大変である。


なんせ、前提となる知識が多い。
HTMLのページの構成がどうなっているか、
そのタグにはどんなものがあるか、
なんていうのは、当然といえば当然だが、
全部はしょって書いてある。
JSPはHTMLそのものを書き出すので、とっつきやすいと思います」
なんて、本には書いてあるが・・・ううむである。
そもそもHTMLをよく知らないのだから。


Java自体の言語としての構造は、C++によく似ているな、
というのが印象である。
クラス、インスタンス化、クラスの継承。
どれもこれも、COBOLABAP系列の言語にはない考え方である。
昨今ABAPもクラスだのなんだのと使い始めたので、
わかる人はわかるのだろうが・・・
これもかなりのハードルになりそうである。
加えてxmlの素養も超前提になっている模様である。


私個人は、今を去ることン年前、R/3を始める前に、
HTMLのタグをせこせこ書いて、「独習C++」なんていう本を買って、
こそこそお勉強していたことがあったので、
ある程度の素養はあるほうだ、
と、思っていたのだが、単なる幻想だということを思い知らされた。
うーん、ABAPを仕事でずっとやってきた人を
Javaの開発者として最教育・・・
こりゃ難しいだろうなあ・・・


そして、このオブジェクト指向というヤツの正体というか、本性。
なぜオブジェクト指向でプログラムを書かなければならないか。
それはメンテナンスが容易になるから。
確かにそうなのである。
で、メンテナンスがなぜ容易になるか、というと、
InとOutを明示的に設計することで、
オブジェクトごとの役割が明確になるからだ。
ってことは、である。
これ、プログラム自体の生産性よりも、
設計力が大きく問われることになる、
という、当たり前といえば当たり前の事実に突き当たるのである。


COBOLABAPという言語は、一面的な言い方をあえてすると、
手っ取り早く帳票を作るための言語である。
だから、適当に書き始めてもなんとか動く。
設計書なんかなくても、とりあえず書いてしまって、
後から設計書を起こす、なんてこともできてしまう。
その「あいまいさ」を排除した言語がC→Javaという系列なんだな、
と、またまた当たり前のことに、あらためて気づくのである。


となると、これからのR/3の開発をにらむと、
「プログラムのできるコンサルタント」というのはちょっと違って、
「設計のできるコンサルタント」というのを、
目指さなければならなさそうだ、
そう納得したところで、本にはMVCモデルなる言葉が出てくるのである。