83

これら2つのフレームワークのどちらが、11か月の経験を持つ開発者に適しています。私はサーバーサイドコーディングのためにPythonを学ぶことにしました。そして、これらのうちどれが私のスキルレベルの誰かに適しているか知りたいと思いました。私はちょうど数日web2pyで遊んでいて、それが本当に好きで、Djangoが私が見逃している何かをもっと提供しているかどうか疑問に思っていますか?

PS。更新:素晴らしい入力をありがとうございました。3冊のdjangoの本を購入し、djangoとweb2pyの両方についていくつかの小さなプロジェクト/チュートリアルを行った後、web2pyに落ち着きました。これは素晴らしいフレームワークであり、Web開発を初心者にとって本当に楽しいものにします。このフレームワークは将来主流になるので、すべての初心者にこのフレームワークを学ぶことをお勧めします。Djangoも素晴らしいフレームワークですが、私の限られた経験の意見ではweb2pyの方が優れています。

4

4 に答える 4

109

(免責事項:私はweb2pyのプロジェクトリーダーです)

Djangoはweb2pyよりも約5年長いため、より多くのユーザーとより多くのアプリケーションを誇示しています。Djangoには、web2pyの「admin」とは異なり、web2pyの「appadmin」に似た「admin」と呼ばれるものがあります。Djangoの「admin」はweb2pyの「appadmin」よりも優れていてカスタマイズ可能です。Djangoにはweb2pyの「admin」に相当するものはありません。(名前の混乱でごめんなさい)。

web2pyはよりコンパクトで、すぐに使用できる機能が豊富です(よりサポートされているデータベース、WebベースのIDE、チケットシステム、パッチなしでGAEで実行、複数のログイン方法、役割ベースのアクセス制御、Webベースの変換インターフェイス、複数のデータベース接続のサポート、分散トランザクションなど)。

私にとって、web2pyの最も重要な機能は自動移行です。Djangoはそれらを箱から出して提供していません。

web2pyの場合、セキュリティとともに、長期的な下位互換性が主要な目標です。Djangoはセキュリティの点でweb2pyに匹敵します(ただし、web2pyにはCSRF防止機能があり、テンプレートではデフォルトでエスケープされていました)が、1.0がリリースされたときにDjangoは下位互換性を失いました。web2pyは2007年10月以来決してしませんでした。

私にとって、web2pyの構文はもっと自然です:

 db(db.tablename.fieldname <= value).select() # web2py
 Tablename.objects.filter(fieldname__lt=value) # Django

Djangoに存在しないweb2pyの機能を認識していません。ある場合はweb2pyに追加したいので、何度もその質問をしましたが、まだ満足のいく回答が得られていません。

もちろん、私たち二人がしていることはありますが、違います。Djangoは、「暗黙的よりも明示的の方が優れています」に従います。web2pyはそうではなく、代わりに「すべてがデフォルトの動作をする必要があります」に従います。これにより、web2pyのコードと構成がよりコンパクトになると思います。

とにかく、あなたが何を選んだとしても、それらは両方とも優れた堅実なWebフレームワークであり、相違点よりも類似点が少ないです。Djangoの開発者は非常に賢い人です。

web2pyコミュニティはとてもフレンドリーです。実験として、web2pygoogleグループとDjangoグループで質問してみてください。

于 2010-12-04T10:12:46.473 に答える
23

Djangoとweb2pyはどちらも、同様の機能を備えた優れた「フルスタック」Webフレームワークです。どちらのフレームワークの初心者でも、「見逃すことはありません」。

あなたがあなたの学習で何をしたいのかについてもっと知らずにあなたの質問に答えるのは難しいです。言語ではなくフレームワークを学習する危険性があると言う人もいるので、最初にPython言語と軽量フレームワーク(Flaskwekzeugなど)をより深く理解するのが最善かもしれません。

そうは言っても、web2pyは、学習ツールとして特別に設計されているため、Djangoよりも初期学習曲線が低くなっています。だから私はあなたが良い選択をしたと思います。学習が無駄になることはなく、将来何か他のものが必要だと判断した場合でも、web2pyを使用して学習した優れたテクニックが無駄になることはありません。

Djangoの学習リソースは増えていますが、Djangoの方が長く、ユーザーも多いため、優れた本とユーザーグループの質問へのほぼ瞬時の応答により、web2pyの学習も高速です。

仕事を探しているなら、Djangoの仕事がもっとあるので、それが要因かもしれません。そうは言っても、web2pyコミュニティは最近、将来的にスキルと可用性を促進できるexperts4solutionsを設定しました。

楽しむ!

于 2010-12-04T09:54:35.717 に答える
10

私はWeb2pyとDJangoの両方を備えた完全な初心者ですが、単純なデータベースのフロントエンドを操作、学習、作成するためのpythonicであるWebフレームワークが必要でした。web2pyを見ましたが、完全な初心者を対象とした適切なチュートリアルが見つかりませんでした。web2pyをインストールしたとき、これは非常に簡単で、次に何をすべきかわかりませんでした。簡単なWebアプリを作成する方法(Hello Worldだけではありません)。一方、DJangoは最初のDJangoアプリの作成パート1を行いました。これは本当に良かったので、初心者に簡単なWebアプリを作成してフレームワークをセットアップして使用する方法を紹介しました。Web2Pyがこれを提供するまで、私の投票はDJangoに行きます。

于 2011-10-29T19:00:26.800 に答える
6

多くの言葉で:(私が理解したように)

Web2pyは間違いなく簡単で、コードをよりシンプルでクリーンなものにします。しかし、Djangoを使用すると、何が起こっているのかをよりよく理解でき、設計/プロセスを変更するためのより強力な機能も得られます。

Web2pyは「複雑よりも単純な方が優れている」ことに重点を置いていますが、Djangoは「暗黙的よりも明示的な方が優れている」ことに重点を置いています。Zen of Pythonの2つの部分であるため、どちらのフレームワークがよりPythonicであるかを判断するのは非常に困難です。

于 2011-10-27T08:52:10.780 に答える