ITエンジニアになる! チャレンジ PHPプログラミング

概 要

これからWeb業界を目ざすあなたには、文法が簡単でWebに特化しているPHPをおすすめします。PHPを習得すると、企業向けのWebシステムを構築する仕事などに活かせます。本書は、架空のシステム開発会社に配属された新人をモデルに、開発現場で必要な知識とノウハウを学ぶPHP入門書です。プログラマーの仕事と実際から、要件定義と仕様書の作成、MySQLデータベースと連動するWebアプリの基本的な仕組みと作り方までわかります。

著者 中田亨
価格 本体2700円(税別)
ISBN 978-4-7980-5355-4
発売日 2018/6/19
判型 B5変
ページ数 424
CD/DVD
ダウンロード
表紙イメージ
購入 アマゾンで購入する
楽天で購入する

※リンク先によっては、販売ページが用意されていないことがあります。あらかじめご了承ください。

新しいウィンドウで開く 書籍購入のご案内

サポート

サポート情報は以下からご参照下さい。

サポート情報へのリンク

目次

Chapter 0 プログラマーになる!

0-1 ITエンジニアを目指している方へ

ITエンジニアに求められるスキル

論理的思考力を身につける方法

0-2 プログラミングは入り口、文法だけじゃダメ!

プログラムの目的を正しく理解する

アプリケーション開発の流れ

開発サイクル全体を意識する

0-3 ITエンジニアはコミュニケーション能力も重要

顧客の要求を引き出す

会話だけがコミュニケーションではない

他社の人とも仲良くする

0-4 要件定義と仕様書の作成

要件定義と設計工程の成果物

プログラマーが参照する設計書はひとつとは限らない

0-5 動作テストはここまで徹底する!

テストの観点を変えて段階的に実施する

なぜここまでテストを徹底するのか?

0-6 仕事の受注形態と納期

仕事はどこからやってくる?

勤務場所と契約形態

偽装請負に要注意

納期遵守は信用獲得の第一歩

0-7 プログラマーのキャリアパス

ITエンジニアのキャリアパス

キャリアプランとキャリアパス

札幌高裁の事例に学ぶ、ITプロジェクトが抱える課題

PHPとRuby、どちらを学ぶべき?

Mission 1 既存システムのカスタマイズ

Chapter 1 初めて配属されたプロジェクト

1-1 初めて配属されたプロジェクト

お客様の業務を知ろう

アプリケーションの概要を知ろう

マスタデータとトランザクションデータ

マスタが必要な理由

プロジェクト体制を知ろう

あなたに与えられたミッション

プログラムは設計書に沿って作成する

1-2 Webの仕組みを知ろう

Webページが表示される仕組み

静的ページと動的ページ

PHPはHTMLを生成することができる

1-3 PHPとは?

PHPの特徴と強み

サーバーサイド・スクリプトとクライアントサイド・スクリプト

PHPを使うとデータベースの読み書きができる

データベースの読み書きはサーバーサイド・スクリプトの役目

1-4 リレーショナルデータベースとは?

データベースの種類

主キーと外部キー

SQLとリレーショナルデータベース

MySQLとMariaDB

ローカル環境にWebサーバーを立てよう

ITエンジニアのワーキングスタイル

Chapter 2 フロントエンドの機能追加

2-1 ユーザーが入力できる項目を追加しよう

完成イメージと仕様を確認しよう

プログラムの概要を把握しよう

HTMLに備考欄を追加しよう

更新ボタンで入力内容をデータベースに保存しよう

備考欄にデータベースから読み取った内容を表示しよう

プログラミングに正解はない

2-2 PHPの基礎

PHPの基本構文

PHPのコメント

コメントの適切な使い方

変数(へんすう)

変数名の決め方

PHPの演算子

変数のデータ型

配列(はいれつ)

条件分岐(if文)

条件分岐(switch文)

ループ(for文)

ループ(while文)

ループ(foreach文)

関数

変数の寿命とスコープ

PHPのプログラムを保存するときはUTF-8

2-3 ページを遷移させよう

ページを遷移させる3つの方法

header()関数の注意点

遷移先のURLを動的に生成しよう

PHPの標準関数の調べ方

ページの遷移を関数化しよう

ユーザー定義関数は専用のファイルにまとめておこう

2-4 GETとPOSTを理解しよう

データはHTTPリクエストで送信される

GETとPOST

GETとPOSTの使い分け

送信データをPHPで受信しよう

受信データをそのまま処理してはいけない

2-5 セッションを使ってみよう

セッション変数とは

セッション変数を使ってみよう

ログアウト処理を追加しよう

共通の処理は積極的にユーザー定義関数にしよう

2-6 プログラムテスト(単体テスト)仕様書を作成しよう

プログラムテスト(単体テスト)の実施手順

テスト仕様書の作成

レビューで何も指摘がないのは良いこと?

2-7 プログラムの生産性を左右する「デバッグ」の基本

スタブとドライバ

スタブの例

スタブを作ってみよう

デバッグの基本「変数の中身を出力する」

