PHPフレームワーク・Linux+模擬演習

講座概要

講座名 PHPフレームワーク・Linux+模擬演習
概要 PHP・Web開発基礎の内容に加えて、より応用的なアプリケーション作成や、MVCモデルの考え方に基づくフレームワークにも触れることができる構成になっています。
カリキュラムの終盤に、研修の集⼤成として、「模擬システム開発実務演習」を実施し、システム開発における上流から下流まで全⼯程の⼀連の流れを経験し、最終的にはプレゼンテーションで成果の発表を⾏います。
プログラミング未経験の方でも、PHPやMVCモデルでのWebアプリケーション開発の流れを掴むことができる構成となっています。
学習ゴール ・PHPの基本的な文法がわかる
・配列、フォームデータ、条件処理を扱うことができる
・繰り返し処理を扱うことができる
・仕様に合わせた関数を作成し、活用できる
・ファイル入出力の機能を組み込むことができる
・データベース(MySQL)と連携する機能を組み込むことができる
・Webブラウザ上で動作するアプリケーションを作成することができる
・MVCモデルに基づくファイル構成でアプリケーションを作成することができる
・提示された情報を元に、Webアプリケーションを設計し、製造することができる
講座構成 ・プログラム作りの考え方
・ブラインドタッチ
・HTML&CSS入門
・PHP入門
・PHP基礎
・PHP基礎 実践アプリ作成
・MySQL&SQL入門
・PHPデータベース連携
・PHPデータベース連携 実践アプリ作成
・SQL基礎
・ECサイト 実践アプリ作成
・PHP・フレームワーク基礎
・PHP・フレームワーク 実践アプリ作成
・DB設計演習
・Linux入門
・模擬システム開発演習
取得資格 PHP7初級試験の7割(合格ライン)相当の知識を習得できます
受講形態 ・対面型受講 ・オンライン受講 ・ハイブリット型(対面型/オンラインの組み合わせ)
※ご希望に合わせて選べます。
使用ツール 学習管理システム、Youtube(動画視聴用)、eclipse(スクールによる設定済)、個別質問対応システム(slackと連動)、ZOOM(オンライン出欠確認・ライブ講義用)
目次 研修内容
アルゴリズム&フローチャート作成入門 プログラム作りの考え方の知識を習得する。
  • アルゴリズムとは
  • 変数と配列
  • データ構造
  • 基本的なアルゴリズム
  • アルゴリズムとその表現方法について
  • フローチャートの描き方
  • フローチャートを使った処理の記述とトレース図
  • フローチャートのトレース
  • 単元テスト実施(総合的な理解度の確認を行います)
目次 研修内容
ブラインドタッチ 速く正確にキーボードを打つための練習をします。
  • タイピング演習
  • テスト
目次 研修内容
WEBサイト制作 WEBサイトを作るための基本的な知識を学習します。
  • WEBサイトとは
  • WEBブラウザの種類と機能
  • WEB制作の流れと準備
HTMLの基礎 WEBブラウザを利用してどのようにHTMLファイルが表示されるかを確認していきます。
  • HTMLとは
  • HTMLの基本構文
画像の挿入とリンクの設定 リンクの設定を学びます。
  • リンクの仕組み
  • 相対リンク
  • 絶対リンク
  • 画像にリンクを設定
フォームの作成 HTMLでフォームを表示する方法を学びます。
  • フォームの基本
  • フォームの構造部品
CSSの基礎 HTMLファイルに適用するデザインnをCSSで記述します。
  • CSSとは
  • CSSの記述方法
  • CSSファイルの関連付け
スタイルの記述 よく使用されるプロパティを使ってスタイルを設定します。
  • ボックスモデル
  • プロパティの設定
テーブルで表の作成 HTMLを学ぶ上で欠かせないテーブルについて学びます。
  • テーブルの基本構造と主要タグ
  • テーブルの詳細設定を行う属性
  • セルの連結
  • テーブル・セルのサイズの指定
WEBページのレイアウト WEBページを作成する上でのレイアウトについて学びます。
  • WEBページにおける段組み
  • 1カラムレイアウト
  • 2カラムレイアウト
  • 3カラムレイアウト
HTML5とCSS3の基礎 HTML5とCSS3の基礎、CSS3の代表的なプロパティについて学びます。
  • HTML5とは
  • CSS3とは
  • CSS3のプロパティ
