2013-06-05 7 views
5

ZEND、CodeIgniter、CakePhpなどのPHPフレームワークについて多くのことを聞いたことがあります。また、生産性の向上、エラーの減少などの利点を認識していますが、複雑なプロセス?フレームワークを使用しないコーディングは、より柔軟性を提供しますか? PHPはそれ自体がフレームワークなので、追加のフレームワークは必要ないと言う人もいます。PHPフレームワークのメリット

なぜ、PHPフレームワークの使用量が多いのですか? PHPではフレームワークが本当に必要ですか?

+0

これらのフレームワークは、最終的にツールになります。時々彼らは仕事のための正しい道具です...時々そうではありません。 – Orangepill

答えて

6

コーディングは複雑なプロセスになっていませんか?

あなたのやりたいことによって異なります。すべて静的なHTMLであるサイトの基本連絡先フォームを作成するだけであれば、フレームワークを使用すると複雑なプロセスになります。一方、大規模なアプリケーションを構築する場合は、フレームワークを使用しても必ずしも複雑になるとは限りません。

フレームワークを使用しないコーディングでは、より柔軟性がありますか?

これはフレームワーク自体に依存しますが、すべて同じではありません。 SlimやCodeigniterなどの一部のフレームワークは非常にトリミングされていて、あまりにも多くの人に受け入れられないため、実際には柔軟性には影響しません。また、Symfony2/Zendなどの複雑なものもあります。

PHPはそれ自体がフレームワークなので、追加のフレームワークは必要ないと言う人もいます。

あなたは技術的にフレームワークを必要としません。フレームワークでできることは、プレーンなPHPで何でもできます。フレームワークは、開発者の個人的な機能やヘルパーコードのアーカイブから実際に進化しました。 PHPは、必要なすべてを行う準備ができていないという点で比較的低レベルです。フレームワークの前に、開発者は多くのプロジェクトで再利用される独自のヘルパーコードを持つ傾向がありました。フレームワークは依然として基本的には、何百、何千人もの開発者が貢献する共同プロジェクトであることを除いて、本質的にそうです。

あなたは、いくつかの開発者を持っている場合、フレームワークのもう一つの利点は、一つのアプリケーションを開発し、あなたが他の開発者がそれに貢献するか、開発者は、彼ができる使用されたフレームワークに精通している、その後あれば、それを引き継ぐようにしたいですそれが普通のPHPで書かれていたよりもはるかに迅速にアプリのスピードアップ。フレームワークがなければ、新しい開発者は新しい機能を追加する前に、以前の開発者システムを解読する必要があります。

2

これらはPHPで必要ですか?

いいえ、フレームワークなしで何かをコードすることは可能ですか。しかし、それはより多くの仕事です。これは、次のようなものです。なぜ、アセンブラを書くことで同じことができるのですが、Cを使うのですか?

なぜ、PHPフレームワークの使用量が多いのですか?

フレームワークを使用する利点は、多くの定義済みのものを使用できることです。たとえば、ほとんどのPHPフレームワークではMVCパターンを使用できます。もちろん、フラットなPHPを使用して独自のMVC構造を構築することもできますが、これは毎回ホイールを再発明するようなものです。唯一のことは、非常にの特定の要件がある場合は、フレームワークを使用することもできないこともありますが、ほとんどの場合、要件はそのようなものではありません。

MVCのポイントは、多くのメリットの1つに過ぎません。使用するフレームワークによっては、特定の利点があります。

だから、あなたが言ったようにです。フレームワークを使用することで、既存のものすべてを再作成する必要がないため、時間を節約できます。

ツールとしてフレームワークを見ることができます。このツールは、より速く、より速く開発するのに役立ちます。

編集:それは通常の原則に従って、より良いコードですのでようAyesh Kは彼のコメントで述べたように、それは、フレームワークは、多くの専門家によって開発されていること、また、利点である:「四つの目が二つ以上を参照してください」 。

+2

この回答は物事を再発明することに重点を置いていますが、フレームワークは各ニッチの多くの専門家によって開発されているので、あなたのコード(通常はコード)よりも優れたコードを得ることができます。 –

6

これは広義の問題であり、私は重要なものだと思います。私は絶対に必要な場合を除いて、フレームワークを使用していないのです。質問はいつ必要ですか?

最初に、フレームワークに対するこの奇妙なアレルギー反応を私に与えたことは、経験の浅いコーダーがすべてのもの、さらには小さなサイトでそれらを使用したいということです...そしてそれは奇妙です。多分、彼らはコードネイターを使っていると言って彼らの履歴書を大きくする必要があるかもしれませんが、私の経験では違いはありません。採用マネージャーは誰でもできるAPIドキュメントを読むことができる人ではなく、スキルセットを望んでいます。あなたがプログラムのアーキテクチャとOOPの原則についての知識を持っていれば、あなたは雇われています。あなたがしない場合、あなたはcodeigniterの忍者、.... eeehhhh ....大丈夫ですか?

