MENU

Fun & Interesting

Pythonコードのクオリティーを上げたいならこの本【見やすく、わかりやすく、安全に】

Video Not Working? Fix It Now

独学でPythonを勉強している時のもやもや(自分のコードってどうなん?、関数ってよくわからん、クラスってどこで使うねん…)が解消される名著! Python以外の言語でも使えることが書かれているから、独学でプログラミングを勉強しているすべての人にオススメするで。 ▼今回紹介した本 (Amazon)  https://amzn.to/4gw3NAH (楽天)  https://a.r10.to/h5Ssmt ◆仕事で使ってる自作Pythonアプリ  https://youtu.be/-HRp8KhrKno ◆サプーさんのチャンネル  https://www.youtube.com/@pythonvtuber9917 ~動画の目次~ 00:00 ダイジェスト 00:35 サプーさんとは? 02:29 オススメな理由1 基礎の解説が無い 04:52 オススメな理由2 独学者が知りたいことが書かれている 07:54 オススメな理由3 つまずきやすいポイントがわかりやすく ~この本の目次~ 第1章 コードは動けばなんでも同じ? 1-1 「動けばどんなコードでもいい」から卒業しよう 1-1-1 コードの読みやすさとバグの関係 1-1-2 良いコードが書けると最終的に「楽」になる 1-2 良いコードとはどんなコードなのか? 1-2-1 可読性 1-2-2 安全性 1-2-3 保守性 1-2-4 効率性 1-2-5 良いコードの基準は複合的な関係 1-3 Pythonらしいコードを書こう 1-3-1 コーディング規約 1-3-2 標準で用意されてる機能を活用する 1-3-3 グルー言語としてのPython 1-4 コードの書きかたにはトレンドがある 1-4-1 手続き型プログラミング 1-4-2 オブジェクト指向プログラミング 1-4-3 関数型プログラミング 1-4-4 Pythonとトレンド 1-5 モチベーションを保ちながらスキルアップする方法 1-5-1 手を動かすことが大切 1-5-2 成長に不安を感じたら 第2章 まずはコードの見た目を整えよう 2-1 コードのお作法「PEP8」の要点をおさえる 2-1-1 PEP8をすべて覚える必要はない! 2-1-2 インデント 2-1-3 空行 2-1-4 スペース 2-1-5 1行の長さ 2-1-6 チームのルール 2-2 コードフォーマッターblackで自動整形してみよう 2-2-1 コードフォーマッターのポイント 2-2-2 コードフォーマッターblackをVSCodeに設定する 2-2-3 コードフォーマッターblackをPyCharmに設定する 第3章 読みやすいコードに改善するテクニック 3-1 コードは適切なサイズで分割しよう 3-1-1 ブロックに分けると読みやすい 3-1-2 関数に切り出す 3-1-3 関数切り出しのコツ 3-1-4 モジュールに切り出す 3-2 スッキリしたif文を書くコツ 3-2-1 複数の比較演算子を使った条件式をまとめる 3-2-2 条件式の左側は調査対象の変数で統一する 3-2-3 辞書オブジェクトを使うとif文は不要になることがある 3-2-4 複雑な条件は関数にする 3-2-5 早期リターンを使う 3-3 ネストが深くなりすぎないようにしよう 3-3-1 なぜネストが深くなってしまうのか 3-3-2 深いネスト部分を関数で切り出す 3-3-3 リスト内包表記や高階関数を使う 3-3-4 データ構造を工夫する 3-3-5 早期リターンでネストを浅くする 3-4 変数名・関数名・クラス名の命名にも注力する! 3-4-1 PEP8の命名規則 3-4-2 「名は体を表す」名前と実態を一致させる 3-4-3 意味を持たない名前は極力避ける 3-4-4 対になる対義語・反対語を使う 3-4-5 ブール型はTrue/Falseがわかる名前にする 3-5 要所にわかりやすいコメントを残すには 3-5-1 コメントの箇所と量には注意 3-5-2 Docstringで説明文を書く 3-5-3 Docstringの書きかたをマスターする 第4章 Python便利機能でシンプルなコードを書く 4-1 for文で活躍する組み込み関数 4-1-1 enumerate関数でインデックス番号を自動生成 4-1-2 zip関数で複数リストを同時に処理 4-1-3 rangeで連続した数値をかんたんに作る 4-2 よく使う標準ライブラリ 4-2-1 osで環境変数の情報を取得 4-2-2 datetimeで日時を操作 4-2-3 pathlibでファイル・フォルダを操作 4-2-4 jsonでJSON形式文字列を辞書オブジェクトに変換 4-3 スッキリしたコードが書けるPython便利機能 4-3-1 リスト内包表記でリスト作成をシンプルにする 4-3-2 三項演算子でif文を短縮 4-3-3 f文字列でかんたんに変数を埋め込む 第5章 プロが意識する安全性が高いコードとは? 5-1 変数のスコープを意識しよう 5-1-1 スコープを理解していないことで起きるエラー 5-1-2 for文の中で定義された値は外でも有効 5-1-3 関数の中から関数の外の変数にアクセスができる 5-2 ミュータブル/イミュータブルの違いに要注意 5-2-1 ミュータブル/イミュータブルとは? 5-2-2 ミュータブルなオブジェクトのイコールによる代入は避ける 5-2-3 ミュータブルなオブジェクトの引数に注意する 5-2-4 ミュータブルなオブジェクトの引数にデフォルト値を設定するときの罠 5-3 「副作用」がないコードを書くために 5-3-1 副作用とは? 5-3-2 副作用がある関数はバグの温床 5-4 インプレースかどうかを意識しよう 5-4-1 インプレースとは? 5-4-2 違いを知らずにバグを仕込んでしまうことも 5-4-3 それぞれのメリットと使い分け 5-5 型ヒントで可読性と安全性を高める 5-5-1 型ヒントはバグを生みにくくする 5-5-2 型ヒントの基本的な使いかた 5-5-3 柔軟な型ヒント 5-5-4 関数以外で使う便利なケース 5-5-5 静的型チェッカーを併用する 5-6 安全性の要! 例外処理を書こう 5-6-1 例外処理を書いて次のアクションを促す 5-6-2 例外の送出で悪影響が広がる事態を防ぐ 5-6-3 例外はエスカレーションできる 5-6-4 例外処理を書くべき代表的な箇所 5-7 テストコード以外でも使えるassert文 5-7-1 assert文の基本的な使いかた 5-7-2 assert文を使うケース 5-8 ログを出力しよう 5-8-1 なぜログを出力するのか? 5-8-2 loggingライブラリを使う 5-8-3 例外発生時にエラーメッセージをログに出力する 5-8-4 ログの出力フォーマットを指定する 5-8-5 ログの設定ファイルを作成する 第6章 中級者への壁! クラスとオブジェクトに慣れる 6-1 クラスとはなにか? 概念を理解しよう 6-1-1 Pythonはほとんどのものがオブジェクト 6-1-2 クラスはオブジェクトを分類したもの 6-1-3 処理もいっしょにまとめてみよう 6-1-4 クラス設計の難しさ 6-1-5 selfとはオブジェクト自身のこと 6-2 dataclassでデータ格納に特化したクラスを作る 6-2-1 dataclassの基本とメリット 6-2-2 インスタンス変数にデフォルト値を設定する 6-2-3 「==」での比較は値の一致でTrueになる 6-2-4 frozen=Trueで変更不可能なオブジェクトを作る 6-2-5 asdictで辞書オブジェクトに変換する 6-3 オブジェクト指向を正しく理解する 6-3-1 オブジェクトを使う=オブジェクト指向ではない 6-3-2 カプセル化 6-3-3 継承 6-3-4 ポリモーフィズム 第7章 バグがあるかも? テストコードを書こう! 7-1 テストコードとはなにか? 7-1-1 アプリケーション開発におけるテストとは? 7-1-2 テストコードを書くメリット 7-2 pytestを使ってテストコードを書いてみよう 7-2-1 pytestの使いかた 7-2-2 fixtureを使って事前処理・事後処理を追加 7-2-3 自作関数をモックに置き換える 7-2-4 外部ライブラリの関数をモックに置き換える 7-2-5 例外発生を確認するためのテスト 7-2-6 テストコードが書きやすいコードとは 第8章 自力でエラーを解消するために 8-1 エラーを解消するためのヒント 8-1-1 はじめの一歩! エラーメッセージを読もう 8-1-2 デバッガーを使ってなにが想定と違うか確認しよう 8-1-3 ネットで情報収集をしよう 8-1-4 AIを活用しよう 8-2 YouTubeの質問で多いエラー 8-2-1 未定義のオブジェクトへのアクセス 8-2-2 未インストールのライブラリ使用 8-2-3 モジュールと同一名のファイル 8-2-4 パスの指定誤り #Python #独学 #プログラミング入門 #vtuber

Comment