学習時間 | 20時間 |
---|---|
難易度 | 初級 |
質問投稿 | 可 |
【PHP】オブジェクト指向で学ぶファイナルファンタジー風 CLI アプリの作成
PHPを用いてファイナルファンタジー風CLIアプリを作成します。オブジェクト指向の基本だけでなく、プログラミングをする上で重要な設計の部分の考え方などを図を交えながら詳しく解説します。リファクタリング・デザインパターン・現場でよく使われるテクニックなどについても学習します。
実例から学ぶ!オブジェクト指向とプログラミングの設計・テクニック
本教材はこれまでオブジェクト指向を知らなかったもしくは、勉強してこなかった方を対象として、オブジェクト指向というものを理解することを目標にしています。
実例を交えて説明するので、イメージしやすくするように構成しました。
また、プログラミングをする上で重要な設計の部分の考え方も掲載しています。
現場でよく使われるテクニックも学べるようにしています。
そもそもなぜオブジェクト指向を学ぶ必要があるのでしょうか?
現在、プログラミングスクールや、動画教材が流行したことにより、自分が学びたい部分のみ取捨選択し、ピックアップして学ぶことができるようになりました。
しかし、それはある弊害を生んでいます。
必要な知識が足りていない状態で次のステップに進んでしまうことです。(就職やフリーランスになるなど)
そのうちの1つが「オブジェクト指向」です。
オブジェクト指向はプログラミングと深く結びついており切っても離せない存在です。
世の中にあるプログラムのほとんどがオブジェクト指向に基づいており、みなさんが使われているLaravel を始めとするフレームワークもオブジェクト指向に則っています。
オブジェクト指向を学ぶことでフレームワーク等を使ったプログラミングの理解が深まり、コアコードも読めるようになります。
また、本教材では、考え方・設計の仕方も身につくためプログラミングのみならず、今後のエンジニア人生に役立つでしょう。
ぜひ、本教材を足がかりにしてオブジェクト指向の理解を深めていきましょう!
学習内容
- 生の PHP でのプログラミング
- プログラミングの設計の仕方
- オブジェクト指向
- UML
- カプセル化
- 継承
- ポリモーフィズム
- オーバーライド
- デザインパターン
- 現場で役立つプラスアルファのテクニック
- リファクタリング
- オートロード
- ユーティリティファイル
- 定数ファイル
完成物のイメージ
※今回作成するのは以下のようなコマンドライン上で動作するアプリケーションとなります。バナーはイメージとなります。
本教材の対象者
- オブジェクト指向について調べてみたが実装したことがない方
- アプリケーションを作る際の設計方法が分からない方
- Laravel などのフレームワークを使用しているが、コードで何をやっているかわからない・イメージがつかない方
- 現場でよく使われるテクニックを知りたい方
受講における必要条件
- PHP の基本構文を理解している
- 「ls」や「cd」など簡単なコマンドラインの知識
PHP を一度も触ったことがない方は、まずは Progate 等で学習することをおすすめします。
学ばないこと
- PHP の基本文法
- Laravel などのフレームワーク
本教材の対応バージョン
PHP5 系 以上
本教材で質問対応可能なOSや環境
- MacOS
- Cloud 9
本教材の構成
0 章 はじめに
- 0-1 この教材について
- 0-2 完成イメージ
- 0-3 開発を進める上で必要なツール(Mac)
- 0-4 アプリケーションの設計を考える
1 章 人間・敵クラスの作成
- 1-1 この章では何をするか?
- 1-2 これから作成するクラスの簡単な説明
- 1-3 ディレクトリの作成
- 1-4 main.php の作成
- 1-5 人間クラスの作成
- 1-6 敵クラスの作成
- 1-7 メイン処理の変更
- 1-8 まとめ
2 章 ジョブの実装
- 2-0 前章の回答例・解説
- 2-1 この章では何をするか?
- 2-2 これから作成するクラスの簡単な説明
- 2-3 継承の説明
- 2-4 オーバーライド
- 2-5 ポリモーフィズム
- 2-6 カプセル化
- 2-7 アクセサーメソッドとコンストラクタ
- 2-8 まとめ
3 章 アプリケーションの完成
- 3-0 前章の回答例
- 3-1 この章では何をするか?
- 3-2 黒魔道士・白魔道士クラスの作成
- 3-3 main.php の仕上げ
- 3-4 各クラスの修正
- 3-5 リファクタリング前編
- 3-6 リファクタリング後編
- 3-7 完成!
- 3-8 まとめ
4 章 プラスアルファの実装
- 4-1 この章では何をするか?
- 4-2 オートロードの実装
- 4-3 ユーティリティファイルの作成
- 4-4 定数ファイルの作成
- 4-5 デザインパターン
- 4-6 まとめ