狠狠撸

狠狠撸Share a Scribd company logo
PHP MVC  フレームワーク symfony の始め方 [email_address] 2009/04/05
(いきなり) symfony のデメリット PHP5 以降が必須 (symfony1.2 では 5.2 以降 ) 日本語の解説サイトがあまり多くはない ややメモリ使用量が多い
symfony の特徴 アジャイルな開発スタイルに向いている オブジェクト指向プログラミング YAML O/R マッパー
特徴 – アジャイル ファイルが最初から適度に分散されている(適当な粒度) ->アクション、テンプレート、モデル /Peer 、フォーム、設定 各機能を付けたしながら全体を作り上げていくスタイルでも対応しやすい
特徴 – オブジェクト指向 PHP5 以降専用の恩恵 例1.オブジェクトメソッドとクラスメソッドの分離(モデルと Peer ) 例2.インターフェイス Iterator 、 ArrayAccess などを自前クラスに実装できる 共有ライブラリを作りやすい
特徴  - YAML 設定ファイルの多くは YAML で記述 -> http://ja.wikipedia.org/wiki/YAML 設定ファイルの記述の負担が少ない テストデータを YAML で記述して読み込む仕組み( Fixture File )  ->構文( PHP や SQL )を意識せずにテストデータを作れ、再読み込みなども楽
?
特徴 –  O/R マッパー O/R マッパークラス群が自動生成される symfony にて schema を定義 -> propel:build-all にてデータベースを生成 O/R マッパーを介してデータベースのレコードを取得
?
symfony を始める 4 つのポイント 基本的な symfony コマンドを覚える ファイルの構成と処理を記述する場所のルールを把握する フォームライブラリに慣れる O/R マッパーに慣れる
ポイント –  symfony コマンド symfony generate:app app 名 symfony generate:module app 名  module 名 symfony cc symfony propel:build-all 開発初期で頻繁に使用するのはこの 4 つ
ポイント – ファイル構成 /app/app 名 /modules/module 名 /   actions/   ??このモジュールのアクション   templates/  ??テンプレートファイル   config/    ??このモジュールの設定 /lib/model/  ??モデル /Peer クラス /lib/form/   ??フォームクラス
ポイント – フォームライブラリ 使いこなした方が便利。ただし他のフレームワークへの応用などがあまりきかない。 AdminGenerator を使用する場合は、理解必須 ウィジェット?バリデータの一覧 http://www.symfony-project.org/book/forms/1_2/en/A-Widgets   http://www.symfony-project.org/book/forms/1_2/en/B-Validators
ポイント –  O/R マッパー ( Propel に限定) 条件文の書き方がポイント Criteria クラスの定数?メソッド http://propel.phpdb.org/docs/api/1.3/runtime/propel-util/Criteria.html   基本的にはここにある定数?メソッドで抽出条件を作成する。 複雑な条件文の場合は、 Criteria::CUSTOM さらに複雑な場合は、直接 SQL を記述して実行し、 Peer メソッドの populateObjects を呼び出す 速度が要求される場合や、取得結果がモデルオブジェクトと大幅に異なる場合は、 populateObjects せずに、 PDO で直接レコードをフェッチする
Symfony 開発のルーティン(マクロ) データ構造を大まかに設計 URL 構造と画面遷移を大まかに設計 実装(ミクロなルーティン)   どういった URL で何を見せるのかを先に設計し、それに合わせてモジュールを作成していく。
Symfony 開発のルーティン(ミクロ) 設置?最初の app を生成、データベース接続情報の設定 schema.yml にスキーマを記述 propel:build-all モジュールを生成 モジュール内のアクション?テンプレートを編集 以下  2 ~ 5 の繰り返し
その他の便利な機能 AdminGenerator タスク テスト プラグイン
Ad

Recommended

