今週、私は空いた時間を数日かけて電話帳アプレットを開発しました。
プログラムは小さく、シンプルで、醜いですが、確かに私が開発した最初の完全で使用可能なアプリです。構想、コーディング、簡単なテスト、そして最終的なインストール パッケージはすべて 1 人で完了します。私はこれまでに大量の C# と Java コード (数万行) や数え切れないほどのガジェットを C と C++ で書いてきましたが、大規模なプロジェクトのほんの一部しか完了しなかったか、退屈だったかのどちらかです。 「アルゴリズムの実現可能性をテストします。
プログラムの基本情報:
開発ツール: VS2010;
大 小: インストールパッケージ 500k;
有効コード: 約 500 行;
アーキテクチャ: .NET 4.0 クライアント プロファイル;
主なテクノロジー: XML 読み取り書かれた、WPF インターフェイスの作成
開発時間: 20 時間未満、推定約 15 時間
以下にいくつかのスクリーンショットを示します:
ログイン
メインインターフェイス
小さなプログラムですが、将来役立つかもしれないいくつかの経験を要約して書き留めました。
1. 貪欲になって、食べられる以上のものを求めないように注意してください。最後の戦車戦はそういう理由で打ち切られてしまったので、派手なインターフェースや斬新な構造、これまでにない新しい技術を使いたかったのですが、結果は行き詰まりでした。今回はそれを念頭に置き、機能を可能な限り簡素化し、インターフェイスを可能な限りシンプルにして、最終的に適切な結果を得ることができました。 2. まず技術的なテストを行ってから実際の開発を行う このプログラムでは、主要な技術やアイデアが実現可能かどうかをテストするために 3 ~ 4 つの小さなプログラムを作成し、完成後に開発に進みます。 3. レイヤーとブロックで開発し、最後に組み立てます。各層間の独立性を確保すると、開発が容易になるだけでなく、将来のメンテナンスやアップグレードも容易になります。データ ロジックとインターフェイスを分離すると、将来的にインターフェイスまたは基礎となるロジックを個別に改善できるようになります。上位レベルのインターフェイスを開発するときは、TestData クラスが使用されます。このクラスは、一連の静的メソッドを使用して、インターフェイスに必要な偽のデータを提供します。下位層の開発時にはコンソールプログラムを使用しました。両方がほぼ同じになるまで待ってから組み立ててください。 4. 走り抜くことを優先し、段階的に洗練を目指します。当初、インターフェイスは、インターフェイスの中央にインターフェイス名が書かれたいくつかの曲がったボタンだけでした。ボタンをクリックすると、別のインターフェイスに移動するか、メッセージボックスをポップアップしてボタンの名前を表示するかの 2 つの結果しかありません。最初にすべての関数を書き出し、急いで実装しないでください。実行後、null または新しいデータまたは偽のデータのインスタンスを返します。インターフェースは少しずつ充実していき、最終的には位置やサイズの調整などの些細なことができるようになります。 5. アプリを作成しましたが、インストール パッケージを入手できませんでした。VS を再インストールした後、インストール パッケージが、暗号化、インストール環境の監視、ユーザー定義のインストール、ロールバック、インストール ディレクトリなど、包括的で奥深いことがわかりました。 . 選択、インストール前の検証、データ圧縮、インストールの進行状況の追跡、以前のバージョンの修復またはアンインストールの検出... 6. プログラムの作成は反復であり、結果が真の値に達したときに停止することはありません。 2 つの反復の違いは十分に小さいため、これが解決策であると考えてください 将来の改善について (おそらくずっと前): 1. データ アクセスはまだ改善の余地があり、検討することができます。再利用; 2. インターフェースを改善する必要がある 3. コントローラーの役割を改善する必要があり、BL を削除して複数のファクトリーに置き換える必要がある 4. レコードをグループ化できない 5. 例外処理の問題 6. データ アクセスIDataAccess という共通の言い訳を使って分離することも考えられます。ファクトリはインターフェイスのみを呼び出し、データ アクセス クラスは呼び出しません。これにより、さまざまなストレージ メソッドへのデータ アクセスの拡張が容易になります 7. インポートとエクスポート 以上です現時点では、時期が来たらさらに追加します。 電話帳アプレット開発の完了と感想に関するその他の記事については、PHP 中国語 Web サイトに注目してください。