2

「何をしようとしているのかによって異なります」という回答が何千も得られることはわかっていますが、真剣に、これに関する確かな情報はまだオンラインにありません. ここに私の仮定があります - 私はそれらが今多くの人に似ていると思います:

  1. 今は 2008 年 10 月です。2009 年 1 月に向けてアプリケーションの作成を開始したいと考えています。ベータ コードなどを使用したいと考えていますが、1 月までには「奇妙な」問題のないサイトが必要です。そうは言っても、ある言語が別の言語よりも単に 10% 遅い場合でも、問題が直線的である限り、私は気にしません。私の主な関心事は、開発者の生産性です。
  2. アプリケーションには Linux、Apache、MySQL を使用します。
  3. 安定したライブラリで scp や ftp クライアント関数を実行するなどの機能が必要です (これら 2 つは Web 関連ではなく、同時に、より大きなアプリが使用する可能性のある非常に一般的なネットワーク プロトコルを表しているため、これら 2 つだけを選択しました)。OpenID や Oauth などのテクノロジーも使用されます。
  4. 経験豊富な Web 開発者はすぐに利用できます (つまり、金融会社などから人材を探す必要はありません)。
  5. 選択が何であれ、一般的であり、しばらくの間存在します。
  6. これがキッカーです。HAML や SASS に似た高度なプレゼンテーション レイヤー ツール/言語を使用できるようにしたいと考えています。私は間違いなくJQueryを使いたいと思っています。
  7. 私は Facebook アプリを作成し、ある時点で SMS メッセージや iPhone アプリなどを処理する予定です...

この時点で、言語の選択肢は PHP (Cake、Symfony、Zend)、Python (Django)、Ruby (Merb) です。この時点で、私は本当に Django と Merb のどちらかだと思っています。それは主に、他の誰もがそうしているように見えるからです。

主流向けに作られていない技術をここに入れないでください。Merb がほとんどテストされていないことは知っていますが、彼らが表明した目標は堅固なプラットフォームであり、その背後には多くの勢いがあるため、実行可能であると確信しています. Perl や .Net の素晴らしさについて答えないでください。

今後の参考のために - これらの選択はすでに行われています。

  • Debian (Lenny) - CPU サイクルを有用なものに変換するため。トラック
  • 0.11 - プロジェクト管理用 Gliffy - ワイヤーフレームなど用
  • Google ドキュメント/アプリ - ドキュメント、ホストされた電子メールなど...
  • Amazon ec2/S3 - ホスティング、ストレージ用。

乾杯、アダム

4

13 に答える 13

16

Django!

Google / YoutubeでDjangoConの講演を調べてください-特に「再利用可能なアプリ」(www.youtube.com/watch?v=A-S0tqpPga4)

Ruby / Railsを使い始めてから、しばらくの間Djangoを使用しています。Djangoコミュニティは、優れた例で文書化された言語で、より簡単に理解できることがわかりました。特に、カスタムコンポーネントを組み合わせて使用​​したい場合は、モジュール性が優れており、ここで特定のものを使用する必要はありません。そこの。

Railsなどで同じように柔軟にする方法はおそらくあると思いますが、 http: //www.djangoproject.com/でDjangoの紹介などをじっくりとご覧になることを強くお勧めします。

Eugeneは、現在1.0になっているため、2009年1月まで安定した下位互換性のあるコードベースを維持すると述べています。

また、構築する自動管理インターフェイスは本番環境に対応しており、非常に柔軟性があります。

于 2008-10-08T18:51:52.533 に答える
9

申し訳ありませんが、あなたの質問は間違っています。人々はおそらくこれに私を投票するつもりですが、とにかくそれを言いたいです:

客観的な答えは期待できません!なんで?それは簡単です:

  • すべてのRuby支持者は、Rubyを使用するように指示します。
  • すべてのPython支持者は、Pythonを使用するように指示します。
  • すべてのPHP支持者は、PHPを使用するように指示します。
  • ここに追加の言語を挿入します。