PDF
叠谤颈诲驳别笔辞颈苍迟を使ったモデル駆动开発(贰罢ロボコン环境のご绍介)
Yuki Tsuchitoi
?
PPTX
オープンソースを利用したモテ?ル駆动トライアル
Akira Tanaka
?
PPTX
モテ?ルヘ?ースソフトウェア开発
Akira Tanaka
?
PPTX
XAML 入門
ShinichiAoyagi
?
PDF
KLab Social Game Platform ~Symfony1.4活用事例~
碍尝补产株式会社
?
KEY
PHPカンファレンス関西2012 Silex
Masao Maeda
?
PPT
20090415 すばらしきSymfonyの世界へようこそ
Hiromu Shioya
?
PDF
Symfony2 チュートリアル イントロダクション osc 2011 nagoya
Hidenori Goto
?
PDF
Symfony2 intro-20111204
Hidenori Goto
?
PPT
2009年の笔贬笔フレームワーク
Takuya Sato
?
ODP
20分で厂测尘蹿辞苍测蔼翱厂颁名古屋
Shingo Nakamura
?
PPTX
厂测尘蹿辞苍测开発者が尝补谤补惫别濒しようとして云々
mimizuk
?
PDF
YAPC::Asia 2014 - 半端なPHPDisでPHPerに陰で笑われないためのPerl Monger向け最新PHP事情
Junichi Ishida
?
PDF
CodeIgniter 貴方はどのフレームワークを使うべきか?
kenjis
?
PDF
第21回Creators MeetUp
Kenichi Mukai
?
PPT
驰颈颈绍介
ngi group.
?
PDF
20120623エンジニア濒迟
BiMihoujyun
?
PDF
フレームワークを使うべき 3 つの理由
Kenichi Mukai
?
PDF
PHP Now and Then 2012 at PHP Conference 2012, Tokyo Japan (in japanese)
Rui Hirokawa
?
PDF
WTM53 phpフレームワーク いまさらcodeigniter
Masanori Oobayashi
?
PPT
厂测尘蹿辞苍测事例绍介
Daichi Kamemoto
?
PPT
2009 PHP初心者
Hideo Kashioka
?
ODP
Symfony2 introduction
Hidenori Goto
?
PPTX
Symfony2
Yusuke Higaki
?
PDF
厂颈濒别虫入门
Takuya Sato
?
PDF
スクリプト言语笔贬笔攻略法
Rui Hirokawa
?
PDF
いまどきの驰颈颈フレームワーク
Hisateru Tanaka
?
PPT
symfony 1.2を支えるサブフレームワーク
Katsuhiro Ogawa
?
PDF
贰虫肠别濒で勤务时间合计2
Hidenori Goto
?
PDF
贰虫肠别濒で勤务时间合计
Hidenori Goto
?

More Related Content

Similar to 蝉测尘蹿辞苍测の始め方 (20)

PDF
Symfony2 intro-20111204
Hidenori Goto
?
PPT
2009年の笔贬笔フレームワーク
Takuya Sato
?
ODP
20分で厂测尘蹿辞苍测蔼翱厂颁名古屋
Shingo Nakamura
?
PPTX
厂测尘蹿辞苍测开発者が尝补谤补惫别濒しようとして云々
mimizuk
?
PDF
YAPC::Asia 2014 - 半端なPHPDisでPHPerに陰で笑われないためのPerl Monger向け最新PHP事情
Junichi Ishida
?
PDF
CodeIgniter 貴方はどのフレームワークを使うべきか?
kenjis
?
PDF
第21回Creators MeetUp
Kenichi Mukai
?
PPT
驰颈颈绍介
ngi group.
?
PDF
20120623エンジニア濒迟
BiMihoujyun
?
PDF
フレームワークを使うべき 3 つの理由
Kenichi Mukai
?
PDF
PHP Now and Then 2012 at PHP Conference 2012, Tokyo Japan (in japanese)
Rui Hirokawa
?
PDF
WTM53 phpフレームワーク いまさらcodeigniter
Masanori Oobayashi
?
PPT
厂测尘蹿辞苍测事例绍介
Daichi Kamemoto
?
PPT
2009 PHP初心者
Hideo Kashioka
?
ODP
Symfony2 introduction
Hidenori Goto
?
PPTX
Symfony2
Yusuke Higaki
?
PDF
厂颈濒别虫入门
Takuya Sato
?
PDF
スクリプト言语笔贬笔攻略法
Rui Hirokawa
?
PDF
いまどきの驰颈颈フレームワーク
Hisateru Tanaka
?
PPT
symfony 1.2を支えるサブフレームワーク
Katsuhiro Ogawa
?
Symfony2 intro-20111204
Hidenori Goto
?
2009年の笔贬笔フレームワーク
Takuya Sato
?
20分で厂测尘蹿辞苍测蔼翱厂颁名古屋
Shingo Nakamura
?
厂测尘蹿辞苍测开発者が尝补谤补惫别濒しようとして云々
mimizuk
?
YAPC::Asia 2014 - 半端なPHPDisでPHPerに陰で笑われないためのPerl Monger向け最新PHP事情
Junichi Ishida
?
CodeIgniter 貴方はどのフレームワークを使うべきか?
kenjis
?
第21回Creators MeetUp
Kenichi Mukai
?
驰颈颈绍介
ngi group.
?
20120623エンジニア濒迟
BiMihoujyun
?
フレームワークを使うべき 3 つの理由
Kenichi Mukai
?
PHP Now and Then 2012 at PHP Conference 2012, Tokyo Japan (in japanese)
Rui Hirokawa
?
WTM53 phpフレームワーク いまさらcodeigniter
Masanori Oobayashi
?
厂测尘蹿辞苍测事例绍介
Daichi Kamemoto
?
2009 PHP初心者
Hideo Kashioka
?
Symfony2 introduction
Hidenori Goto
?
Symfony2
Yusuke Higaki
?
厂颈濒别虫入门
Takuya Sato
?
スクリプト言语笔贬笔攻略法
Rui Hirokawa
?
いまどきの驰颈颈フレームワーク
Hisateru Tanaka
?
symfony 1.2を支えるサブフレームワーク
Katsuhiro Ogawa
?

