2009-03-24 15 views
5

Spring Pythonは、Java APIのゴールドスタンダードとも言えるSpringをベースにした、良質のAPIをPythonで定義するためのゴールドスタンダードと思われます。Spring Pythonから始めるための最良のオンラインチュートリアル

私のマネージャーは、私たちのAPIが混乱していると申し立てました(正当な理由があります)。何らかの命令を課す必要があります。我々は再考を行うので、ベストプラクティスとみなされるものを利用することが理にかなっているので、春を検討したいと考えています。

誰かがSpringを使い始めるための最善の学習リソースを教えてくれますか?私はしばらくの間googledして、最初の原則から始まるように見える何も見つかりませんでした。私はPythonの良い知識を前提としたものを探していますが、他のプラットフォームやそれが原則であるSpringの知識はありません。

ありがとうございました

+0

「Spring Pythonは、Pythonで良質のAPIを定義する方法のゴールドスタンダードと思われる」 - その結論はどうでしたか? – Vasil

+0

ソースがありますか? http://sourceforge.net/projects/springpython/ソースの読み方に何が問題なのですか?あなたはウィキペディアの記事を持っていますか? http://ja.wikipedia.org/wiki/Spring_Pythonさらに何が必要ですか?あなたは特定の質問がありますか? –

+0

@Vasil:ウィキペディアの記事によると、したがって(明らかに)それは本当です。 –

答えて

10

どのようにあなたの選択APIとしてSpring Pythonを決定するようになりましたか? Springは宣言型プログラミングの伝統があるJava上でうまく動作します。主にXMLを使用してコアエンジンを制御するアプリケーションを定義することは、Javaの標準パターンです。

Inversion of Controlのような根本的なパターンは、(あなたのユースケースに応じて)依然として適切ですが、Springが選択する実装は、Javaプログラマが習得したくない古典的なケースのように見えますPython。 oft-referenced article Python is Not Javaを参照してください。

私はあなたのコードベースに秩序と思いやりを導入することを歓迎しますが、決定を下す前にいくつかのオプションを評価したいと思うかもしれません。特に、Spring Pythonを使用すると、オブジェクトのやりとりを記述する1000行のXMLファイルに直面したときに、多くの人がPythonプログラマを雇うことが難しくなることがあります。

おそらく、本当に達成したいことを再検討することから始めます。問題は単純に「あなたがフレームワークを必要とする」ことではありません。そこにはたくさんのフレームワークがあり、a)本当に必要なものがあるかどうか、b)解決しなければならない基本的なソフトウェアの問題が何であるかを特定していない場合はどちらを使うかを評価するのは難しい。

実際の問題は、コードが維持できない混乱である場合は、おそらくフレームワークを導入しても問題が解決されないことです。ちょうど面倒なコードではなく、他の人のスタイルに邪魔なコードがあるでしょう:-)デベロッパーチームの厳しさは、最初に始めることをお勧めします:良い計画、コードレビュー、厳しい雇用慣行、 "クリーンアップ"リリースなど...

研究で幸運。

+0

私たちのコードは大抵かなり良いですが、APIには一貫性がありません。私たちのAPIをより使いやすくし、API設計のリーダーが達成した恩恵を受ける機会を得たいと思います。 –

+0

Spring Pythonは単なるポート[1]ではなく、XMLにも制約されていません。 XMLから逃げないでください。代わりにデコレータを使用してください![2]私はいつもpythonicなものを作る方法を歓迎します。 - 1. http://tinyurl.com/dz3dk6 2. 2. http://tinyurl.com/dzupa9 3. http://tinyurl.com/d53d8v – gregturn

+0

この問題を解消しましょう。一貫性を持たせたいAPI。 Pythonの公式なスタイルガイドラインであるPEP-0008 http://www.python.org/dev/peps/pep-0008/を読むことをお勧めします。 – gregturn

1

私は、Spring Pythonが悪いことを示唆するほどではありません。しかし、Spring Pythonを呼び出すためには、「Python APIのためのゴールドスタンダード」が必要です。私にとって、Spring Pythonは、PythonアプリケーションがSpringを使ってJavaアプリケーションとやりとりすることを可能にする方法のほうが多いようです。

いずれにしても、official documentationの先見の一瞥を取った後、私はPythonの知識はあるが、春の知識はまったく分かりません。それは、Javaコードのように見えるという事実を除けば、作成者が型名、セミコロン、および中括弧を忘れてしまった。 :-)

+0

私は言及すべきです:私たちはPython + Javaショップです。すべてのビジネスロジックはptythonにあります。私たちのGUIのほとんどはJavaであるため、PythonをJavaでうまく動作させることは、私たちにとって非常に重要です。 Java開発者はSpringを愛しており、私はそれらを失望させる良い理由は考えられません。 –

+0

それは私にそれを使用するために完全に良い理由のように聞こえる。しかし、あなたはこの質問で見たような反応を、Pythonで非常にJava指向のフレームワークを使うことに準備する必要があります。 :-) –

+0

春Pythonは、Javaと簡単に統合するために構築されたものではありません。実際、その部分は今は少し弱いです。しかし、アプリケーションにセキュリティを追加し、簡単なSQL(ORMの不足)を行う簡単な方法を提供し、AOPを使用してサードパーティライブラリのコードを動的に傍受することは貴重なツールのように思えます。 – gregturn

関連する問題