6

私はスカラの経験があります。10人のメンバーで新しいプロジェクトに紹介したいと思います。しかし、スカラのすべての表現力にもかかわらず、コードを維持して新しいチームメンバーに転送することがどれほど簡単であるかは非常にわかりません。現時点では、scalahttp://code.google.com/p/factorie/といくつかのscalaDSL(apache camel)に関する1つの大きなプロジェクトのみを調査しまし。だから私の質問は、中級レベルの開発者のチームにとって、Java、Python、Groovyと比較してどれだけのscalaを維持可能/サポート可能かということです。

4

2 に答える 2

11

一般的に:コードベースの保守性は(いくつか例を挙げると)に依存します

  1. 保守性を考慮して設計する開発者の意志
  2. 意図を実装するための開発者のスキル
  3. ドキュメントのレベルと正確さ(ドキュメントの詳細度ではなく、ドキュメントが実際のシステムをどの程度適切に描写しているかに関する精度)
  4. メンテナンスを担当する開発者のスキル

利用可能な任意の言語を使用して混乱を作成できます。間違いなく、本番環境での使用を目的とした任意のプログラミング言語を使用して、任意のサイズのクリーンで保守可能なプロジェクトを作成できます。

そうは言っても、scalaはjava、python、groovyよりも保守しやすいものであってはなりません。ただし、最初のプロジェクトの結果は保守性が低い可能性があります。

于 2011-08-22T07:32:51.213 に答える
6

簡単な答え:はい

長い答え:Javaと比較すると、非常にそうです。

特性、ケースクラス、パターンマッチング、高種類のタイプ、クロージャなどはすべて、ボイラープレートを削除し、DRYの原則を適用しやすくするために共謀します。コードベースのサイズは約1/3になり、ロジックを複製するよりも、キーの抽象化を分離する方がはるかに簡単です。

より優れたテストフレームワークにより、効果的な一連のテストを適切に維持することもはるかに簡単になります。

もちろん...これはすべて、関係する個々の開発者の意志/スキルに関するAleksiの指摘の後に来ています。チームが保守性を積極的に目指していない場合、世界で最も保守性の高い言語は役に立ちません。

于 2011-08-22T08:35:33.040 に答える