情報系大学生のプログラミング

【Python入門】初めてのプログラミング(クラス)

今回は、Pythonのクラスについて学習していきましょう!

  • クラスの役割を知りたい
  • クラスについて基本的な使い方を知りたい
  • そもそもクラスってなんだ?初めてでもわかるような説明が欲しい

って方向けの内容となっています。

 

プログラミングスクールに関しては下の記事で詳しく記述しています。

こちらで紹介しているスクールは、すべて無料期間がある優良なスクールのみで、特徴を明確にし、読者のニーズに絞って丁寧に解説しました。初めての一歩として、無料説明会に参加してみてください。

【全スクール無料体験あり!】プログラミングを学びたい人におすすめのスクール5選!

Let’s practice a little!!

クラスとは

「クラス」とは、オブジェクト指向のプログラミングを行うための基本的な概念です。
では、「オブジェクト指向」とは何でしょうか?

オブジェクト指向。それは、人間のために考えられた、プログラムを組む時の煩雑さを解決するための方法で、「人間が把握できるようにするためのプログラム開発」を実現しようというものです。

うん!ムズイ!

まぁ、この説明自体がすでに煩雑みたいなところがありますね笑
つまりは、数百、数千行と大きくなったプログラムを追加、編集するときにできるだけわかりやすくしていこうということです。

Pythonにおける「クラス」を理解することのメリットは以下の通りです。

  • 膨大になったプログラムを編集しやすくなる
  • プログラムを再利用しやすくなる

おや?関数のメリットと同じような…

うん!一緒やで!笑

全体のコードを理解しやすく、まとめるといった点ではクラスも同じかもしれませんね。

唐突ですが、学校の教室はいくつかのクラス(教室)が存在し、そのクラスメートはいくつかのグループで存在します。このように、Pythonにおけるクラスは、関数をまとめたものと考えていただければいいと思います。

前回は例外処理についての記述でした。(唐突)

【Python入門】初めてのプログラミング(例外処理 – 2)

前回の記事

せっかくなので、復習のためにも、前回の内容にも関わるプログラムでクラスについての説明をしていきます。頑張っていきましょう!

クラスの用途

大きなプログラムを作っているときに、たくさんの関数を扱う時を想像してください。簡単な例として、四則演算を行うプログラムを考えていきましょう。以下のコードを見てください。

一つ一つの関数は簡単で分かりやすいものですが、こういった関数が何個もある場合、計算する関数を一つにまとめたいと思うようになります。具体的な書き方、使い方を見ていきましょう!

クラスの基本

クラスの最も基本となる書き方は以下の通りです。

「class」と予約語を書き、そのあとにクラスの名前を宣言してあげましょう。
予約語とは、「if」「not」など、すでに特定の意味があるものです。


先ほどの四則演算をクラスとしてまとめた場合の例と、その中の関数の呼び方や使い方の例は以下の通りです。

このクラスを実行する方法は以下の通りです。

肝心なのは、クラスの使い方ですね。「.」(ドット)は、日本語で言うと、「~の」という意味です。今回の場合、「Calc」クラスの(変数名)という感じですね。

このようにすることで、たくさんの関数をいくつかのカテゴリー別に分けることができ、全体のプログラムを把握しやすくなります。

Let’s practice more!!

複数のクラス

Pythonでは当然複数のクラスを作成することが出来ます。そして、クラスの中に別のクラスを用いることも可能です。今回の例では、先ほどの「Calc」クラスをそのまま再利用した例を紹介します。

まずは、「Select」クラスです。

このクラスでは、2つのメソッド(関数)が定義されています。

1つ目のメソッドでは、利用する関数を選択するために、受け取った数値をもとにそれぞれの処理を行っています。そして、2つ目のメソッドで、計算結果を出力するための処理を施しています。

続いて、「Start」クラスです。

このクラスでは、メソッドは1つで、計算方法を指定するための数字を入力する処理を記述しています。

最後に、「Start」クラスを実行するためのコードです。

今回の例では、クラスの使い方を理解するためのコードとなっており、あまり実用的ではないかなと思いますが、内容は理解していただけたでしょうか?

Today’s final practice!!

まとめ

本日は、オブジェクト指向を学ぶための準備として、クラスについて学習しました。ほかのクラスを参照する場合には、「(クラス名).(関数名)」という形で記述すればよいということがわかりました。

慣れるまでは難しいと思いますが、頑張ってください。

クラスとして、同じような処理や関数を分けることで、大規模なプログラムを組む際にも、認知的負担が軽減されるため、人間にとって役に立つ概念だということが理解していただけたら嬉しいです。

本日の理解度調査

今日の最後に理解度調査をします!!
どうすれば正しくなるのか考えてみてね!!

Q.縦30、横40の長さの三角形のもう一つの辺の長さを求めるプログラムを完成させよ。

正解は。。。

わかったかな??正解出来たら今回の項目は完璧だね!!

コメントを残す

メールアドレスが公開されることはありません。

CAPTCHA