デバッグの基本はプログラムの途中の状態を可視化すること

スタブやドライバの作成工数は考慮されているか?

適切なスケジュールを立てるには?

Mission 2 データベースの操作を覚えよう

Chapter 3 データベースの基本操作を理解しよう!

3-1 データベースの基本構造とデータ型

phpMyAdminでデータベースの中を見る

MySQLのデータ型

phpMyAdminの裏側ではSQLが実行されている

3-2 データベースを作成しよう

phpMyAdminの操作画面からデータベースを作成する

データベースを作成するSQLを取り出そう

SQLでデータベースを作成しよう

開発環境と運用環境

3-3 データベースにアクセスできるユーザーを作成しよう

データベースのユーザーとは?

ユーザーの作成

権限の設定(GRANT)

権限の削除(REVOKE)

PHPプログラムからデータベースに接続する

3-4 テーブルの追加と削除

テーブルを作成する

テーブルを削除する

テーブルやカラムの定義は後から変更できる

3-5 カラムの追加と主キー制約

カラムを追加する

カラムを削除する

カラムを変更する

大事なことを忘れていないかな?

主キー制約を追加する

主キー制約を削除する

データを操作するSQLに挑戦しよう

3-6 SQLでデータを追加しよう(INSERT文)

レコードを挿入する

エラーメッセージの見方

3-7 SQLでデータを更新しよう(UPDATE文)

レコードを更新する

WHERE句を考えてみよう

WHERE句の使い方

3-8 SQLでデータを削除しよう(DELETE文)

レコードを削除する

SQLタブを活用しよう

3-9 SQLでデータを取得しよう(SELECT文)

レコードを取得する

データの並び順を指定しよう

まずはSQLに慣れること

データベースの操作ミスで重大なトラブルを

   起こさないために

Mission 3 「操作権限マスタ画面」を作成しよう

Chapter 4 データベースを拡張しよう!

4-1 画面設計に挑戦しよう

ユーザー要件を読み取る(先輩のメモ)

利用者テーブルにレコードを登録する

画面操作の流れを確認する

画面設計に挑戦

設計書に落とし込む

画面設計とデータベース設計は表裏一体

4-2 テーブル設計に挑戦しよう

テーブル定義書の作成

外部キー制約とは?

外部キー制約が必要な理由

外部キー制約を設定する

なぜ自動的にインデックスが設定されるのか?

4-3 データベースの変更内容を一瞬で

コピーできるようにしよう

SQLが必要になった!

SQLを1本にまとめる

社内環境でSQLエラーが発生!

プログラムは再現性が重要

4-4 PHPに組み込むSQLを準備しよう

先にSQLを作成しておく理由

操作権限マスタ画面のSQL

利用者マスタ画面のSQL

共通化を意識しよう

プログラムは「書く」前に「描く」ことが重要

Chapter 5 PHPプログラムを作成しよう!

5-1 アプリケーション全体のプログラム構成を把握しよう

アプリケーションのプログラム構成

画面とプログラムの対応関係

変更が必要なプログラム

ほかにも変更しなければならない箇所が…

未知のプログラムは分解して読み解く

5-2 利用者マスタ画面のPHPプログラムを解読しよう

画面を表示するPHPプログラム(m002.php)

データベースを操作するPHPプログラム(m_user.php)

プリペアドステートメント方式

SQLの実行結果をfetch(フェッチ)する

5-3 利用者マスタ画面のPHPプログラムを変更しよう

変更内容の確認

データベースを操作するPHPプログラム(m_auth.php)

プリペアドステートメント方式と処理効率

DAOの読み込みを追加する(function.php)

画面を表示するPHPプログラム(m002.php)

コメントコーディングを活用しよう

表示と動作を確認しよう

文字列結合の別解

5-4 操作権限マスタ画面を作成しよう

作成内容の確認

データベースを操作するPHPプログラム(m_auth.php)

画面を表示するPHPプログラム(m003.php)

表示と動作を確認しよう

金太郎アメのようなプログラム構造を心掛けよう

5-5 メニュー画面のPHPプログラムを変更しよう

画面を表示するPHPプログラム(menu.php)

表示と動作を確認しよう

逆のパターンがテストできていない

5-6 重大な不具合が発生

重大な潜在不具合(バグ)が発覚

不具合(バグ)の対応手順

再現性の確認

原因の特定

修正方法の検討

修正の実施

動作確認

テストパターンを網羅する方法

5-7 エラー処理を追加しよう

問い合わせの電話対応でドキドキ

再現性を確認しよう

運用回避の方法を一次回答する

根本原因はSQL文の実行時エラー

2つの原因

PDOオブジェクトにエラーモードを指定する

エラーを拾わないとプログラムが停止する

プログラム例外とは?

プログラム例外とtry?catch構文

画面のプログラムを修正しよう

変数をスイッチのON/OFFのように使う「フラグ」

動作を確認しよう

医療機関マスタ画面の全プログラム

開発現場ではフレームワークを使う

PR

秀和システム