目次 研修内容
はじめの一歩 PHPに関わる様々な仕組みについて簡単に学習します。
  • プログラムとは
  • PHP言語について
  • Webについて
  • HTMLについて
開発環境を準備しよう PHPで開発を行うための環境構築について学習します。
  • PHPの動作させる環境について
  • PHPの開発環境の構築方法
初めてのPHPプログラミング 実際に簡単なプログラムを作成し、動かしてみます。
  • PHPプログラム実行までの流れ
  • メモ帳でプログラム
  • Eclipseでプログラム
  • プログラムのエラーの対処方法
  • プログラムの命令文について
PHPプログラムの基本 PHPプログラミングを動作させるための、最も基本となる仕組みを学習します。
  • PHPファイルを表す拡張子について
  • 文字コードの関係について
  • PHPプログラミングの基本ルール
  • ブラウザへ出力仕組み
変数とデータ型 数字や文字の入れ物である変数とその型について学習します。
  • 変数の概念
  • データの種類
  • 文字列について
  • 特別な変数について
データをまとめて扱う配列 データをまとめて管理できる配列の仕組みを図を見ながら正しく理解します。
  • 配列の概念
  • 配列の利用方法
画面からの入力データを扱う 画面からの入力データを扱う仕組みを学習します。
  • 画面の入力部品について
  • Webサーバへデータを送る方法
  • 画面からの入力データを扱う
プログラムで計算しよう 数値の計算や文字の連結(足し算)を学習します。
  • プログラムでお計算の基本
  • 四則演算を行うための算術演算子
  • 変数を使った計算の方法
  • 文字列をくっつける文字列演算子
  • 代入処理を簡潔にできる複合演算子
  • インクリメントとデクリメント
条件で処理を変える プログラムの制御方法についてフローチャートを交えて学習します。
  • 制御構文の概念
  • if文
  • if - else文
  • if - else if - else文
  • 特殊な条件の判定方法について
  • 論理演算子による複数条件の設定
同じ処理を繰り返そう 繰り返し処理を行う制御文で実行される処理を表した表を見ながら動きを学習します。
  • 繰り返し処理の概念
  • for文
  • foreach文
  • break文とcontinue文
便利な関数を使おう PHPが初めから用意している、組み込み関数について学習します。
  • 関数の概念
  • PHPの組み込み関数
  • 組み込み関数の利用方法
  • 組み込み関数を利用したプログラム作成
目次 研修内容
PHPソースコードの記述方法 PHPでソースコードを記述する方法について学習します。
  • HTML文章の間にPHP処理を混在させる方法
  • HTML文章より先にPHP処理を記述する方法
  • PHPモードとHTMLモードを使った方法
定数と変数の型変換 特殊なデータの入れ物定数について学習します。
  • 定数の概念
  • 特別な定数について
  • 変数の型を変化させる方法
条件分岐文を詳しく知って扱おう 条件分岐を行う別の方法や、PHP入門より応用した使い方を学習します。
  • 条件分岐の種類
  • if文のネスト(入れ子構造)の概念
  • switch文
様々な方法の繰り返し処理 繰り返し処理を行う別の方法や、PHP入門より応用した使い方を学習します。
  • while文
  • do~while文
  • 多重ループの概念
  • 多重ループ内の制御文の動作について
配列を詳しく知って扱おう 大量にデータを扱える多次元配列や、配列操作関数の使い方を学習します。
  • 多次元配列の概念
  • 多次元配列を使ったプログラム
  • 配列操作関数の使い方
フォームデータの扱い方 フォームからの入力データをまとめて送る方法と、Webアプリケーションの安全性について学習します。
  • フォームデータをまとめて配列で送る方法
  • Webアプリケーションのセキュリティ
  • Webアプリケーションの危険性とその対策方法について
関数を作って使おう 自分で関数を作って使う方法について学習します。
  • ユーザー定義関数の概念
  • ユーザー定義関数を作って使う方法
  • 別のPHPファイルを取り込む方法
デバッグ方法を知っておこう プログラムを作成する際に欠かせないデバッグを、Eclipseのデバッグ機能を使って行います。
  • バグとデバッグについて
  • 画面に情報を表示するデバッグ方法
  • Eclipseのデバッガーを利用するデバッグ方法
動的な処理を行う PHPプログラムでHTMLを動的に作成する方法について学習します。
  • 条件分岐文を使って動的に画面を変化させる
  • 繰り返し文を使って動的にHTML文章を作成する
  • 単一ファイルで行うWebアプリケーション作成