フレームワークは、その用途を持っているが、私はあなたのお母さんは彼女の焼く販売のためのウェブサイトを作りたいときにあなただけの非常に軽量化システムを使用して一緒にページを平手打ちことができると思います。私はあなたが必要とする場合に備えてコードを含めるべきであるという信念のキャンプに座っていません。時間が経つと私は自分自身のフレームワークを開発しました。これは絶対に小さなものです。これは、私がこれまでに構築したすべてのWebサイトやアプリケーションが、グーグルでページロード時間の上位2%(通常は上位1% 。

これは、あなたが実際に長期的には足で自分自身を撮影しているあなたのresume-にそれを置きたいと思うので、彼らはただのフレームワークを使用するためにオフに実行しているbad-行かないでいると言うことではありません。どうして?言語自体を使って時間を費やすことはないので、フレームワークの言語を使って時間を費やすことになります。 jQueryを例に取る - JAVASCRIPTではなかったので、YEARSは避けました。人々は、IT-あざ笑ったが、今、私は技術的な面接に行くとき、私は聞かれる(必然的に):「何をjQueryを使ってあなたの経験レベルがある」、と私は、「あまりない」と言うと、彼ら驚い二一見のために、しかし、 「昨日、ネイティブJSのコントロールの逆転を介して依存性注入を書きました」 - 私はSPOTに雇われました。

フレームワークは素晴らしいです。あなたが本当に必要があるかどうかを尋ねるだけです。特に問題は、フレームワークの時間利益(プラットフォームの学習曲線を忘れないでください)によって、それ自身をコーディングすることのメリットよりも優れているかどうかです。一方では(フレームワーク以外のアプローチ)、あなたは多くのことを学びます。あなた自身の不具合を解消するために多大な時間を要するかもしれませんが、言語そのもの(この場合はPHP)について学んだことがあります。一方、新しいフレームワークを学び、多分は、最も可能性の高い遅いアップ速くサイトを得ました。

Wordpressは、私の意見では、過剰に使用されたフレームワークの素晴らしい例です。私のフリーセールの時代には、私は "ワードプレスサイトを改造する"必要があるギグを取っていた。誰かがプラグインを差し込んで何かを見つけることができたので、ほとんどロードできないサイトを見つけるためには愚かな単純なサイトだったつかまえられていないトレッドを備えたタンクに入れます。その場合はオーバーキルです。

CTOとテクニカルリードの経験を持つ私の経験では、誰かがWordpressとjQueryを自分の履歴書に主なポイントとして入れると、「私はOOPについてのことは分かりませんし、現実世界では(そして、私は窓8のような巨大なプロジェクトやその規模の他のプロジェクトにも取り組んでいます) - それは事実ではありません。マイクロソフトは、MSの製品をリリースしたメトロアプリシステムでjQueryの使用を明示的に禁止しています。

ただし、他の企業ではフレームワークを使用しています。私はちょうどFoundationを使ってプロジェクトをやってしまいました。それは素晴らしいプロジェクトでしたが、それはプロジェクトのアーキテクトがフレームワークを完全に研究し、それを正しく使用したからです。その結果、フルモニターの栄光からトリスクキューブサイズのスマートフォン画面のawesomenessに至る、完全に応答性のある初期のコードベースが得られました。要するに

フレームワーク、右使用する場合、特に大規模なプロジェクトのためにawesome-ことができます(と私は大企業を話しています)。小規模なプロジェクトの場合、必ずしも悪いわけではありませんが、実装について考えずに使用される場合は、メスにハチェットを使用するようなものです。

ちょうど私の2セントです。

+2

興味深い投稿ですが、特に私の目を引くのはこれです:_私自身の枠組みを開発しました_。そのフレーズがここの質問に現れる通常の(そして私の見解では正しい)応答は、そうではありません!それをしないでください!世界は別のものを必要としません!等(私たちはここでそれを頻繁に見る)。あなたがしていることを知っているように聞こえますが、OPは、時間の経過とともに、多くの機能を持たず、テストされていないことを除いて、基本的には「個人図書館」がフレームワークになります世界のいくつかの開発者はそれに精通しています。 – halfer

+0

これを見て素敵な簡潔な言い方をすれば、そのような広範な反応を書いて、あなたはそのような細部を少しでも残すようになり、重要な違いだと思う。それは「フレームワークになる」ため基本的に私がそこに含めることを望んでいたものです。あなたが必要とするツールを作成し、それらを含む/除外することができます。なぜなら、大きなフレームワークを持つ欠点の一部は、不可欠ではない「物事を去る」方法を知っている。ありがとう! – dudewad

+0

これらの投稿が下落したという事実は私には変です。これらは意見であり、なぜ人々は下降していますか? – dudewad

関連する問題