Osc2014

Preview:

DESCRIPTION

OSC2014@広島の登壇資料です。 https://www.ospn.jp/osc2014-hiroshima/modules/eguide/event.php?eid=9

Citation preview

FuelPHPで始めるモダンPHP開発!!

OSC2014@広島

What is it?

みなさんPHP好きですか?

What is it?

What is it?

本当にPHPはオワコンなのか?

What is it?

PHPでも楽しい開発はできます!!

What is it?

今日はそんなPHPの開発事情の話をします

あじぇんだ

1 自己紹介

2 モダンな開発

3 FuelPHPとは

4 本日のおすすめ機能

5 まとめ

あじぇんだ

1 自己紹介

2 モダンな開発

3 FuelPHPとは

4 本日のおすすめ機能

5 まとめ

自己紹介

名前:曽根 壮大(そね たけとも)

年齢:29歳(三人の子供がいます)

職場:Webエンジニア

所属:日本PostgreSQLユーザ会

技術的にはWeb系でLLとかRDB大好きです

自己紹介

名前:曽根 壮大(そね たけとも)

年齢:29歳(三人の子供がいます)

職場:Webエンジニア

所属:日本PostgreSQLユーザ会

中国支部長やってます

自己紹介

名前:曽根 壮大(そね たけとも)

年齢:29歳(三人の子供がいます)

職場:Webエンジニア

所属:日本PostgreSQLユーザ会

中国支部長やってます

あじぇんだ

1 自己紹介

2 モダンな開発

3 FuelPHPとは

4 本日のおすすめ機能

5 まとめ

モダンな開発

Modern(モダン)とは

モダンな開発

現代的であること。

今風であること。

モダンな開発

つまり今の流行最先端の開発環境

モダンな開発

三 大 要 素

IDE

※私の主観です

モダンな開発

三 大 要 素

IDE

実行環境

※私の主観です

モダンな開発

三 大 要 素

IDE

実行環境

フレームワーク

※私の主観です

モダンな開発

三 大 要 素

IDE→NetBeans

実行環境→Vagrant

フレームワーク→FuelPHP

※私の主観です

モダンな開発

今日はFuelPHPを中心にして話をします

あじぇんだ

1 自己紹介

2 モダンな開発

3 FuelPHPとは

4 本日のおすすめ機能

5 まとめ

FuelPHPとは

FuelPHPとは?

FuelPHPとは

FuelPHPとは?

PHP5.3以上を対象にしたWEBフレームワーク

FuelPHPとは

FuelPHPとは?

PHP5.3以上を対象にしたWEBフレームワーク

良いとこ取りしたRails+CodeIgnitorっぽい

FuelPHPとは

特徴

・規約より設定

FuelPHPとは

特徴

・規約より設定

・オートローダー

FuelPHPとは

特徴

・規約より設定

・オートローダー

・パッケージ管理

FuelPHPとは

特徴

・規約より設定

・オートローダー

・パッケージ管理

他にも先進的な機能が多数

FuelPHPとは

特徴

・規約より設定

・オートローダー

・パッケージ管理

他にも先進的な機能が多数

FuelPHPとは

規約より設定

規約のメリット

規約の重視は、コード量を減らし開発効率をあげる

FuelPHPとは

規約より設定

規約のデメリット

規約を知らないとコードが理解できない

規約を外れるとコードが複雑になる

FuelPHPとは

規約より設定

規約のデメリット

規約を知らないとコードが理解できない

規約を外れるとコードが複雑になる

FuelPHPとは

規約より設定

FuelPHP はシンプルであることを重視

FuelPHPとは

規約より設定

FuelPHP はシンプルであることを重視

規約による制約を課さない

FuelPHPとは

規約より設定

コードの書き方は自由

FuelPHPとは

規約より設定

コードの書き方は自由

学習コストの低さにつながる

FuelPHPとは

特徴

・規約より設定

・オートローダー

・パッケージ管理

他にも先進的な機能が多数

FuelPHPとは

オートローダー

・クラスを自動的に読み込む(自作したクラスも)

FuelPHPとは

オートローダー

・クラスを自動的に読み込む(自作したクラスも)

・使われる時に必要なクラスだけ読み込む

FuelPHPとは

オートローダー

・クラスを自動的に読み込む(自作したクラスも)

・使われる時に必要なクラスだけ読み込む

・ただし

・ファイル名とフォルダ名はすべて小文字

・クラス名の中のアンダースコア(_)はフォルダ区切り

FuelPHPとは

オートローダー

・クラスを自動的に読み込む(自作したクラスも)

・使われる時に必要なクラスだけ読み込む

・ただし

・ファイル名とフォルダ名はすべて小文字

・クラス名の中のアンダースコア(_)はフォルダ区切り

FuelPHPとは

オートローダー

クラスを作る度に呼び出しに悩むことが無くなる

FuelPHPとは

オートローダー

クラスを作る度に呼び出しに悩むことが無くなる

迅速な開発と柔軟な変更が可能

FuelPHPとは

オートローダー

フォルダ構成

├── controller

│ └── welcome.php

└── model

└── muser.php

FuelPHPとは

