<< September 2017 | 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 >>
| main | 作業管理にTracのチケットを活用 >>

スポンサーサイト

0

    一定期間更新がないため広告を表示しています

    スポンサードリンク * - * * - * - * - -

    Slim3と Google App Engineは久しぶりに研究してみたい技術だ

    0
      きっかけは敷居の低さ

       どうせ、淘汰されて使われなくなるから、勉強しても無駄になるんじゃないかなという恐れから、新しいフレームワークやAjaxへの新しい技術の勉強に、最近消極的になっていた。
       そんな中、Google App Engine for Javaは久しぶりに勉強してみたいと思った。

       5年前ぐらい前には、自分でWebアプリを作って公開しようと思っても、Javaに対応したレンタルサーバーは安くても月5000円ぐらいかかったものだ。
       安く借りれるところは、Xrea.comやロリポップなどで、対応しているのはPHPアプリぐらいだった。

       せめてRubyで安く使えるところは無いだろうかと思って探していたところ、見つけたのがGoogle App Engine for Javaだった。
       こういったものを無料で利用できるなんて、今の人たちはなんて恵まれているんだろう。


      今後市場にどう受け入れられていくのか

       せっかく新技術を勉強しても、使われなくなって時間を無駄にしてしまうというのが、新しい技術を覚える上での課題だった。
       でも、それなら、たとえ淘汰されて使われなくなっても、無駄にならないものを選んで勉強すればいい。
       Google App EngineやSlime3を勉強しても、仕事で使うことがなかったり、結局だれも使わなくなって、淘汰されてしまうかもしれない。
       だけど、クラウド・コンピューティングという考え方やそれを支える技術の概念自体は、今までのリレーショナルデータベースをベースにした業務システムにない、新しいアイデア、新しい利用のされ方として、残っていくかもしれない。

       ホストコンピューター → ビジュアルプログラミングを取り入れたのクライアント/サーバー型システム → Webシステム → リッチクライアント? という流れで、世の中のニーズによって市場に受け入れられきた歴史の中で、新しく生まれる考え方にならないだろうか?


      いままで繰り返されてきたこと、ずっと問題としてあり続けていること

       システムの導入にかかるコストや、運用の課題は、何年たってもなくならない問題として、課題であり続けている。小さい店舗や会社が、売上の管理や、業務の流れを管理しようと思っても、ちょっと支店間でネットワークをつなごうと思うと、回線利用費やインフラ周りで何百万もの費用がかかってしまう。
       ファイルメーカーやAccess、弥生会計など、個人レベルや、ネットワークを介しない1店舗・会社で完結する程度のアプリケーションソフトの導入と比べると、システムの導入には大きな敷居を伴う。

       とここまで書くと、結局はWebシステムが出始めたころに、市場に期待されていたこととあまり変わり映えがしない様な気がするなあ。
       うーん、どうなるのかわからないけれど、現われては消えていく、他の星の数ほどあった技術・概念とは一緒にせず、ユーザーに所有されない、分散化されたインフラで運用されるシステムが、今後、市場にどのように受け入れられていくのか、冷静な目で観察を続けていった方がいいかもしれない。

      ユーザーに所有されない、分散化されたインフラで運用されるシステムに今感じる魅力

       Google App Engine for Javaにひかれるポイント
      ・5年前なら月安くても月5000円必要だったものが今はタダ!
      ・Javaサーブレットが使えて、それをgoogleの多重化された分散コンピューターにおいて利用できる
      ・永続化に使えるBigTableは、Key−Value型データベースというもので、従来のRDBの考え方はそのまま使えないのがデメリットだが、逆に運用面や可用性を考えると新しい可能性が開けてくる予感がする

       Slim3に惹かれるポイント
      ・設定より規約を重視する考え方など、Rubyで今話題性のある考え方が取り入れられていること
      ・Springや、Seaser2などのように堅牢なビジネスロジックの管理を求めらる業務アプリケーションとは異なり、個人で展開するような小規模のシンプルなアプリケーションに向いている(と思う)
      ・現在、開発中で毎日のようにソースコードが更新されているのが、公開SVN上で拝見できる。リファクタリングされたソースコードの差分を見ていると本当に勉強になるものが多い


       これは、今のチームのメンバーにも、ぜひ勉強することをお勧めしたいなあ。
      仕事でやるプログラミングでは、やっぱり品質や堅牢性、保守性を高めるためのシステムテストが大切だし、、開発者本人の手を離れても問題なく運用が進むためにも、設計書等のドキュメントの整備も怠れない、また、設計書の基づいた、平易で複雑ではないソースコードを書かなくてはいけないので、どうしても仕事でやる開発は保守的で、確実に結果を残せるものになってしまう。
       個人でやる分については、そういった垣根・制約・制限を取っ払って、新しい事にどんどんチャレンジしてみたい。


      よっしー * クラウド技術(Google App Engine) * 02:29 * comments(0) * trackbacks(0) * - -

      スポンサーサイト

      0
        スポンサードリンク * - * 02:29 * - * - * - -

        コメント

        コメントする









        トラックバック

        このページの先頭へ