アイデアが浮かんだ?

あなたが言及したそれぞれの言語を自分で試してみることをお勧めします。それぞれ少なくとも数日。その後、最終決定を下すためのより良い基盤が必要になります。

そうは言っても、私はRubyを選びます(私はRubyの支持者だからです)。

于 2008-10-08T18:51:26.637 に答える
7

それらのすべてが仕事を成し遂げます。

あなたとあなたのチームが最もよく知っているものを使用してください

これは、配信時間とアプリの安定性に、他のどの変数よりもはるかに大きな影響を与えます。

于 2008-10-09T20:02:49.583 に答える
5

場合によります。

php-symfonyは素晴らしいフレームワークです。欠点:php、wordy、ディレクトリが重い。推進力は使用するのが面倒になります。利点:phpはどこにでもあり、労力は安いです。よくできたフレームワーク、そして良いサポート。あなたの生活を楽にするプラグインがたくさん

python-djangoも素晴らしいフレームワークです。欠点:Pythonプログラマーは見つけるのが難しく、djangoはさらに難しくなります。公式の移行がないため、dbスキーマの変更はやや難しい場合があります。あなたが期待するようにMVCを完全に実行しません。利点:必要なすべてを実行し、その背後に素晴らしいpythonstdライブラリとコミュニティがあります。

ruby-merbを使ったことがないので、railsについて説明します。利点:プラグイン、gem、またはレシピがあり、ほとんどすべてのことを実行できます。使いやすい。欠点:これらのプラグイン、宝石、レシピは、不思議な方法で機能しないことがあります。モンキーパッチはしばしば悪です。コミュニティは..ボーカルです。意見のあるソフトウェア、そして時にはそれらの意見が間違っている(外部キーの欠如)。レール自体は、爆発してあなたの人生の何時間も奪うのを待っているカードの塔のようです。

そうは言っても、私はフリーランスのphp/symfonyおよびruby/railsの開発者です。私は言語とフレームワークの両方でいくつかのプロジェクトに取り組んできました。私の最新のプロジェクトは、ActiveMerchantのためだけにRailsにあります。しばらくの間、djangoアプリを開発する理由を探していました。django用のActiveMerchantのようなライブラリがあれば、おそらくそれを使用したでしょう。

于 2008-10-08T19:08:42.000 に答える
4

Pythonソリューションに慣れている場合は、Djangoを使用します。現在はバージョン1.0であり、多くのユーザーベースと多くの貢献者がいて、順調に成熟しています。jQueryの統合は問題ありません、そして私は問題なくそれをしました。

唯一のことは、私が知る限り、Rubyは最近のWeb開発ではるかに人気があるため、Ruby開発者を見つけるのが簡単です。最近の求人広告を閲覧することでこの印象を受けます。PythonやDjangoの場合はそれほど多くありません。Merbについてはよくわからないので、公平に比較​​することはできません。

私は十分なPHPを実行したので、それを使用して新しいプロジェクトを開始することはお勧めしません。

于 2008-10-08T18:19:25.297 に答える
2

あなたの理由に基づいて、私はRubyに行きます。管理ツール (scp、ftp クライアント) が必要で、Ruby にはそれがあります (net/sftp および net/ftp ライブラリ)。

また、システムを監視するための God や、デプロイするための Vlad the Deployer などの素晴らしい宝石があります。また、Merb の分野には多くの代替手段があります。必要に応じてより良いと思われるもの (Thin、Mongrel、ebb など) を使用してください。

于 2008-10-08T18:26:52.100 に答える
2

Django エコシステムの現在の状況を把握するには、以下を確認してください。

于 2008-10-09T10:55:29.907 に答える
1

Django でアプリを作成したので、その有用性を証明できます。すべてのフレームワークがこれほどエレガントだったら (はい、Spring です。あなたのことを考えています)。

