0001名無しさん@お腹いっぱい。
2017/01/27(金) 18:48:30.81ID:RFqE5My/0違う機械で?
違う言語で?
…
でも、コーディングの流れはあまり違わない。だから、デジャブなわけだ。
一度やったことは繰り返したくない。でも、面倒だからちゃっちゃと仕上げよう。できるんだし…。
そして世界中で似たようなコードが量産されているわけだ。
これって、人間の時間の無駄遣いじゃね?と思っても、日々忙しい毎日なのだから、そんなことは忘却のかなたに。
我々がからむ作業環境は:
1、機械(さまざまなコンピュータ)⇒2、BIOSレベル⇒3、OSレベル⇒4、言語レベル⇒5、アプリレベル…
となるわけだ。
たとえば、2のレベルのソフトウエアを考えてみよう。
2は、1と3とのかけ橋を担当するわけだ。
それは、今までなかった機能が機械に備わると当然忙しくなる。USB、タッチパネル…などが新規で機械に乗ってきたら、
当然、BIOSでは、それを受けて、OSにまで引き継がなければならない。そのとき、BIOSは既存のものから更新しなければ
ならないだろう。しかし、機械の新機能が、BIOSで完全に既存の機能と見分けがつかないくらいに吸収できるなら、
OS側に、新たな変更を要求しないでも、済むかも知れない。これは、どのレベルにも言えることだと言えそうだ。
ここで、何度も同じ事をしないで済むようにするには、どんな仕組みが必要だろうか?
コンピュータの初歩で、入力⇒処理(加工)⇒出力、ってのを教わった。結局プログラミングとは、これを具現化している
にすぎない。だから、誰かが、一度具現化、つまりは作ってしまえば、あとはその再利用がすべての人に引き継がれれば
いいわけだ。これは現実にうまくいっていないのは、JAVAの現状を見ればわかるだろう。
なぜ、うまくいかないのか?
ここではそれを考えてみたいと思う。
最終的なゴールは簡単で、各レベルでのプログラマが不要の世界だ。
その意味は、このシステムの最終レベルに位置するものが、今年の支店別月次売り上げ報告書が欲しい、
と言ったら、即座にデータが出てくるようなシステムがあったとき、
今年の担当者別月次売り上げ報告書が欲しいなら、
どうぞご自分でやってください、と言えるような環境はどうやって構築できるか、と言うほどの意味だ。