• 締切済み

「Strutsってなに?」と聞かれたときに何と答えますか

3ヶ月ほど前からStrutsで仕事をしております。 恥ずかしながらStrutsをあまりよく知らずに「こうやれば動くんだぁ」って感じで仕事をしております。 あるとき友人に「Strutsってなに?」と聞かれました。 私は「Javaのフレームワークだよ」って答えたら? 友人は「フレームワークってなに?」と聞いてきました。 私は答えられませんでした。 皆さんはプログラムスキルの低い人に「Strutsってなに?」「Strutsってなにが便利なの?」と聞かれたらなんと答えるのでしょうか?

みんなの回答

回答No.4

Strutsに関するフレームワークのことだから、正確にはMVCの方ですね。 MVC http://e-words.jp/w/MVC.html 同じ「Javaのフレームワーク」でも、データ構造(ListやMapにSetなど)に関するクラスライブラリについては「コレクション・フレームワーク」といいます。(昔は、まだ対応したデータ構造が少なかったためかコレクションクラスと呼ばれていた。) フレームワーク http://e-words.jp/w/E38395E383ACE383BCE383A0E383AFE383BCE382AF.html 『Strutsってなに?』 Webアプリケーションを開発する際には、「モデル」、「ビュー」、「コントローラー」の3つに分けて考えた方が効率が良く、そのような効率的な枠組みに従って作られ、かつ無償で、世界中の様々な人達によって使い込まれていることなどからくる高品質なJavaのサーバサイド系アプリのことです。 身近な例えであれば、コンビニなんかで有名なフランチャイズビジネスというのがありますよね。 「モデル」 →商品の在庫管理などは、店内の奥で行われています。 (地域密着型の商品や品切れ状況など。) 「ビュー」 →店内の見た目などは、基本的にどのコンビニでも一緒ですよね。 (入口付近にレジがあり、外側には雑誌コーナー、奥にはドリンクコーナーなど。) 「コントローラー」 →レジの前では、POSシステムによるバーコードリーダーなどが有名ですね。 (「モデル」や「ビュー」とうまく連携します。) 『Strutsってなにが便利なの?』 お店を出すのには、フランチャイズを利用しなくても他にいろいろな方法があります。以下のサイトを参照。 HOME > フランチャイズってなんだろう http://www.fc-hikaku.net/howto01.html もっと言えば、一から全て自分だけの力で作り上げていくことも可能です。ただし、実際にそれをするとなると、いろいろな専門書を買ってきて様々な勉強をしないといけないし、時には高度な実務経験が必要だったりと、必然的に敷居が高くなってしまいますよね。そんな時に、もう既に効率的な「枠組み」が用意されていて、後はそれに対していろいろとカスタマイズしていくだけだったらとっても便利ですよね。(24時間対応のATMを設置したりとか、あるメーカーさんとコラボレーションしたりとか・・。) それに加えて、分業も出来ればなおさらのことです。(豊富な経営ノウハウや、複雑なマーケティング、宣伝・広告にインテリアなどは専門の人に全てお任せします。) もちろんそれとは別に、ある一定の「枠組み」である以上それに関するルール、取り決めなどが発生しますし、場合によっては機能的に縛られる部分も出てくるといったような欠点も存在します。(本部の方針には従わないといけないし、「枠組み」そのものに不具合が仮に合ったとしても、その影響を何かしら受けてしまう可能性も出てきます。) よって、最優先すべき目的が何なのかによって、その「枠組み」を利用すべきかどうかも違ってくるということです。(一から自分で作るとなるととっても不便ですが、逆にしがらみは一切なくなります。)

  • D______S
  • ベストアンサー率40% (6/15)
回答No.3

最近入社した若手に、リアルに聞かれました。 以下の文章のような感じで答えたと思います。 (*以下の文章は、AtoZのうち、Aを答えるくらいの気持ち(プログラム知識が殆ど無い人を前提)としたものなので、勿論、まだまだ説明足らずあると認識してます(w)) Strutsって聞かれたら、 「フレームワークというもので、基本的なプログラムの骨格(雛形)や、処理の仕組みが提供されているソフトウェアのことで、それに足りない、業務的な部分や、独自の部品を作りこむことで、アプリケーションを0から作る必要が無くなるようなメリットがあるんだよ。 フレームワークには、色々な製品があって、それぞれ違う骨格(雛形)を持っているんだよ。 参考だけど、インターネットにはWIKIという辞典みたいなものがあるから、"フレームワーク WIKI"、"Struts WIKI" 等でGOOGLEで検索して、調べると有用な情報が手に入るよ」

  • momozange
  • ベストアンサー率67% (21/31)
回答No.2

アプリケーションの土台になりうる場合も確かに多いですが 今日のアプリケーションにおけるフレームワークとは 機能実現のためのアーキテクチャそのものです。 フレームワークを適用する局面、範囲は随所違いますからね。 Strutsとは主にFront層に特化したWebアプリケーションフレームワークです。 本来煩雑になりがちな画面遷移やそれに基づく入出力情報を管理します。 もちろん開発者の負担軽減にもつながります。

  • bgbg
  • ベストアンサー率53% (94/175)
回答No.1

「フレームワークとは」と聞かれたら、「アプリケーションの土台」と答えます。 非情報系の人には、建物で言う基礎部分とか、ケーキのスポンジ部分という説明もしています。

関連するQ&A