web-dev-qa-db-ja.com

PHP +別のフレームワークではなく、Python + Djangoで上司を販売するにはどうすればよいですか?

上司からイントラネットWebサイトの書き換えを依頼されました。既存のシステムは非常に古いPHPで、フレームワークを使用していません。私の好みはPythonとDjangoで書き換えを行うことですが、上司はPython構文が好きではありません(彼は開発者でもあります)。私は反対側にいます... PHPでの開発は好きではありません。私のPHPの経験は非常に限られていますが、Pythonで多くの作業を行ってきました。上司は私の経験を知っていますが、それでもPythonで彼を売りたいと思っています。

彼がPythonについて好きではないことを述べたいくつかのこと:

  • インデントはコードブロックの開始/終了の唯一のマーキングです(中括弧が大好きです)
  • ドキュメントの問題(私はpythonドキュメントは素晴らしいと彼に言った)
  • IDEのサポートは制限されています(PyCharmとWing IDEについては、どちらが良いかわかりません)
  • 古いバージョンのpython間を移動する際の互換性の問題がありました

彼は新しいコードに目を向ける唯一の他のペアかもしれません。 Pythonがより良い選択であることをどのように彼に納得させることができますか? Rubyは潜在的な中間基盤ですか?

4
Corey D

Pythonがより良い選択であることをどのように彼に納得させることができますか?

できません。上司の苦情はすべて、個人的な好みの些細な問題です。

  • He loves his curly braces. Pythonは、重要な空白を使用していますが、誰もが同意するわけではありませんが、これは個人的な好みです。

    everyoneがインデントを正しく行うことを示すことができます。適切にインデントできないと言う人を見つけることができます。すべてのコードは正しくインデントされていますが

    PHPでは、とにかく正しくインデントします。

  • ドキュメントの問題?これはどういう意味ですか?ボスがPythonのドキュメントをPHPよりも優れていると認識していない場合、これも失われた原因です。それは単なる認識です。

    Pythonライブラリドキュメントセット全体を表示できます。ライブラリが大きすぎる、色が間違っている、フォントが間違っているなどと表示されます。常に新しい「ドキュメントの問題」があります。

  • IDEサポートは限られていますか?うん。彼らがそれを制限すると決定した場合。あなたは苦労するでしょう。

    EclipseまたはKomodoを表示できます。 Eclipseがどのように機能するかを示したとしても、上司は(最終的に)動的言語のIDEはコード補完を適切に実行せず、不満を言う)ことに気付くでしょう。

  • 古いバージョンのpython間で移動する互換性の問題がありました。 Python 3には問題がありますが、十分な時間をかけて2.7を使用する必要があります。

    非互換性の具体的な例があったとしても、この道をそれほど遠くまで進むことはできません。彼らは単に、Python 3下位互換性の欠如は契約違反であると言います。

    すべての言語、プラットフォーム、オペレーティングシステムには、時々互換性の問題があります。あなたはダースPHP互換性の問題(PHP5の問題から始まる))を見つけ(そして文書化)することができ、それはPHPとPythonを支持しない。

上司がPythonを好まない場合でも、PHPを使用した壮大な失敗以外は何も変わりません。そして、それは、PHPの使用に直接起因する-壮大な失敗でなければなりません。

実際の question からのこの実際の引用を検討してください。

私はすでにPythonに手を出して本を購入しましたが、構文が抽象的すぎ(疑似コードに非常に似ている)、厳しすぎることがわかりました。

Pythonは柔軟性が高すぎ、厳しすぎる。同時に。

Rubyは潜在的な中間点ですか?)

ミドルグラウンド?その考えは意味をなさない。それは特定のテクノロジーにとってはすべてかゼロかです。 Rubyのようなものを見つけることは、どちらも好きではないことは恐ろしいことです。

PHPが本当に気に入らない場合は、PHPを使用する必要がない別のジョブを見つけることを検討してください。

15
S.Lott

Pythonがより良い選択であることをどのように彼に納得させることができますか?

上司と個人的な好みの戦いをしているようです。ここでは、ビジネスと開発の観点から、PythonがPHPよりも優れていると考える単一の理由を説明していません。Pythonで作業したい場合は、その理由を説明してください。そして私はヒントを与える-あなたは単に構文がビジネスの正当な理由ではないことを好む彼は明らかにPHPの構文を好み、タイブレーカーは通常上司に行く...

2
GrandmasterB

私はRuby開発者ですが、PythonとPHPの両方にも手を出しています。私は大好きです S。ロットの答え が、私は自分の考えをいくつか追加したいと思いました。

言語/フレームワークが提供する技術的な機能を超えると、上司のような人を説得するのがはるかに簡単になることがわかりました。

たとえば、言語(およびその周辺のコミュニティ)により、コードのメンテナンスが改善され、プラクティス(通常はフレームワークによって実施)が向上し、開発者の幸福(人をどの程度雇用するかsuck) ?)。

どれだけのお金を節約できるかという観点から言えば、長期的に不正なPHP no-frameworkソリューションを維持せずに、代わりにPythonで書き直すことによって+ジャンゴ1つ、彼を説得することもできると確信しています。

彼がまだ彼の選択にかなり頑固であるならば、それから私は 開発者を探している他の人々 があると聞きます。


最後に、Rubyは「潜在的な中間基盤」ではなく、Python + Djangoに代わるものと考えています。誰かがPythonを使用することを説得するであろう議論の多くは、Rubyを説得するためにも使用することができます。

もちろん、私の個人的な好みはRubyです。主に、テスト駆動型開発などのベストプラクティスへの宗教的な遵守と、言語の向上を目指す絶え間ない努力が原因です。ああ、そして誰もがとてもいまいましいニースです。同様に、カナディアンニース。

しかし、それはこの文脈では無意味であることを意味します。 あなたが使用する言語あなたをどの言語に納得させるかは完全にあなた次第です。

1
Ryan Bigg

まあ、IDE問題は簡単に対処できます。Aptana3プラグインを使用したEclipseは、すばらしいDjango IDEです。これには、Djangoテンプレート。

下位互換性と上位互換性の問題は、もちろんPythonまたはDjangoに固有のものではありません。ただし、これが問題になる場合は、DjangoではなくWeb2Pyを検討してください。Web2Pyは、常に後方互換性を維持することを目標としています。互換性があり、2007年にリリースされました。これは、Python 2.5(2006年にリリースされた))でも動作します。

Pythonの標準ライブラリとサードパーティライブラリのドキュメントは、通常、非常に優れています。問題の原因がわかるまでは、上司の問題に対処することはできません。

0
user16764