質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

Q&A

7回答

16391閲覧

フレームワークを使わない利点

退会済みユーザー

退会済みユーザー

総合スコア0

Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

1グッド

0クリップ

投稿2016/10/03 16:44

PHPを例にしますが、フレームワークを使わずに、生のphpを使うと何か良いことが流のでしょうか?

僕の思う利点は、ファイルわけや、プログラムコードを意識して改装わけなどできるようになることかと思いますわw

退会済みユーザー👍を押しています

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答7

0

フレームワークの偉大さを知ることができることかな、まったく冗談ではなく。

投稿2016/10/03 17:16

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

フレームワークを使わない利点

学習コストが低くなるのは利点です。
しかし逆に、実装コストは高くなる欠点もあります。

総合的に見て時間が節約でき、コスト削減できるから、
現に使われているのだと思います。


ただ、こういうご質問をなさる気持ちは分かります。

今どきのフレームワーク(FW)は高度化して複雑だし、
毎年のように新しいFWが出て陳腐化していきます。

言語は覚えないと書けないから仕様がないとして、
FWまで覚えるのは負担だという感覚はありますね。

しかし、冒頭で言ったように、FWを使わないと、
車輪の再発明をしてしまい、実装コストが高くなります。


ではどうすればいいのか? 個人的に考える落としどころは、
とくに個人開発のような小規模開発には小規模FWを使うことです。

その具体的な軽量FWはPHPですと、「CodeIgniter」や「FuelPHP」、
ほかにも、Rubyでも「Sinatra」、JavaScriptなら最近出てきた「Riot.js」など。

これらは主流のFWではないですが、制作物がWebアプリよりWebサイトに近く、
ゴテゴテした過剰な機能が不要なときに、選択肢としてはアリだと思います。

もっと言えば、場合によっては、FWでなくCMSを使っても別に構わないわけです。
「ブログでXXしたい」という風に定型的なサービスに機能を足すだけなら、
CMSのプラグインなりスニペットなりを書いた方が早い場合もあるでしょう。

投稿2016/10/03 17:50

LLman

総合スコア5592

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

良い機会なので
フレームワークを使うメリット、デメリット
フレームワークを使わないメリット、デメリット
を簡単に整理してみました。

フレームワークを使うメリット
・速く開発できる
・コードの書き方を統一させることができる
・バグが少なくなる

フレームワークを使うデメリット
・フレームワーク自体を覚えるのに時間・労力がかかる
・仕組みを理解しなくても書ける
・カスタマイズに限界がある

フレームワークを使わないメリット
・高速処理ができるコードになる可能性もある
・隅々まで理解してコードを書くことができる
・自由にカスタマイズ可能

フレームワークを使わないデメリット
・全体として開発に時間がかかってしまう可能性が高い
・コードの書き方が統一できない可能性が高い
・全体としてバグが多くなる可能性が高い

ご参考まで

投稿2016/10/04 04:02

Yatsurugi

総合スコア1628

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

どのような目的で、フレームワークを使う/使わないを検討するのかによると思います。

たとえば、実際のプロダクト開発で、速く安全に開発を進めたいのであれば、フレームワークは適切なものを選定して、積極的に使うべきだと思います。
なぜなら、フレームワークが適切なものであれば、フレームワーク自体のバグは充分少ないはずですし、目的の機能を実装するために必要な共通機能をフレームワークが提供してくれているはずなので、車輪の再発明を避けて、実装コストを下げることができます。

僕の思う利点は、ファイルわけや、プログラムコードを意識して改装わけなどできるようになることかと思いますわw

このご意見から察するに、今回の目的はプログラミング学習に関して、フレームワークの利用を検討されているように見えます。

このことに関しても、私の意見としては、基本的にフレームワークは使うべき、だと思います。

よいフレームワークには、多くの場合ベストプラクティスがあります。
どのようにファイルを配置するべき、どのようにクラスを分けるべき、という前提がフレームワークの利用にあたって、意識することになると思います。

フレームワークを利用しながら、「なぜ、ここにこのファイルを置くのか」、「なぜこのクラスの責務は分かれているのか」を考えることで、学習の効果は充分に発揮できます。
また、フレームワークには先人の知恵が随所に含まれているので、フレームワーク自体がひとつの参考書として、学習に役立ちます。

また、経験上、フレームワークを使わずに実装をしたからといって、適切なプログラムが書けない人が、書けるようにはなりません。
フレームワークを使わずに実装して、ファイルわけ、階層わけを考えられる力のある人は、フレームワークを使った時に、上記の「なぜこのフレームワークではこのように実装するのか」を考える力があるはずです。