オートローダー welcome.phpからmodel/muser.phpのクラス名「Model_Muser」を呼ぶ

// インスタンス化

$m_user = new Model_Muser;

$user = $m_user->get_m_user();

// staticなメソッドの呼び出し

$user = Model_Muser::get_m_user();

FuelPHPとは

オートローダー

もし/test/model/muser.phpを呼びたかったら

Class フォルダ名_フォルダ名_実クラス名

$test = new Test_Model_Muser

FuelPHPとは

オートローダー

・クラスを自動的に読み込む(自作したクラスも)

・使われる時に必要なクラスだけ読み込む

・ただし

・ファイル名とフォルダ名はすべて小文字

・クラス名の中のアンダースコア(_)はフォルダ区切り

FuelPHPとは

特徴

・規約より設定

・オートローダー

・パッケージ管理

他にも先進的な機能が多数

FuelPHPとは

パッケージ管理

パッケージとは

FuelPHPとは

パッケージ管理

パッケージとは

Core クラスに含まれないライブラリ

FuelPHPとは

パッケージ管理

パッケージ名 説明

Oil コマンドラインユーティリティ

Auth 認証フレームワーク

Email Email の送信

ORM ORM を提供

Parser テンプレートパーサ

FuelPHPとは

パッケージ管理

他にもユーザの作成したパッケージを用出来る

FuelPHPとは

パッケージ管理

他にもユーザの作成したパッケージを用出来る

Core に手を入れることなく fuel の拡張出来る

FuelPHPとは

Composer

Composerを使ったライブラリ管理も出来る

FuelPHPとは

Composer

Composerを使ったライブラリ管理も出来る

従来のサードパーティも問題無く使える

FuelPHPとは

FuelPHPのインストール

・規約より設定

・オートローダー

・パッケージ管理

他にも先進的な機能が多数

あじぇんだ

1 自己紹介

2 モダンな開発

3 FuelPHPとは

4 本日のおすすめ機能

5 まとめ

本日のおすすめ機能

REST Controller

本日のおすすめ機能

REST Controller

RESTfulなAPIがすぐ作れる

本日のおすすめ機能

REST Controller

今から5分で作るREST API(demo)

本日のおすすめ機能

タスク

本日のおすすめ機能

タスク

バッチや定期的に実行する処理を実装する場所

本日のおすすめ機能

タスク

バッチや定期的に実行する処理を実装する場所

コマンドラインから呼べる

本日のおすすめ機能

タスク

・Modelの再利用

本日のおすすめ機能

タスク

・Modelの再利用

・ライブラリの共有

本日のおすすめ機能

タスク

・Modelの再利用

・ライブラリの共有

・ビジネスロジックの共通化

本日のおすすめ機能

タスク

今から3分で作るタスク (demo)

本日のおすすめ機能

タスク

標準でコードの自動生成などのコマンドも用意済み

本日のおすすめ機能

プロファイラ

本日のおすすめ機能

プロファイラ

プロファイラとしてPHP Quick Profiler が統合

本日のおすすめ機能

プロファイラ

プロファイラは、次の情報をブラウザの画面に表示します

• FuelPHP のログ

• 実行時間

• 実行したSQL 文

• メモリ使用量

• ロードされたファイル

• ロードされた設定項目

• セッションデータ

• GET データ

• POST データ

本日のおすすめ機能

プロファイラ

プロファイラはデフォルトでは無効

本日のおすすめ機能

プロファイラ

プロファイラはデフォルトでは無効

fuel/app/config/config.php

のprofiling をtrue に変更

本日のおすすめ機能

プロファイラ

今から1分でわかるプロファイラ (demo)

本日のおすすめ機能

よくあるフレームワークの機能

・バリデーション

本日のおすすめ機能

よくあるフレームワークの機能

・バリデーション

→勿論あります

本日のおすすめ機能

よくあるフレームワークの機能

・バリデーション

→勿論あります

・テンプレートエンジン

本日のおすすめ機能

よくあるフレームワークの機能

・バリデーション

→勿論あります

・テンプレートエンジン

→標準でヘルパーもあり、Twigとかも使えます

本日のおすすめ機能

よくあるフレームワークの機能

・バリデーション

→勿論あります

・テンプレートエンジン

→標準でヘルパーもあり、Twigとかも使えます

・マイグレーション

本日のおすすめ機能

よくあるフレームワークの機能

・バリデーション

→勿論あります

・テンプレートエンジン

→標準でヘルパーもあり、Twigとかも使えます

・マイグレーション

→標準はMySQLのみ

本日のおすすめ機能

よくあるフレームワークの機能

・バリデーション

→勿論あります

・テンプレートエンジン

→標準でヘルパーもあり、Twigとかも使えます

・マイグレーション

→標準はMySQLのみ

→ですがDoctrine2をパッケージ追加も可能

あじぇんだ

1 自己紹介

2 モダンな開発

3 FuelPHPとは

4 本日のおすすめ機能

5 まとめ

まとめ

FuelPHPで困ったときは

日本語メーリングリスト

日本語ドキュメント

まとめWiki

まとめ

楽しいPHPライフを!!

まとめ

ご静聴ありがとうございました。

Recommended