More from Hidenori Goto (20)

PDF
贰虫肠别濒で勤务时间合计2
Hidenori Goto
?
PDF
贰虫肠别濒で勤务时间合计
Hidenori Goto
?
PDF
Symfony2 3rd-Party Bundles
Hidenori Goto
?
PDF
翻訳について
Hidenori Goto
?
PDF
Symfony2 Behat/BDD (#Symfony2study 4)
Hidenori Goto
?
PDF
Symfony2 behat-bdd
Hidenori Goto
?
ODP
Symfony2 workshop-0 (nagoya 2011/2/10)
Hidenori Goto
?
ODP
Symfony2 workshop-1 (nagoya 2011/2/10)
Hidenori Goto
?
PDF
Symfony2 workshop-2
Hidenori Goto
?
PDF
Doctrine2 odm-workshop-1
Hidenori Goto
?
PDF
Symfony2 workshop-1
Hidenori Goto
?
ODP
Symfony 1.4 TIPS from Openpne Source Code
Hidenori Goto
?
ODP
Orm Designer
Hidenori Goto
?
ODP
Symfony tdd
Hidenori Goto
?
ODP
Symfony2 caching
Hidenori Goto
?
ODP
蝉测尘蹿辞苍测で汎用设定値を読み书きするモデル等をプラグインにした话
Hidenori Goto
?
ODP
HTC Desireについて
Hidenori Goto
?
ODP
础产コマンドを使ったウェブアプリケーションのパフォーマンス计测
Hidenori Goto
?
ODP
TwitterのStreaming ApiをPhpから使う
Hidenori Goto
?
ODP
TwitterのStreaming APIについて
Hidenori Goto
?
贰虫肠别濒で勤务时间合计2
Hidenori Goto
?
贰虫肠别濒で勤务时间合计
Hidenori Goto
?
Symfony2 3rd-Party Bundles
Hidenori Goto
?
翻訳について
Hidenori Goto
?
Symfony2 Behat/BDD (#Symfony2study 4)
Hidenori Goto
?
Symfony2 behat-bdd
Hidenori Goto
?
Symfony2 workshop-0 (nagoya 2011/2/10)
Hidenori Goto
?
Symfony2 workshop-1 (nagoya 2011/2/10)
Hidenori Goto
?
Symfony2 workshop-2
Hidenori Goto
?
Doctrine2 odm-workshop-1
Hidenori Goto
?
Symfony2 workshop-1
Hidenori Goto
?
Symfony 1.4 TIPS from Openpne Source Code
Hidenori Goto
?
Orm Designer
Hidenori Goto
?
Symfony tdd
Hidenori Goto
?
Symfony2 caching
Hidenori Goto
?
蝉测尘蹿辞苍测で汎用设定値を読み书きするモデル等をプラグインにした话
Hidenori Goto
?
HTC Desireについて
Hidenori Goto
?
础产コマンドを使ったウェブアプリケーションのパフォーマンス计测
Hidenori Goto
?
TwitterのStreaming ApiをPhpから使う
Hidenori Goto
?
TwitterのStreaming APIについて
Hidenori Goto
?
Ad

Recently uploaded (7)

PPTX
勉強会_ターミナルコマント?入力迅速化_20250620. pptx. .
iPride Co., Ltd.
?
PDF
PGConf.dev 2025 参加レポート (JPUG総会併設セミナー2025 発表資料)
NTT DATA Technology & Innovation
?
PPTX
Protect Your IoT Data with UbiBot's Private Platform.pptx
ユビボット 株式会社
?
PPTX
Vibe Codingを始めよう ?Cursorを例に、ノーコードでのプログラミング体験?
iPride Co., Ltd.
?
PPTX
色について.pptx .
iPride Co., Ltd.
?
PDF
础滨技术共有会2025-06-05冲顿别别辫搁别蝉别补谤肠丑の理解と実践.辫诲蹿
Takuma Oda
?
PDF
Forguncy 10 製品概要資料 - ノーコードWebアプリ開発プラットフォーム
フォーガンシー
?
勉強会_ターミナルコマント?入力迅速化_20250620. pptx. .
iPride Co., Ltd.
?
PGConf.dev 2025 参加レポート (JPUG総会併設セミナー2025 発表資料)
NTT DATA Technology & Innovation
?
Protect Your IoT Data with UbiBot's Private Platform.pptx
ユビボット 株式会社
?
Vibe Codingを始めよう ?Cursorを例に、ノーコードでのプログラミング体験?
iPride Co., Ltd.
?
色について.pptx .
iPride Co., Ltd.
?
础滨技术共有会2025-06-05冲顿别别辫搁别蝉别补谤肠丑の理解と実践.辫诲蹿
Takuma Oda
?
Forguncy 10 製品概要資料 - ノーコードWebアプリ開発プラットフォーム
フォーガンシー
?
Ad

蝉测尘蹿辞苍测の始め方

  • 1. PHP MVC フレームワーク symfony の始め方 [email_address] 2009/04/05
  • 2. (いきなり) symfony のデメリット PHP5 以降が必須 (symfony1.2 では 5.2 以降 ) 日本語の解説サイトがあまり多くはない ややメモリ使用量が多い
  • 3. symfony の特徴 アジャイルな開発スタイルに向いている オブジェクト指向プログラミング YAML O/R マッパー
  • 4. 特徴 – アジャイル ファイルが最初から適度に分散されている(適当な粒度) ->アクション、テンプレート、モデル /Peer 、フォーム、設定 各機能を付けたしながら全体を作り上げていくスタイルでも対応しやすい
  • 5. 特徴 – オブジェクト指向 PHP5 以降専用の恩恵 例1.オブジェクトメソッドとクラスメソッドの分離(モデルと Peer ) 例2.インターフェイス Iterator 、 ArrayAccess などを自前クラスに実装できる 共有ライブラリを作りやすい
  • 6. 特徴 - YAML 設定ファイルの多くは YAML で記述 -> http://ja.wikipedia.org/wiki/YAML 設定ファイルの記述の負担が少ない テストデータを YAML で記述して読み込む仕組み( Fixture File ) ->構文( PHP や SQL )を意識せずにテストデータを作れ、再読み込みなども楽
  • 7. ?
  • 8. 特徴 – O/R マッパー O/R マッパークラス群が自動生成される symfony にて schema を定義 -> propel:build-all にてデータベースを生成 O/R マッパーを介してデータベースのレコードを取得
  • 9. ?
  • 10. symfony を始める 4 つのポイント 基本的な symfony コマンドを覚える ファイルの構成と処理を記述する場所のルールを把握する フォームライブラリに慣れる O/R マッパーに慣れる
  • 11. ポイント – symfony コマンド symfony generate:app app 名 symfony generate:module app 名 module 名 symfony cc symfony propel:build-all 開発初期で頻繁に使用するのはこの 4 つ
  • 12. ポイント – ファイル構成 /app/app 名 /modules/module 名 /   actions/   ??このモジュールのアクション   templates/  ??テンプレートファイル   config/    ??このモジュールの設定 /lib/model/  ??モデル /Peer クラス /lib/form/   ??フォームクラス
  • 13. ポイント – フォームライブラリ 使いこなした方が便利。ただし他のフレームワークへの応用などがあまりきかない。 AdminGenerator を使用する場合は、理解必須 ウィジェット?バリデータの一覧 http://www.symfony-project.org/book/forms/1_2/en/A-Widgets http://www.symfony-project.org/book/forms/1_2/en/B-Validators
  • 14. ポイント – O/R マッパー ( Propel に限定) 条件文の書き方がポイント Criteria クラスの定数?メソッド http://propel.phpdb.org/docs/api/1.3/runtime/propel-util/Criteria.html 基本的にはここにある定数?メソッドで抽出条件を作成する。 複雑な条件文の場合は、 Criteria::CUSTOM さらに複雑な場合は、直接 SQL を記述して実行し、 Peer メソッドの populateObjects を呼び出す 速度が要求される場合や、取得結果がモデルオブジェクトと大幅に異なる場合は、 populateObjects せずに、 PDO で直接レコードをフェッチする
  • 15. Symfony 開発のルーティン(マクロ) データ構造を大まかに設計 URL 構造と画面遷移を大まかに設計 実装(ミクロなルーティン)   どういった URL で何を見せるのかを先に設計し、それに合わせてモジュールを作成していく。
  • 16. Symfony 開発のルーティン(ミクロ) 設置?最初の app を生成、データベース接続情報の設定 schema.yml にスキーマを記述 propel:build-all モジュールを生成 モジュール内のアクション?テンプレートを編集 以下 2 ~ 5 の繰り返し