投稿2016/10/03 17:15

Kuchitama

総合スコア181

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

回答、というよりはこれも疑問・質問になってしまうかもしれませんが...
私自身はインフラ寄りの人間で、いわゆる「上モノ」の開発はほとんど携わらないのですが、PHP、ruby、pythonといった開発言語には興味があり、時々触っています。(ほんと、触る程度)
フレームワークについてもどんなものか見てはいるのですが、正直「初学者がここから入っていいのかな?」という疑問を持ってしまいます。
フレームワークを使えば圧倒的にコーディングの量が減るような気がしますし、他の方の回答にある通りメリットが絶大なのはその通りだと思います。
ただ一方、フレームワークを覚えたからといってPHPなりrubyなりを覚えたことになるのか、フレームワークが生成した部分のコードに手を入れる必要が生じた場合はお手上げになるのではないかと思ってしまいます。
この点実際はどうなのか、有識者のコメントをいただけると幸いです。

投稿2016/10/03 23:44

ynakano

総合スコア1894

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

popobot

2016/10/04 00:10

そのとおりだと思います。 素のPHPで実現できないのにないものを、フレームワークを使えばできるということはないでしょうね。あくまで枠組みなので。 特に最近のフレームワークは「設定より規約」を重視しているので、意識せずにフレームワーク側がよろしくやってくれる部分が多く、うまく動かないときにどうしたらいいかわからないケースは多いと思います。 ただし、このへんは他の経験値がものをいう部分でもあるかもしれませんね。自分はJava経験があったので、PHPはあんまりよくわかってなかったけど、いきなりCakephpで開発してそんなに困らなかったし、むしろ楽だったと実感しています。
Kuchitama

2016/10/04 01:38

> ただ一方、フレームワークを覚えたからといってPHPなりrubyなりを覚えたことになるのか、フレームワークが生成した部分のコードに手を入れる必要が生じた場合はお手上げになるのではないかと思ってしまいます。 懸念は非常によくわかります。 ただ、逆のことを考えて、フレームワークを使わなかったらプログラミング言語に精通できるのか?を考えると、できないと思います。 もしくは、それができる人は、学ぶ姿勢を持っているはずなので、フレームワークを使っていても、フレームワークを通して、言語に精通していけると考えています。 なので、まずは楽に成功体験を積み上げられるようフレームワークを使って、まず動くものを作った体験を得るのが重要だと考えています。(とはいえ、この辺りはどういった学習者を想定するかでかなりブレますね)
ynakano

2016/10/04 03:24

icchiiさん、Kuchitamaさん、コメントいただきありがとうございます。 「言語を学ぶ」という観点からするとFWから入らない方がいいのではないか、というのがコメントを読んでの感想です。 「よく分からないけど上手く動いている」だと、学習という点からすると得るものがない(というか気持ち悪い)というのが経験からくる実感です。 また、Kuchitamaさんのコメントですが、 >フレームワークを使わなかったらプログラミング言語に精通できるのか? については、むしろ「FWを使わなかったからこそ精通できた」ということもあり得るのではないかと考えています。 もちろんKuchitamaさんのおっしゃる「学ぶ姿勢」があるのが前提ですが。 >楽に成功体験を積み上げられるようフレームワークを使って、まず動くものを作った体験を得るのが重要 これについては「確かにそうかも」ですね。 私の場合はエラーや意図しない動作を一つ一つ潰して最終的に自分の目的とするものを作り出す、という方向性で言語を学んでいくやり方ですが、それだと心が折れてしまう人はいるでしょうね。
guest

0

煽りでもなんでもなく、このような質問をしているレベルの時点で生PHPを使っておいたほうが絶対に良いです。

きっとあなたはフレームワークの利点を感じるような状況(仕事で、それなりの規模で、チームで開発、とか)ではないでしょう。そんな人がフレームワークを使っても、何がなんだかわからないままになるでしょう。特にトラブルやバグが起きたときに調べるのが難しくなる。

まずは生PHPで車輪の再発明なり非効率なことなりを自力でやりまくって、ある程度の知識と経験を蓄え、初心者を脱した頃にもう一度フレームワークを検討してみるとまた違った景色が見えてくると思います。
ただそれでも場合によっては無理にフレームワークを使うよりも生PHPのほうが多くのメリットがあることもありますけどね。個人的には基本は「生」推奨派です。

投稿2016/10/04 03:51

zico_teratail

総合スコア907

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問