ファイルを操作してみよう 外部データの取り込みや結果の出力方法を学習します。
  • ファイル操作の概念
  • ファイル入力処理
  • ファイル出力処理
  • ファイル操作のための事前確認方法
  • ファイルアップロードの仕組み
クッキーとセッションを利用しよう 自身のPC内やサーバ内にデータを保存して、複数のページ間でデータを共有する方法を学習します。
  • リクエストとレスポンスの関係について
  • データを複数ページ間で共有する方法
  • クッキーの概念と扱い方
  • セッションの概念と扱い方

「実践アプリケーション演習」では、神田ITスクール独自のStepByStepアプローチ方式の学習方法で、少しボリュームのあるプログラムを作成します。
実際のシステム開発プロセスに近い形でのアプリケーション開発を学ぶことができます。ここでは、以下の3点を行います。

コーディング(製造)
  • コーディングの力を身につけることを目的とした学習内容です。
テスト
  • アプリケーション開発で必須となるテストを行います。
ソースコードレビュー
  • 作成して頂いたアプリケーションのソースコードを、講師とレビューを行います。
目次 研修内容
数字当てゲームRequest版

プレイヤーが画面から入力した数字と、コンピュータが生成した正解数字と比較し、正解や不正解だった場合にメッセージを表示させます。

点数評価アプリケーション

プレイヤーが画面から入力した点数を判定し、点数に応じた評価メッセージを表示させます。

野球ゲームRequest版

プレイヤーが画面から入力した3桁数字と、コンピュータが生成した正解数字と比較します。数字と桁が合っていれば「ストライク」、数字のみ合っていれば「ボール」とし、プレイヤーはその結果を見て数字を予測し、3ストライクで勝利することを狙います。

数字当てゲームSession版(オプション)

数字当てゲーム(Request版)と仕組みは同じですが、ゲームに必要な情報をセッションで管理して行います。

野球ゲームSession版(オプション)

野球ゲーム(Request版)と仕組みは同じですが、ゲームに必要な情報をセッションで管理して行います。

目次 研修内容
データベースの基礎
  • データベースとは/
  • データベースの利点/
  • SQLとは
  • RDBMSの製品種類
データベース(MySQL)の操作
  • データベースの起動
  • データベースの停止
  • クライアントツール使用
  • データベース作成
SQLによるテーブルの定義
  • テーブルの作成 CREATE TABLE文
  • テーブルの削除 DROP TABLE文
SQLによるデータ操作
  • 挿入 INSERT文
  • 検索 SELECT文
  • 更新 UPDATE文
  • 削除 DELETE文
SQL演習
  • SQL基礎演習
目次 研修内容
PHPデータベース連携
  • PHPプログラミングとデータベースの概念
  • PHPとMySQLデータベースの操作方法と組み込み関数
  • MySQLサーバへ接続する方法
  • データベースを選択する方法
  • データを検索する方法
  • 検索データを扱う方法
  • データベースのデータを更新する方法
  • データベース操作を関数化する方法

「実践アプリケーション演習」では、神田ITスクール独自のStepByStepアプローチ方式の学習方法で、少しボリュームのあるプログラムを作成します。
実際のシステム開発プロセスに近い形でのアプリケーション開発を学ぶことができます。ここでは、以下の4点を行います。

設計書の理解
  • 仕様(基本設計書、詳細設計書、フローチャート等)に基づいて、アプリケーション作成を行います。
コーディング(製造)
  • コーディングの力を身につけることを目的とした学習内容です。
テスト
  • アプリケーション開発で必須となるテストを行います。
ソースコードレビュー
  • 作成して頂いたアプリケーションのソースコードを、講師とレビューを行います。
目次 研修内容
書籍販売システム(前哨戦)

設計書を元に作成する練習用のプログラムです。
書籍のデータをデータベースより取得し、書籍の一覧、登録、変更、削除などの機能を簡易的に提供します。

アンケートフォーム

PHPの機能を利用して、動的にフォーム画面を作成します。また入力データをデータベースで管理し、統計データを出せるようにします。

書籍販売システム

設計書を元に作成するより実践的なプログラムです。
書籍のデータをデータベースで管理して、書籍の一覧、登録、変更、削除などの機能を提供します。

目次 研修内容
表結合
  • 内部結合と外部結合
ビュー
  • ビューの作成 CREATE VIEW文
SQL関数
  • COUNT関数
  • MAX関数
  • MIN関数
  • SUM関数
  • AVG関数
