.NET 開発者またはユーザー グループが alt.net のツールとプラクティスを開始し、興味を持ってもらうために説明するトピックの順序は何ですか。
- ORM
- IoC
- TDD
- DDD
- DSL
- CI
- MVC - MVP
- バージョン管理 (これが最も速いと思います)
- アジャイル
- などなど…
ALT.NETは、一連のツールやプラクティスというよりも態度です。
それ自体が「誰かにALT.NETを始めてもらう」ことができるかどうかはわかりません。
私にとって、それは経験から生まれた態度であり、コートのように着ることができるものではありません。しかし、それは私の意見であり、変更される可能性があります。
家に帰る基本的な原則は次のとおりです。
次に、バージョン管理(!)の後、継続的インテグレーションから始めて、ビルドの品質に関するフィードバックをすぐに取得することで、最初から品質を向上させる方法を示します。最初にCIを実行しても、コードベースは変更されません。
次に、FitNesse、Watinなどを使用したアプリケーションの自動エンドツーエンドテストを紹介します。これは、コードがまだ機能していることを確認する優れたテストツールがある場合に、コードのリファクタリングがどのように恐れられるものではないかを示しているはずです。
次に、穏やかなリファクタリングを実行して、UIからビジネスロジックとドメインオブジェクトを分離し(まだ存在しない場合)、単体テストを導入します。これはさらに、リファクタリングがいかに優れているかを示しています。
ある種の関心の分離を目指しているので、デザインパターン(IoCなど)が自然に明らかになり始めます。データ層をORMに置き換えることができることも明らかです。
リファクタリングするときに、テスト駆動開発が実際に優れたコードの作成をどのように高速化できるかも示します。これはおそらく、新しい開発で初めて表示されるのが最も簡単です。そうでなければ、カルチャーショックです。
個人や団体によると思います。ほとんどすべてのショップが、これらのコンセプトのいずれかに触れています。そこから、開発者またはチームが吸収できると思われる速さで新しい概念を紹介します。チームが重要な原則や概念のいくつかを拒否し始めているのを見るのは、非常に憂鬱です。また、誰かが CI、IoC、またはモック フレームワークの使用の背後にある原則を理解している と思い込まないようにしてください。
Alt.NETポッドキャストはいくつかのアイデアを得るのに良い場所かもしれません。継続的改善、アジャイル、DI / IoC、ORM、Rubyを使用したOOPなどに関するポッドキャストがあります(この順序で)。
私にとって、IoC/DIとTDDを擁護したのは同僚でした。彼はまた、私を.netユーザーグループに連れて行ってくれたので、彼は、新しい奇妙なテクノロジーを使用するためにそれらを使用することを愛する、1回限りのクレイジーな男ではないことがわかりました。
Generics、デリゲート、Linq、Lambda 式について知らない人が多いと思います。
ほぼ同時にすべてを伝えると、彼らはすべてを落とすだけです。
初心者のプログラマーに DSL とは何かを教えないように、SVN について知らせることはできます。
私がALT.NETterになるということは、単に何かがそこにあることを彼らに知らせるためではなく、彼らがそれを理解し、役立つと感じられるようにするためです。