ただし、ファームを Django に賭けるという点では、考慮する必要があることの 1 つは、Python 3 がまもなくリリースされるということです。Python 3 は下位互換性がなく、言語が分岐し、すべての Python プロジェクトが影響を受けている間、その勢いが鈍化するリスクがあります。公平を期すために、Ruby 2.0 もまもなくリリースされる予定ですが、それほど破壊的ではないと思います。

于 2008-10-16T15:07:01.753 に答える
1

Orion Edwards に同意する前に、あなたのチームが最もよく知っているものを選択してください。

ただし、リストに ASP.NET 言語が奇妙に含まれていないことにも注意する必要があります。大狂信者の軍隊を挑発するためではありませんが、牛肉はどこにありますか? .NET は安定した迅速な開発プラットフォームであり、人材プールは日々拡大しています。VB.NET と C# は移植可能なスキル セットであり、さまざまなタスクに取り組む開発者のチームを構築する場合に非常に重要です。.NET では、他の言語と同様に、プレゼンテーション層をバックエンド コードから分離することもできますが、そのバックエンド コードを iPhone や Facebook アプリケーションなどの Web サービスとして公開することもできます。

すべての提案を鵜呑みにして、アプリケーションに最も適したものを選択してください。調査を行い、熱狂者ではなく機能を設計します。

免責事項: かつては PHP、ColdFusion、および Perl の開発者でした。Flex 熱狂者であり、Adobe 愛好家です。現在、エンタープライズ .NET アプリケーションを作成しています。;)

*nix で .NET を実行できる Mono を忘れないでください。完璧になると言っているわけではありません。悪魔の代弁者を演じているだけです。

于 2008-10-09T20:13:03.697 に答える
1

サーバー側のページ レイアウトの考え方にとらわれないでください。SproutCore、GWT、または ExtJS などのテクノロジを検討してください。これらのテクノロジは、レイアウト コードを完全にクライアントに置き、サーバーがデータのマーシャリングと処理のみを担当するようにします (そして簡単に置き換えられます)。

そして、あなたは本当に、あなたが望むサーバープラットフォームを知る必要があります. 今月のフレーバーだから選ぶのではなく、快適だから選ぶのです。フレーバーは持続しません。しっかりと構築されたコードベースは持続します。

于 2008-10-09T21:13:14.760 に答える
0

サーバーのセットアップについて偏見を持たないことには価値があります。ソース コードで重要な価値がある最新の Web フレームワークには、何らかの SQL 抽象化レイヤーがあります。PostgreSQL ははるかに優れたパフォーマンスを実現します。これは、以前の MySQL 支持者によるものです。

Apache は、構成とサーバーのリソースの両方において獣です。nginxlighttpdなどの軽量なものを使用しないのはなぜですか?

(記録として、私は Django の大ユーザーですが、受け入れられた回答が言ったように、チームが知っていることは何でも行ってください。迅速なターンアラウンドは、新しいフレームワークを学習する時ではありません。ゼロからチームを採用している場合、Django を使用してください。)

于 2008-10-14T16:48:48.400 に答える
0

過去 10 年間のさまざまな新技術に関する私の経験から、プラットフォームの安定性を重要な基準にすることをお勧めします。最新かつ最高のフレームワークを使用して開発することはすべて問題ありませんが、ポイント バージョンに移行し、すべてを実行した方法が突然廃止されたことに気付いた場合、余分な不要な作業が発生する可能性があります。これは特に、バージョン 1 よりも少し前の Rails で作業した私の経験でした。その理由だけでも、作業を開始するときに少なくとも 1.0 ではないプラットフォームは避けます。

Ruby は使いやすく、開発者の生産性を高く維持しますが、Django がより安定したプラットフォームである場合、私はそれを好むでしょう。

于 2008-10-09T11:05:56.327 に答える