グループ化とソート
  • GROUP BY句
  • ORDER BY句
副問合せ
  • 単一行副問合せと複数行副問合せ
トランザクション
  • トランザクション処理に適したテーブル設計

「ECサイト開発演習」では、神田ITスクール独自のStepByStepアプローチ方式の学習方法で、少しボリュームのあるプログラムを作成します。
実際のシステム開発プロセスに近い形で本格的なECサイト作成方法を学ぶことができます。ここでは、以下の4点を行います。

設計書の理解
  • 仕様(基本設計書、詳細設計書、フローチャート等)に基づいて、アプリケーション作成を行います。
コーディング(製造)
  • コーディングの力を身につけることを目的とした学習内容です。
テスト
  • アプリケーション開発で必須となるテストを行います。
ソースコードレビュー
  • 作成して頂いたアプリケーションのソースコードを、講師とレビューを行います。
目次 研修内容
ECサイト開発

ショッピングカート等のECサイトを制作します。

目次 研修内容
オブジェクト指向プログラミング
  • オブジェクト指向について
  • オブジェクトについて
  • クラスについて
  • クラスとオブジェクトの関係
クラスの基本
  • クラスの定義方法について
  • クラスの利用方法について
  • メンバへのアクセス方法について
アクセス修飾子とカプセル化
  • メンバのアクセスを制限する
  • アクセス修飾子について
  • カプセル化について
コンストラクタ
  • コンストラクタについて
  • コンストラクタの利用方法
クラスメンバとインスタンスメンバ
  • インスタンスメンバとクラスメンバについて
  • クラスメンバの注意点
ファイル分割
  • ファイル分割について
MVCモデルのフレームワーク
  • MVCモデルのフレームワーク
  • MVCモデルのフレームワークでの組み立て方
文字列
  • 文字列の比較をする
  • 文字列の長さを調べる
  • 文字列を変換する
例外処理
  • 例外処理のしくみを知る
  • 例外を拡張する
  • 2つ以上のcatchブロックで処理する
継承とオーバーライド
  • 継承のしくみを知る
  • クラスを拡張する方法
  • オーバーライドについて

「PHPフレームワーク 実践アプリ作成」では、神田ITスクール独自のクラスを使ったオリジナルフレームワークでのアプリケーション作成方法を学習します。
フレームワークの基本概念である、MVC(Model,View,Controller)モデルも組み込んで学習していきます。ここでは、以下の4点を行います。

設計書の理解
  • 仕様(基本設計書、詳細設計書、フローチャート等)に基づいて、アプリケーション作成を行います。
コーディング(製造)
  • コーディングの力を身につけることを目的とした学習内容です。
テスト
  • アプリケーション開発で必須となるテストを行います。
ソースコードレビュー
  • 作成して頂いたアプリケーションのソースコードを、講師とレビューを行います。
目次 研修内容
野球ゲーム(MVC版)

クラスを使ったMVCモデルで野球ゲームを作成します。
プレイヤーが画面から入力した3桁数字と、コンピュータが生成した正解数字と比較します。数字と桁が合っていれば「ストライク」、数字のみ合っていれば「ボール」とし、プレイヤーはその結果を見て数字を予測し、3ストライクで勝利することを狙います。

書籍販売システム(MVC版)

クラスを使ったMVCモデルで書籍販売システムを作成します。
書籍のデータをデータベースで管理して、書籍の一覧、登録、変更、削除などの機能を提供します。

提示されたシステム開発要件を元に、DB設計をグループワークで行います。

目次 研修内容
DB設計演習
  • データ抽出(洗い出し)
  • 論理設計(正規化、ER図作成)
  • 物理設計(DB設計書作成、SQL作成)

Linuxの基本操作方法や、サーバ環境の構築、シェルスクリプトの作り方等を学びます。

目次 研修内容
Linux入門
  • Linux入門
  • Linux環境構築
  • Linuxシェルスクリプト
  • ネットワーク入門

「模擬システム開発実務演習」では、実際のシステム開発の流れに沿って開発現場で必要な知識とスキルを擬似的に経験する事を目的としています。

目次 研修内容
模擬システム開発実務演習
  • ヒアリング/要件分析・定義
  • UI設計(画面設計)
  • 詳細設計/開発環境準備
  • テーブル設計
  • プログラミング(製造)
  • 単体テスト/結合テスト
  • プレゼンテーション準備/実施