ユースケースとしてのクリーンで効率的で保守可能なコード - Python の作成
開発者としてしばらく働いたことがある人なら、機能するものを急いで書くのではなく、適切なコーディングの重要性を理解しているかもしれません。これがあなたにもたらす最大の欠点の 1 つは、コードをレビューする必要があるときに、自分が何をしようとしていたのかほとんど理解できず、他の人にとってはコードを読むのが難しいことです。
私は最近いくつかのコードをレビューしていますが、コードをクリーンで効率的にする必要性を強調することが重要だと思います。
C プログラミング言語の人気が高まっていた 1970 年代初頭、コーディング スタイルが議論の対象となり、これに関連した 2 人の著名な人物がブライアン カーニハンとデニス リッチーでした。
興味深いことに、Ada 言語は 1980 年代後半に厳格なコーディング ガイドラインと標準を強制しました。 1990 年代半ば、Python と Java には初期段階から強力なコーディング規約が組み込まれ、Python 拡張提案 (PEP 8) がうまく採用され、現在でも有効なコーディング規約となっています。
VS Code の flake8 コード lint 拡張機能は、私が使用する素晴らしい選択肢です。
ガイドラインは次のとおりです:
インデント: インデント レベルごとに 4 つのスペースを使用します。
行の長さ: すべての行を最大 79 文字に制限します。
命名規則: 関数名と変数名にはsnake_caseを使用し、クラス名にはCamelCaseを使用します。
例:
`# defining variables using snake_case total_price = 100 customer_email = "customer@example.com" # defining functions using snake_case def calculate_total_price(): pass class OrderManager: pass`
2.意味のあるコメントとドキュメント: Docstrings は、開発者が関数/メソッドの目的、パラメータ、戻り値を理解するのに役立ちます。一般に、それらを紹介し、複雑なロジックや決定を明確にするためにコメントを書くことは良い習慣です
例:
def calculate_total_price(price: float, quantity: int) -> float: """ Calculate the total price of items. Args: price (float): The price of a single item. quantity (int): The number of items purchased. Returns: float: The total price. """ return price * quantity
**3.コードの繰り返し: **単純な経験則として、既に実装されているコードの繰り返しを避け、代わりに DRY 原則に従い、再利用可能な関数を作成します。これに対する注意点は、新しい開発者が変更を実装するとき、開発者は省略された重複コードがあることに気づかない可能性があり、このエラーのせいで多くのことが台無しになる可能性があるということです。
たとえば、価格と数量を乗算して e コマース ストアの合計価格を計算する関数があるとします。
total_price_laptops = 1000 * 2 total_price_phones = 500 * 3 This, is easily done with reusable functions like this: def calculate_total(price, quantity): return price * quantity total_price_laptops = calculate_total(1000, 2) total_price_phones = calculate_total(500, 3)
4.タイプヒント: Python は動的に型付けされる言語であり、コードのタイプヒントにより可読性が向上し、エラーを早期にキャッチできます。どのようなデータ型が期待されるのかを理解しやすくなります。
例:
def get_discounted_price(price: float, discount: float) -> float: return price - (price * discount)
**5.テストの作成: **テストはコードの機能を検証します。 Unittest や pytest などの人気のあるフレームワークを使用すると、テストの作成と実行が簡単になります。テストによって、コードが期待どおりに動作することが確認され、変更またはリファクタリングを行うときにバグが発生するリスクが軽減されます。
def test_calculate_total_price(): assert calculate_total_price(100, 2) == 200
6.例外: 製品コードが意味のないコード行をクライアント ユーザーに出力したり、さらに悪いことに環境変数を出力したりすると、恥ずかしいことになる可能性があります。これを回避するには、例外 try/excel/finally 処理を使用して予測可能なエラーを管理し、アプリケーションが予期せずクラッシュしないようにする方が簡単です。
try: value = int(input("Enter a number: ")) except ValueError: print("That's not a valid number!") finally: print('Thank you!')
7.コードのモジュール化: コードを 1 つのファイルに保存しなければならないというルールはありません。大きなコード ブロックをより小さな再利用可能なモジュールに分割し、必要に応じてアプリケーション全体にインポートします。テストと更新が簡単になります。
8.バージョン管理: Git のようなバージョン管理システムは、最新の開発における基本的なベスト プラクティスです。他には、Beanstalk、PerForce、Apache Subversion などがあります。バージョン管理は変更を追跡し、コラボレーション中の人為的エラーや意図しない結果を大幅に削減します。
PEP 8 に準拠し、コードを DRY に保ち、意味のあるドキュメントを作成し、例外を適切に処理するなどのベスト プラクティスに従うことで、Python プロジェクトをプロフェッショナルでスケーラブルで保守しやすいものにすることができます。
今すぐこれらのヒントの実装を開始すると、コードの品質が顕著に向上することがわかります。
以上がユースケースとしてのクリーンで効率的で保守可能なコード - Python の作成。の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。