まず、ブログのリンク
192401潘チェンChuancheng:双晶のメンバーは、リンクをブログ
https://www.cnblogs.com/meethigher/
二、GitHubのリンク
RandomFormula:https://github.com/Chenchuancheng/RandomFormula
第三に、コードレビュー
192の401クラス陳Zhuanchengコードレビューのテーブル
コードレビューレビューフォーム | ||
---|---|---|
概要セクション | ニーズや仕様、それに沿ってコード? | に沿って、 |
コード思慮深いデザインであれば? | それはあります | |
読みやすさをコーディングする方法? | 理解しやすい、などの簡単な言葉 | |
コードは、それを維持するのは簡単ですか! | 簡単ではありません | |
コード実行の各ラインとハァッ、それを検討? | 、コンパイラエラー0、0警告 | |
設計仕様 | デザインパターンやアイテム、既知の一般的に使用されるモードに適合するように設計されて? | いいえ、このクラスは、単一の機能を実現します |
何もあり、ハードコーディングされていないかなど、文字列/数値は、存在していますか? | いいえ、方法または変数の値がすることによって得られます | |
それは移植の将来に影響を与えるかどうか、特定のプラットフォームに依存して何のコードはありませんか? | 限りJava環境があるので、どこでも実行 | |
開発者は、達成するための機能で、既存のライブラリ/ SDK /フレームワークを使用できるように新しいコードを書くのか?すべてを再実装しなくても呼び出すことができ、このプロジェクトで同様の機能があるかどうか? | そこ。それはあります | |
クリアすることができる未使用のコードはありませんか? | いや、すでに合理化していました | |
コードの仕様 | 標準部品やスタイルに合わせてコードを修正しますか? | 変数の命名法は、こぶの命名法です。プログラミングスタイルは、カーニハンのスタイルで使用されています |
最良のコード部分 | エラー処理はありませんか?外部関数呼び出しの場合、戻り値や例外処理をチェック! | そこ。それはあります |
エラーのパラメータの受け渡しは、文字列の長さは、バイトまたは文字の長さである、ゼロまたは1カウントがカウントを開始しているのですか? | エラーなし。長さが0のカウントを開始するために、文字の文字列の長さであります | |
どのように境界条件を扱いますか?どのようにデフォルトの分岐switch文が処理されますか?ループ無限ループをすることが可能ですか? | 境界条件は、スタックの底部は、スタックの底を防止するために、スタックの底部にエラーが#を格納し、空であると言います。 | |
私たちは本当に同じ条件が満たされていることを信じていることを確実にするためには使用アサーション(アサート)はありませんか? | バイヤーはありません | |
リソースの使用は、どこどこ解放するために、適用するのですか?かどうかはリソースリークがあるかもしれませんか?最適化の余地はありませんか? | ooxxooxx | |
とデータ構造要素よりも少なくありませんか? | そこでは、スタック#の下に保存されています | |
効能 | どのようにコードのパフォーマンス?最悪のケースは何ですか? | 最悪時間計算量T = O(N) |
サイクルの重要な部分を最適化することができます場合は特に、コード、 | ノー | |
通話時間外のシステムおよびネットワークのためのかどうか?どのように対処するには? | いいえ、役に立たないシステムやネットワークへの通話 | |
可読性 | 読みやすさをコーディングする方法?十分なコメントがありますか? | 簡単で、このような言葉を理解しやすいです。実際のコードよりコメント |
テスト容易性 | コードが更新されたり、新しいユニットテストを作成する必要がある場合は? | 必要はありません。 |
192401クラスシェンJiadongコードレビューのテーブル
コードレビューレビューフォーム | ||
---|---|---|
概要セクション | ニーズや仕様、それに沿ってコード? | に沿って、 |
コード思慮深いデザインであれば? | それはあります | |
読みやすさをコーディングする方法? | グッド可読性 | |
コードは、それを維持するのは簡単ですか! | イージー | |
コード実行の各ラインとハァッ、それを検討? | 、コンパイラエラー0、0警告 | |
設計仕様 | デザインパターンやアイテム、既知の一般的に使用されるモードに適合するように設計されて? | ノー |
何もあり、ハードコーディングされていないかなど、文字列/数値は、存在していますか? | いいえ、方法または変数の値がすることによって得られます | |
それは移植の将来に影響を与えるかどうか、特定のプラットフォームに依存して何のコードはありませんか? | 限りJava環境があるので、どこでも実行 | |
開発者は、達成するための機能で、既存のライブラリ/ SDK /フレームワークを使用できるように新しいコードを書くのか?すべてを再実装しなくても呼び出すことができ、このプロジェクトで同様の機能があるかどうか? | そこ。それはあります | |
クリアすることができる未使用のコードはありませんか? | ノー | |
コードの仕様 | 標準部品やスタイルに合わせてコードを修正しますか? | 変数の命名法は、こぶの命名法です。プログラミングスタイルは、カーニハンのスタイルで使用されています |
最良のコード部分 | エラー処理はありませんか?外部関数呼び出しの場合、戻り値や例外処理をチェック! | そこ。それはあります |
エラーのパラメータの受け渡しは、文字列の長さは、バイトまたは文字の長さである、ゼロまたは1カウントがカウントを開始しているのですか? | エラーなし。長さが0のカウントを開始するために、文字の文字列の長さであります | |
どのように境界条件を扱いますか?どのようにデフォルトの分岐switch文が処理されますか?ループ無限ループをすることが可能ですか? | サイクルは死んでいません | |
私たちは本当に同じ条件が満たされていることを信じていることを確実にするためには使用アサーション(アサート)はありませんか? | バイヤーはありません | |
リソースの使用は、どこどこ解放するために、適用するのですか?かどうかはリソースリークがあるかもしれませんか?最適化の余地はありませんか? | ooxxooxx | |
とデータ構造要素よりも少なくありませんか? | ノー | |
効能 | どのようにコードのパフォーマンス?最悪のケースは何ですか? | 最悪時間計算量T = O(N) |
サイクルの重要な部分を最適化することができます場合は特に、コード、 | ノー | |
通話時間外のシステムおよびネットワークのためのかどうか?どのように対処するには? | いいえ、役に立たないシステムやネットワークへの通話 | |
可読性 | 読みやすさをコーディングする方法?十分なコメントがありますか? | 可読性があり、良いです |
テスト容易性 | コードが更新されたり、新しいユニットテストを作成する必要がある場合は? | 必要はありません。 |
四、ペアプログラミング
1.基本的なコーディング仕様
- コード名が始まるか(アンダースコアなどは、$#記号)の特殊文字で終了することはできません。
- 代码中的命名严禁使用拼音与英文混合的方式,更不允许直接使用中文的方式。
- 类名使用UpperCamelCase风格,必须遵从驼峰形式。
- 方法名、参数名、成员变量、局部变量都统一使用lowerCamelCase风格,必须遵从驼峰形式。
- 常量命名全部大写,单词间用下划线隔开,力求语义表达完整清楚,不要嫌名字长。
- 抽象类命名使用Abstract或Base开头;异常类命名使用Exception结尾;测试类命名以它要测试的类的名称开始,以Test结尾。
2. 结对编程的感受
- 一个人编写代码,总是有种灯下黑的现象。可能你自己犯的很微小的错误,你花了大把大把的时间,还是搞不出来。而另一个人只需要看一下就能指出,这提高了复审效率。
- 可以不断从别人那里学习,提高自己的水平。这次结对编程,我们互相学到了很多,比如良好的代码风格,清晰的编码思路,以及熟练的调试技巧等
- 通过两个人的讨论,更好的解决问题等。
3. 结对场景照片
五、实现新增需求
增加的需求:
- 考虑数据异常处理问题,如在输入题目生成范围的数据时,输入了“abc“等字符数据,程序如何处理。
- 增大算式生成数的范围(如整数存不下的数),程序如何处理。
对于1,2两个需求,如果不满足输入的条件,捕获异常之后,重新进行输入。