プログラミングパラダイム
プログラミングパラダイム
抽象化
参考:抽象クラスを使うメリット
https://qiita.com/bluepost59/items/eef6f48fdd322b0b9791
参考:【10分でわかる】オブジェクト指向とは?プログラミングに必須のクラスやオブジェクト指向を解説!【Java,Python,PHP他、全言語対応版】
https://www.youtube.com/watch?v=CTIAYv88xj4
なるほど。上記によってクラスとインスタンスの違いがより明確になりました。
クラス(抽象化)をつくり、インスタンス(具体的な歴史)を創る。
それではPythonにおいてクラスの作り方やインスタンスをどうやって構築していけば良いでしょうか。
#1-1:インスタンス
#1-1-5:出力結果
programming paradigm
覚えておくワード
手続き型プログラミング
オブジェクト指向プログラミング
ステート(状態)
-
手続き型プログラミング
途中からステートを変えつつ手続きを踏んでいく手法。
Point
データをグローバル変数として持ちつつ、関数を用いて上記データを操作する。
手続き型プログラミングのデメリット
・予期しないエラーが起こりやすくなる。
・関数のグローバルステートの読み書きが多くなり把握できにくい環境になる。
・データを壊すようなプログラムを書いてしまう。
・プログラムが肥大するにつれ、グローバル変数も増す。
・関数それぞれがグローバル変数を読み込むため、プログラム維持が難しくなる。
上記の問題をどのように対処すべきか?
A.グローバル変数の多用を避ける。
Point
- 関数の独立性を高めることができる
- 理解しやすくなる
- バグの発生を抑えるコードを書くことができるようになる
上記の特徴を踏まえ、上手にプログラミングを活用していこう。
関数型プログラミング
上記の解釈では理解できなかったので、試しに例題をだしつつ解説しているサイトにて一読してみた。
参考一覧:
①Pythonで関数型プログラミングのエッセンスに触れてみよう | 侍エンジニアブログ (sejuku.net)
②Pythonを使って関数型プログラミング Part.1 - ログミーTech (logmi.jp)
上記の説明をみても理解が難しかった。しかし、打開するためのヒントを見つけた。
強化すべき勉強内容
- if文
- for文
- 関数
上記勉強内容をいま一度復習し、他の問題集などで慣れる必要がありそうだ。
この項目に関しては流し読みしつつ、理解できるようなスキルを持った時、再度学習すればよいと感じた。
まずは基本+実践である程度の力をつけよう!