自動テストによるJavaプログラミングの学習

それはすべて、私の友人がJavaでプログラムを作成したかったシンプルなものから始まりました。 当然、言語の構文を習得しただけで、プログラミングの経験はまったくないので、少なくとも何かを書くだけで十分です。 だから私はこれに何が最適かという疑問を考えていました。 私の意見では、パスの最初にある最善のことは、抽象的な「エンティティ」を記述すると同時に理解しやすい単純なクラスを作成することであるという結論に達しました。 その結果、自作の複素数のクラスを作成するためのトレーニングタスクを発行することが決定されました。

もちろん、このクラスのすべての要件を簡単にリーフレットに書いて、そのすべてのメソッドのインターフェースなどを記述することができますが、チェックする必要があり、友人が学習しているだけであるため、数回チェックされる可能性が非常に高くなります。

しかし、ここで私は実験の側面に引き付けられました、そして私は長い間TDDに興味がなかったので、実験は同じステップに行きました。





エラーが発生した場合、理由はすぐに画面に表示され、必要なのは想像力を示すことであるため、開発プロセスを高速化する一連のテストの形式でタスクを配置してみませんか?発生したエラーの原因が修正されるようにコードを編集します。次に、すべてのステップと結果を制御しながら、ステップごとにプログラムを複雑にすることができます。

さらに、この方法で、テストでこれらのメソッドの存在と正しい操作を制御するだけで、パブリックフィールドを使用する代わりにgetValue / setValueメソッドを使用して、良いスタイルのルールを植え付けることができます。



そして、今度はコードを作成します。 私が最初に決めたのは、メイン関数内のすべてのテストを通常のメソッド呼び出しで実行することでした。 この理由は何ですか? すべてが単純です-主なタスクは、段階的に段階的に複雑さを増したクラスの作成です。テストメソッドへの呼び出しのシーケンスを指定し、メソッドの1つが失敗した場合にプログラムを終了することにより、非常に簡単に調整できます。 また、テスト結果が何であるかを調べるには、F6キーを押して(ネットビンでこれを行いました)、出力ウィンドウから何が正しく動作するかを見つけ、コードの編集を続けます。



このシミュレータを「アクションのシーケンス」の形で構築することにしました。その結果、複素数クラスが独立して作成され、そのメソッドが実装されます。 これはすべて、クラスの存在をチェックする自動テストの形式で実装され、次に必要なメソッドの可用性をチェックし、これらのメソッドの結果のチェックを開始します。



このすべての結果は、小さなクラスを作成する初心者を「コーチ」するアプリケーションでした。 少なくとも有効な構文を記述するレベルで、言語構文の知識を暗示することを直ちに予約してください。

もちろん、そのようなアプリケーションでプログラマーを成長させることはできませんが、初心者にとっては、このトレーニング方法はさらに先へ進むための良い指標となります。



最終的に何が起こったのかを自分でテストしたい場合は、プロジェクトとともにアーカイブをダウンロードすることをお勧めします (netbinsの場合)。 利用規約は簡単です:

-プロジェクトを開く

-ファイルdoxygen / html / index.htmlを開きます(要件の説明といくつかの有用な情報、および内部のすべての説明が含まれています)

-アプリケーションを実行し、すべてのテストが完了するまで出力の指示に従います。

これにはすべて約1時間かかります。

私は建設的な批判を喜んでいます。



最後の質問は-そのようなトレーニングは理にかなっていて、それに影響があるのでしょうか?



All Articles