SlideShare a Scribd company logo
1 of 15
Download to read offline
Meet ♡ Phalcon
大平かづみ
Phalcon とは?
 PHP の 爆速 フレームワーク Σ(・ω・ノ)ノ!
 今までの MVC フレームワークの 集大成 のような出来!
 初心者でもわかりやすいシンプルなフレームワーク
 Rails を経験していれば、さらにとっつきやすい
 Windows, Linux/Unix/Mac 対応
 親しみやすいテンプレートエンジン Volt
 NoSQL と相性が良い
 便利な scaffold のGUIツール あり
爆速 PHP フレームワーク
 内側が C言語 で実装されている
 PHPのエクステンションとして実装されている
爆速 PHP フレームワーク
 内側が C言語 で実装されている
 PHPのエクステンションとして実装されている
シンプルで柔軟な、集大成フレームワーク
 単一/複数のMVCモジュールを扱える → Full MVC applications
 シンプルなREST API も実装しやすい → Micro Applications
 DIコンテナ を利用できる
 Rails の経験を活かせる、さらに便利
 Rails では gem で提供されていたページネイションなど、標準装備 → ex. Pagination
 Twitter Bootstrap を利用
 シンプルな Model
 NoSQL と相性が良い → ODM (Object-Document Mapper)
 使いやすいテンプレートエンジン Volt
 便利な scaffold の GUIツール あり → Developer Tools
シンプルで柔軟な、集大成フレームワーク
 単一/複数のMVCモジュールを扱える → Full MVC applications
 シンプルなREST API も実装しやすい → Micro Applications
 DIコンテナ を利用できる
 Rails の経験を活かせる、さらに便利
 Rails では gem で提供されていたページネイションなど、標準装備 → ex. Pagination
 Twitter Bootstrap を利用
 シンプルな Model
 NoSQL と相性が良い → ODM (Object-Document Mapper)
 使いやすいテンプレートエンジン Volt
 便利な scaffold の GUIツール あり → Developer Tools
テンプレートエンジン Volt
 シンタックス
 {% ... %} : PHPのステートメントとして置き換えられる
 {{ ... }} : <? echo … ; ?> として置き換えられる
 これは、既存のフレームワークでも よく採用されている シンタックス
 インスパイアを受けた Python の テンプレートエンジン Jinja
 Symphony のテンプレートエンジンも同じようなシンタックス
 気配り が効いていて、使って気持ちがいい
テンプレートエンジン Volt
 シンタックス
 {% ... %} : PHPのステートメントとして置き換えられる
 {{ ... }} : <? echo … ; ?> として置き換えられる
 これは、既存のフレームワークでも よく採用されている シンタックス
 インスパイアを受けた Python の テンプレートエンジン Jinja
 Symphony のテンプレートエンジンも同じようなシンタックス
 気配り が効いていて、使って気持ちがいい
ODM for MongoDB
 ODM = Object-Document Mapper
 ドキュメントをオブジェクトに変換するマッパー
 Collection クラスをオーバーライドすることで、
Model クラスと同様に NoSQL のデータを扱える
 CRUD (Create, Read, Update, Delete)
 find(), save(), delete()
 find() で利用できるパラメータ
 conditions, fields, sort, limit, skip
 validate() で利用できるパラメータ
 Email, ExclusionIn, InclusionIn, Numericality,
Regex, StringLength
ODM for MongoDB
 ODM = Object-Document Mapper
 ドキュメントをオブジェクトに変換するマッパー
 Collection クラスをオーバーライドすることで、
Model クラスと同様に NoSQL のデータを扱える
 CRUD (Create, Read, Update, Delete)
 find(), save(), delete()
 find() で利用できるパラメータ
 conditions, fields, sort, limit, skip
 validate() で利用できるパラメータ
 Email, ExclusionIn, InclusionIn, Numericality,
Regex, StringLength
Phalcon Development Tools
 Controllers
 Controller の名前を入力して生成
 Models
 指定した Model を生成(全テーブルも指定可能)
 Scaffold
 指定したテーブルから
Model, View, Controller を生成
 Migrations
 テーブル単位でマイグレーション可能
Phalcon Development Tools
 Controllers
 Controller の名前を入力して生成
 Models
 指定した Model を生成(全テーブルも指定可能)
 Scaffold
 指定したテーブルから
Model, View, Controller を生成
 Migrations
 テーブル単位でマイグレーション可能
さいごに
 Phalcon PHP Framework は、new BSD license に基づきリリースされています。
 尚、本資料における Phalcon からの引用、および画像については、
Creative Commons Attribution 3.0 License に基づき、使用しています。
このフレームワークを使って
お仕事したい方は!
RODEO.inc で一緒に作りませんか!
お待ちしております ヾ(・ω・)ノ
See you, again! :)

More Related Content

Viewers also liked

サンタクロースを支えるIT技術 @M_Ishikawa #yapcasia
サンタクロースを支えるIT技術 @M_Ishikawa #yapcasiaサンタクロースを支えるIT技術 @M_Ishikawa #yapcasia
サンタクロースを支えるIT技術 @M_Ishikawa #yapcasiaMasayuki Ishikawa
 
Behat Driven Development
Behat Driven DevelopmentBehat Driven Development
Behat Driven DevelopmentRyo Tomidokoro
 
Drupal 8 - モダンなアーキテクチャのPHPベースOSS CMS
Drupal 8 - モダンなアーキテクチャのPHPベースOSS CMSDrupal 8 - モダンなアーキテクチャのPHPベースOSS CMS
Drupal 8 - モダンなアーキテクチャのPHPベースOSS CMSTomoki Hasegawa
 
脆弱性もバグ、だからテストしよう PHPカンファンレス2015
脆弱性もバグ、だからテストしよう PHPカンファンレス2015脆弱性もバグ、だからテストしよう PHPカンファンレス2015
脆弱性もバグ、だからテストしよう PHPカンファンレス2015ichikaway
 
PHPの今とこれから2015
PHPの今とこれから2015PHPの今とこれから2015
PHPの今とこれから2015Rui Hirokawa
 
営業・運用を支える "気付ける" 管理画面
営業・運用を支える "気付ける" 管理画面営業・運用を支える "気付ける" 管理画面
営業・運用を支える "気付ける" 管理画面Masao Maeda
 
Visual Studio Code #phpcon2015
Visual Studio Code #phpcon2015Visual Studio Code #phpcon2015
Visual Studio Code #phpcon2015Aya Tokura
 
たのしい独自フレームワーク
たのしい独自フレームワークたのしい独自フレームワーク
たのしい独自フレームワークKenta USAMI
 
大規模Node.jsを支える ロードバランスとオートスケールの独自実装
大規模Node.jsを支える ロードバランスとオートスケールの独自実装大規模Node.jsを支える ロードバランスとオートスケールの独自実装
大規模Node.jsを支える ロードバランスとオートスケールの独自実装kidach1
 
PHPer女子が語る2015!こんなコードを書くヒトはモテない〜コラボ編〜@PHPカンファレンス2015 #phpcon2015
PHPer女子が語る2015!こんなコードを書くヒトはモテない〜コラボ編〜@PHPカンファレンス2015 #phpcon2015PHPer女子が語る2015!こんなコードを書くヒトはモテない〜コラボ編〜@PHPカンファレンス2015 #phpcon2015
PHPer女子が語る2015!こんなコードを書くヒトはモテない〜コラボ編〜@PHPカンファレンス2015 #phpcon2015Hikari Fukasawa
 
PHPデプロイツールの世界
PHPデプロイツールの世界PHPデプロイツールの世界
PHPデプロイツールの世界Yuuki Takezawa
 
Advanced nginx in mercari - How to handle over 1,200,000 HTTPS Reqs/Min
Advanced nginx in mercari - How to handle over 1,200,000 HTTPS Reqs/MinAdvanced nginx in mercari - How to handle over 1,200,000 HTTPS Reqs/Min
Advanced nginx in mercari - How to handle over 1,200,000 HTTPS Reqs/MinMasahiro Nagano
 
10年続いているwebサービスの画像サーバをノーメンテでftpサーバからs3互換のストレージサーバに移行している話
10年続いているwebサービスの画像サーバをノーメンテでftpサーバからs3互換のストレージサーバに移行している話 10年続いているwebサービスの画像サーバをノーメンテでftpサーバからs3互換のストレージサーバに移行している話
10年続いているwebサービスの画像サーバをノーメンテでftpサーバからs3互換のストレージサーバに移行している話 Masataka Kono
 
WebRTC開発者向けプラットフォーム SkyWayの裏側
WebRTC開発者向けプラットフォーム SkyWayの裏側WebRTC開発者向けプラットフォーム SkyWayの裏側
WebRTC開発者向けプラットフォーム SkyWayの裏側Yusuke Naka
 
PHP7ではなくHack/HHVMを選ぶ理由
PHP7ではなくHack/HHVMを選ぶ理由PHP7ではなくHack/HHVMを選ぶ理由
PHP7ではなくHack/HHVMを選ぶ理由Yuji Otani
 
新入社員のための大規模ゲーム開発入門 サーバサイド編
新入社員のための大規模ゲーム開発入門 サーバサイド編新入社員のための大規模ゲーム開発入門 サーバサイド編
新入社員のための大規模ゲーム開発入門 サーバサイド編infinite_loop
 
React JS and why it's awesome
React JS and why it's awesomeReact JS and why it's awesome
React JS and why it's awesomeAndrew Hull
 
いまどきのPHP開発現場 -2015年秋-
いまどきのPHP開発現場 -2015年秋-いまどきのPHP開発現場 -2015年秋-
いまどきのPHP開発現場 -2015年秋-Masashi Shinbara
 
サーバー未経験者がソーシャルゲームを通して知ったサーバーの事
サーバー未経験者がソーシャルゲームを通して知ったサーバーの事サーバー未経験者がソーシャルゲームを通して知ったサーバーの事
サーバー未経験者がソーシャルゲームを通して知ったサーバーの事Manabu Koga
 

Viewers also liked (20)

サンタクロースを支えるIT技術 @M_Ishikawa #yapcasia
サンタクロースを支えるIT技術 @M_Ishikawa #yapcasiaサンタクロースを支えるIT技術 @M_Ishikawa #yapcasia
サンタクロースを支えるIT技術 @M_Ishikawa #yapcasia
 
Behat Driven Development
Behat Driven DevelopmentBehat Driven Development
Behat Driven Development
 
Drupal 8 - モダンなアーキテクチャのPHPベースOSS CMS
Drupal 8 - モダンなアーキテクチャのPHPベースOSS CMSDrupal 8 - モダンなアーキテクチャのPHPベースOSS CMS
Drupal 8 - モダンなアーキテクチャのPHPベースOSS CMS
 
脆弱性もバグ、だからテストしよう PHPカンファンレス2015
脆弱性もバグ、だからテストしよう PHPカンファンレス2015脆弱性もバグ、だからテストしよう PHPカンファンレス2015
脆弱性もバグ、だからテストしよう PHPカンファンレス2015
 
PHPの今とこれから2015
PHPの今とこれから2015PHPの今とこれから2015
PHPの今とこれから2015
 
営業・運用を支える "気付ける" 管理画面
営業・運用を支える "気付ける" 管理画面営業・運用を支える "気付ける" 管理画面
営業・運用を支える "気付ける" 管理画面
 
Visual Studio Code #phpcon2015
Visual Studio Code #phpcon2015Visual Studio Code #phpcon2015
Visual Studio Code #phpcon2015
 
たのしい独自フレームワーク
たのしい独自フレームワークたのしい独自フレームワーク
たのしい独自フレームワーク
 
大規模Node.jsを支える ロードバランスとオートスケールの独自実装
大規模Node.jsを支える ロードバランスとオートスケールの独自実装大規模Node.jsを支える ロードバランスとオートスケールの独自実装
大規模Node.jsを支える ロードバランスとオートスケールの独自実装
 
PHPer女子が語る2015!こんなコードを書くヒトはモテない〜コラボ編〜@PHPカンファレンス2015 #phpcon2015
PHPer女子が語る2015!こんなコードを書くヒトはモテない〜コラボ編〜@PHPカンファレンス2015 #phpcon2015PHPer女子が語る2015!こんなコードを書くヒトはモテない〜コラボ編〜@PHPカンファレンス2015 #phpcon2015
PHPer女子が語る2015!こんなコードを書くヒトはモテない〜コラボ編〜@PHPカンファレンス2015 #phpcon2015
 
PHPデプロイツールの世界
PHPデプロイツールの世界PHPデプロイツールの世界
PHPデプロイツールの世界
 
Advanced nginx in mercari - How to handle over 1,200,000 HTTPS Reqs/Min
Advanced nginx in mercari - How to handle over 1,200,000 HTTPS Reqs/MinAdvanced nginx in mercari - How to handle over 1,200,000 HTTPS Reqs/Min
Advanced nginx in mercari - How to handle over 1,200,000 HTTPS Reqs/Min
 
10年続いているwebサービスの画像サーバをノーメンテでftpサーバからs3互換のストレージサーバに移行している話
10年続いているwebサービスの画像サーバをノーメンテでftpサーバからs3互換のストレージサーバに移行している話 10年続いているwebサービスの画像サーバをノーメンテでftpサーバからs3互換のストレージサーバに移行している話
10年続いているwebサービスの画像サーバをノーメンテでftpサーバからs3互換のストレージサーバに移行している話
 
Phpcon2015
Phpcon2015Phpcon2015
Phpcon2015
 
WebRTC開発者向けプラットフォーム SkyWayの裏側
WebRTC開発者向けプラットフォーム SkyWayの裏側WebRTC開発者向けプラットフォーム SkyWayの裏側
WebRTC開発者向けプラットフォーム SkyWayの裏側
 
PHP7ではなくHack/HHVMを選ぶ理由
PHP7ではなくHack/HHVMを選ぶ理由PHP7ではなくHack/HHVMを選ぶ理由
PHP7ではなくHack/HHVMを選ぶ理由
 
新入社員のための大規模ゲーム開発入門 サーバサイド編
新入社員のための大規模ゲーム開発入門 サーバサイド編新入社員のための大規模ゲーム開発入門 サーバサイド編
新入社員のための大規模ゲーム開発入門 サーバサイド編
 
React JS and why it's awesome
React JS and why it's awesomeReact JS and why it's awesome
React JS and why it's awesome
 
いまどきのPHP開発現場 -2015年秋-
いまどきのPHP開発現場 -2015年秋-いまどきのPHP開発現場 -2015年秋-
いまどきのPHP開発現場 -2015年秋-
 
サーバー未経験者がソーシャルゲームを通して知ったサーバーの事
サーバー未経験者がソーシャルゲームを通して知ったサーバーの事サーバー未経験者がソーシャルゲームを通して知ったサーバーの事
サーバー未経験者がソーシャルゲームを通して知ったサーバーの事
 

More from Kazumi IWANAGA

地味だけど劇的に便利になるGitHubリポジトリ設定あれこれ
地味だけど劇的に便利になるGitHubリポジトリ設定あれこれ地味だけど劇的に便利になるGitHubリポジトリ設定あれこれ
地味だけど劇的に便利になるGitHubリポジトリ設定あれこれKazumi IWANAGA
 
GitHub dockyardコミュニティ 竣工イベント!オープニング資料
GitHub dockyardコミュニティ 竣工イベント!オープニング資料GitHub dockyardコミュニティ 竣工イベント!オープニング資料
GitHub dockyardコミュニティ 竣工イベント!オープニング資料Kazumi IWANAGA
 
GitHub最新情報キャッチアップ 2023年6月
GitHub最新情報キャッチアップ 2023年6月GitHub最新情報キャッチアップ 2023年6月
GitHub最新情報キャッチアップ 2023年6月Kazumi IWANAGA
 
GitHub と Azure でアプリケーションとインフラストラクチャの守りを固めるDevSecOps
GitHub と Azure でアプリケーションとインフラストラクチャの守りを固めるDevSecOpsGitHub と Azure でアプリケーションとインフラストラクチャの守りを固めるDevSecOps
GitHub と Azure でアプリケーションとインフラストラクチャの守りを固めるDevSecOpsKazumi IWANAGA
 
高さ比べじゃない、キャリアは歩んできた道
高さ比べじゃない、キャリアは歩んできた道高さ比べじゃない、キャリアは歩んできた道
高さ比べじゃない、キャリアは歩んできた道Kazumi IWANAGA
 
GitHub Copilotとともに次の開発体験へ
GitHub Copilotとともに次の開発体験へGitHub Copilotとともに次の開発体験へ
GitHub Copilotとともに次の開発体験へKazumi IWANAGA
 
突如登場したAzure Developer CLIでなにができるのか?検証してみる
突如登場したAzure Developer CLIでなにができるのか?検証してみる突如登場したAzure Developer CLIでなにができるのか?検証してみる
突如登場したAzure Developer CLIでなにができるのか?検証してみるKazumi IWANAGA
 
GitHub Actions と Azure PaaS でプルリクエストごとに環境を ~ Azure Static Web Apps と Containe...
GitHub Actions と Azure PaaS でプルリクエストごとに環境を ~ Azure Static Web Apps と Containe...GitHub Actions と Azure PaaS でプルリクエストごとに環境を ~ Azure Static Web Apps と Containe...
GitHub Actions と Azure PaaS でプルリクエストごとに環境を ~ Azure Static Web Apps と Containe...Kazumi IWANAGA
 
GitHub Codespaces と Azure でつくる、エンタープライズレベルの開発環境
GitHub Codespaces と Azure でつくる、エンタープライズレベルの開発環境GitHub Codespaces と Azure でつくる、エンタープライズレベルの開発環境
GitHub Codespaces と Azure でつくる、エンタープライズレベルの開発環境Kazumi IWANAGA
 
Developers Summit 2023 9-D-1「もう悩まされない開発環境、プロジェクトで統一した環境をいつでもどこでも」
Developers Summit 2023 9-D-1「もう悩まされない開発環境、プロジェクトで統一した環境をいつでもどこでも」Developers Summit 2023 9-D-1「もう悩まされない開発環境、プロジェクトで統一した環境をいつでもどこでも」
Developers Summit 2023 9-D-1「もう悩まされない開発環境、プロジェクトで統一した環境をいつでもどこでも」Kazumi IWANAGA
 
GitHub Codespaces が拡げる開発環境、いつでもどこでも Visual Studio Code で!
GitHub Codespaces が拡げる開発環境、いつでもどこでも Visual Studio Code で!GitHub Codespaces が拡げる開発環境、いつでもどこでも Visual Studio Code で!
GitHub Codespaces が拡げる開発環境、いつでもどこでも Visual Studio Code で!Kazumi IWANAGA
 
日々の開発フローにプラスする GitHub Actions ~ セキュリティ対策を取り込む
日々の開発フローにプラスする GitHub Actions ~ セキュリティ対策を取り込む日々の開発フローにプラスする GitHub Actions ~ セキュリティ対策を取り込む
日々の開発フローにプラスする GitHub Actions ~ セキュリティ対策を取り込むKazumi IWANAGA
 
女性エンジニアコミュニティから見える価値観のリアル
女性エンジニアコミュニティから見える価値観のリアル女性エンジニアコミュニティから見える価値観のリアル
女性エンジニアコミュニティから見える価値観のリアルKazumi IWANAGA
 
「あの人の自分戦略を聞きたい!2022」~ 大平かづみの場合
「あの人の自分戦略を聞きたい!2022」~ 大平かづみの場合「あの人の自分戦略を聞きたい!2022」~ 大平かづみの場合
「あの人の自分戦略を聞きたい!2022」~ 大平かづみの場合Kazumi IWANAGA
 
Azure Functions 開発デプロイ環境を GitHub Codespaces で爆速に整える
Azure Functions 開発デプロイ環境を GitHub Codespaces で爆速に整えるAzure Functions 開発デプロイ環境を GitHub Codespaces で爆速に整える
Azure Functions 開発デプロイ環境を GitHub Codespaces で爆速に整えるKazumi IWANAGA
 
本領を発揮するために、まずバリアを開放できる場を
本領を発揮するために、まずバリアを開放できる場を本領を発揮するために、まずバリアを開放できる場を
本領を発揮するために、まずバリアを開放できる場をKazumi IWANAGA
 
【NLU祭り 場外編】コミュニケーションをより身近に、よりかしこく。LUIS と Azure AI サービスの使いどころ
【NLU祭り 場外編】コミュニケーションをより身近に、よりかしこく。LUIS と Azure AI サービスの使いどころ【NLU祭り 場外編】コミュニケーションをより身近に、よりかしこく。LUIS と Azure AI サービスの使いどころ
【NLU祭り 場外編】コミュニケーションをより身近に、よりかしこく。LUIS と Azure AI サービスの使いどころKazumi IWANAGA
 
Azure Cosmos DB Emulator on Docker を GitHub Codespaces で動かす!
Azure Cosmos DB Emulator on Docker を GitHub Codespaces で動かす!Azure Cosmos DB Emulator on Docker を GitHub Codespaces で動かす!
Azure Cosmos DB Emulator on Docker を GitHub Codespaces で動かす!Kazumi IWANAGA
 
「 Azure 」にデータを溜めて活用する のご紹介 - 「はじめてのNode-RED ver.1.3.0対応版」書籍出版記念イベント LT
「 Azure 」にデータを溜めて活用する のご紹介 - 「はじめてのNode-RED ver.1.3.0対応版」書籍出版記念イベント LT「 Azure 」にデータを溜めて活用する のご紹介 - 「はじめてのNode-RED ver.1.3.0対応版」書籍出版記念イベント LT
「 Azure 」にデータを溜めて活用する のご紹介 - 「はじめてのNode-RED ver.1.3.0対応版」書籍出版記念イベント LTKazumi IWANAGA
 
Code Polaris 紹介(Woman type イベント「女性エンジニアのキャリアのお悩み相談室 with Code Polaris」)
Code Polaris 紹介(Woman type イベント「女性エンジニアのキャリアのお悩み相談室 with Code Polaris」)Code Polaris 紹介(Woman type イベント「女性エンジニアのキャリアのお悩み相談室 with Code Polaris」)
Code Polaris 紹介(Woman type イベント「女性エンジニアのキャリアのお悩み相談室 with Code Polaris」)Kazumi IWANAGA
 

More from Kazumi IWANAGA (20)

地味だけど劇的に便利になるGitHubリポジトリ設定あれこれ
地味だけど劇的に便利になるGitHubリポジトリ設定あれこれ地味だけど劇的に便利になるGitHubリポジトリ設定あれこれ
地味だけど劇的に便利になるGitHubリポジトリ設定あれこれ
 
GitHub dockyardコミュニティ 竣工イベント!オープニング資料
GitHub dockyardコミュニティ 竣工イベント!オープニング資料GitHub dockyardコミュニティ 竣工イベント!オープニング資料
GitHub dockyardコミュニティ 竣工イベント!オープニング資料
 
GitHub最新情報キャッチアップ 2023年6月
GitHub最新情報キャッチアップ 2023年6月GitHub最新情報キャッチアップ 2023年6月
GitHub最新情報キャッチアップ 2023年6月
 
GitHub と Azure でアプリケーションとインフラストラクチャの守りを固めるDevSecOps
GitHub と Azure でアプリケーションとインフラストラクチャの守りを固めるDevSecOpsGitHub と Azure でアプリケーションとインフラストラクチャの守りを固めるDevSecOps
GitHub と Azure でアプリケーションとインフラストラクチャの守りを固めるDevSecOps
 
高さ比べじゃない、キャリアは歩んできた道
高さ比べじゃない、キャリアは歩んできた道高さ比べじゃない、キャリアは歩んできた道
高さ比べじゃない、キャリアは歩んできた道
 
GitHub Copilotとともに次の開発体験へ
GitHub Copilotとともに次の開発体験へGitHub Copilotとともに次の開発体験へ
GitHub Copilotとともに次の開発体験へ
 
突如登場したAzure Developer CLIでなにができるのか?検証してみる
突如登場したAzure Developer CLIでなにができるのか?検証してみる突如登場したAzure Developer CLIでなにができるのか?検証してみる
突如登場したAzure Developer CLIでなにができるのか?検証してみる
 
GitHub Actions と Azure PaaS でプルリクエストごとに環境を ~ Azure Static Web Apps と Containe...
GitHub Actions と Azure PaaS でプルリクエストごとに環境を ~ Azure Static Web Apps と Containe...GitHub Actions と Azure PaaS でプルリクエストごとに環境を ~ Azure Static Web Apps と Containe...
GitHub Actions と Azure PaaS でプルリクエストごとに環境を ~ Azure Static Web Apps と Containe...
 
GitHub Codespaces と Azure でつくる、エンタープライズレベルの開発環境
GitHub Codespaces と Azure でつくる、エンタープライズレベルの開発環境GitHub Codespaces と Azure でつくる、エンタープライズレベルの開発環境
GitHub Codespaces と Azure でつくる、エンタープライズレベルの開発環境
 
Developers Summit 2023 9-D-1「もう悩まされない開発環境、プロジェクトで統一した環境をいつでもどこでも」
Developers Summit 2023 9-D-1「もう悩まされない開発環境、プロジェクトで統一した環境をいつでもどこでも」Developers Summit 2023 9-D-1「もう悩まされない開発環境、プロジェクトで統一した環境をいつでもどこでも」
Developers Summit 2023 9-D-1「もう悩まされない開発環境、プロジェクトで統一した環境をいつでもどこでも」
 
GitHub Codespaces が拡げる開発環境、いつでもどこでも Visual Studio Code で!
GitHub Codespaces が拡げる開発環境、いつでもどこでも Visual Studio Code で!GitHub Codespaces が拡げる開発環境、いつでもどこでも Visual Studio Code で!
GitHub Codespaces が拡げる開発環境、いつでもどこでも Visual Studio Code で!
 
日々の開発フローにプラスする GitHub Actions ~ セキュリティ対策を取り込む
日々の開発フローにプラスする GitHub Actions ~ セキュリティ対策を取り込む日々の開発フローにプラスする GitHub Actions ~ セキュリティ対策を取り込む
日々の開発フローにプラスする GitHub Actions ~ セキュリティ対策を取り込む
 
女性エンジニアコミュニティから見える価値観のリアル
女性エンジニアコミュニティから見える価値観のリアル女性エンジニアコミュニティから見える価値観のリアル
女性エンジニアコミュニティから見える価値観のリアル
 
「あの人の自分戦略を聞きたい!2022」~ 大平かづみの場合
「あの人の自分戦略を聞きたい!2022」~ 大平かづみの場合「あの人の自分戦略を聞きたい!2022」~ 大平かづみの場合
「あの人の自分戦略を聞きたい!2022」~ 大平かづみの場合
 
Azure Functions 開発デプロイ環境を GitHub Codespaces で爆速に整える
Azure Functions 開発デプロイ環境を GitHub Codespaces で爆速に整えるAzure Functions 開発デプロイ環境を GitHub Codespaces で爆速に整える
Azure Functions 開発デプロイ環境を GitHub Codespaces で爆速に整える
 
本領を発揮するために、まずバリアを開放できる場を
本領を発揮するために、まずバリアを開放できる場を本領を発揮するために、まずバリアを開放できる場を
本領を発揮するために、まずバリアを開放できる場を
 
【NLU祭り 場外編】コミュニケーションをより身近に、よりかしこく。LUIS と Azure AI サービスの使いどころ
【NLU祭り 場外編】コミュニケーションをより身近に、よりかしこく。LUIS と Azure AI サービスの使いどころ【NLU祭り 場外編】コミュニケーションをより身近に、よりかしこく。LUIS と Azure AI サービスの使いどころ
【NLU祭り 場外編】コミュニケーションをより身近に、よりかしこく。LUIS と Azure AI サービスの使いどころ
 
Azure Cosmos DB Emulator on Docker を GitHub Codespaces で動かす!
Azure Cosmos DB Emulator on Docker を GitHub Codespaces で動かす!Azure Cosmos DB Emulator on Docker を GitHub Codespaces で動かす!
Azure Cosmos DB Emulator on Docker を GitHub Codespaces で動かす!
 
「 Azure 」にデータを溜めて活用する のご紹介 - 「はじめてのNode-RED ver.1.3.0対応版」書籍出版記念イベント LT
「 Azure 」にデータを溜めて活用する のご紹介 - 「はじめてのNode-RED ver.1.3.0対応版」書籍出版記念イベント LT「 Azure 」にデータを溜めて活用する のご紹介 - 「はじめてのNode-RED ver.1.3.0対応版」書籍出版記念イベント LT
「 Azure 」にデータを溜めて活用する のご紹介 - 「はじめてのNode-RED ver.1.3.0対応版」書籍出版記念イベント LT
 
Code Polaris 紹介(Woman type イベント「女性エンジニアのキャリアのお悩み相談室 with Code Polaris」)
Code Polaris 紹介(Woman type イベント「女性エンジニアのキャリアのお悩み相談室 with Code Polaris」)Code Polaris 紹介(Woman type イベント「女性エンジニアのキャリアのお悩み相談室 with Code Polaris」)
Code Polaris 紹介(Woman type イベント「女性エンジニアのキャリアのお悩み相談室 with Code Polaris」)
 

Recently uploaded

IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptxIoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptxAtomu Hidaka
 
PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000Shota Ito
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムsugiuralab
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略Ryo Sasaki
 
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By DanielPostman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Danieldanielhu54
 
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Yuma Ohgami
 
UPWARD_share_company_information_20240415.pdf
UPWARD_share_company_information_20240415.pdfUPWARD_share_company_information_20240415.pdf
UPWARD_share_company_information_20240415.pdffurutsuka
 

Recently uploaded (7)

IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptxIoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
 
PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
 
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By DanielPostman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Daniel
 
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
 
UPWARD_share_company_information_20240415.pdf
UPWARD_share_company_information_20240415.pdfUPWARD_share_company_information_20240415.pdf
UPWARD_share_company_information_20240415.pdf
 

爆速フレームワーク!! Phalcon PHP Framework

  • 2. Phalcon とは?  PHP の 爆速 フレームワーク Σ(・ω・ノ)ノ!  今までの MVC フレームワークの 集大成 のような出来!  初心者でもわかりやすいシンプルなフレームワーク  Rails を経験していれば、さらにとっつきやすい  Windows, Linux/Unix/Mac 対応  親しみやすいテンプレートエンジン Volt  NoSQL と相性が良い  便利な scaffold のGUIツール あり
  • 3. 爆速 PHP フレームワーク  内側が C言語 で実装されている  PHPのエクステンションとして実装されている
  • 4. 爆速 PHP フレームワーク  内側が C言語 で実装されている  PHPのエクステンションとして実装されている
  • 5. シンプルで柔軟な、集大成フレームワーク  単一/複数のMVCモジュールを扱える → Full MVC applications  シンプルなREST API も実装しやすい → Micro Applications  DIコンテナ を利用できる  Rails の経験を活かせる、さらに便利  Rails では gem で提供されていたページネイションなど、標準装備 → ex. Pagination  Twitter Bootstrap を利用  シンプルな Model  NoSQL と相性が良い → ODM (Object-Document Mapper)  使いやすいテンプレートエンジン Volt  便利な scaffold の GUIツール あり → Developer Tools
  • 6. シンプルで柔軟な、集大成フレームワーク  単一/複数のMVCモジュールを扱える → Full MVC applications  シンプルなREST API も実装しやすい → Micro Applications  DIコンテナ を利用できる  Rails の経験を活かせる、さらに便利  Rails では gem で提供されていたページネイションなど、標準装備 → ex. Pagination  Twitter Bootstrap を利用  シンプルな Model  NoSQL と相性が良い → ODM (Object-Document Mapper)  使いやすいテンプレートエンジン Volt  便利な scaffold の GUIツール あり → Developer Tools
  • 7. テンプレートエンジン Volt  シンタックス  {% ... %} : PHPのステートメントとして置き換えられる  {{ ... }} : <? echo … ; ?> として置き換えられる  これは、既存のフレームワークでも よく採用されている シンタックス  インスパイアを受けた Python の テンプレートエンジン Jinja  Symphony のテンプレートエンジンも同じようなシンタックス  気配り が効いていて、使って気持ちがいい
  • 8. テンプレートエンジン Volt  シンタックス  {% ... %} : PHPのステートメントとして置き換えられる  {{ ... }} : <? echo … ; ?> として置き換えられる  これは、既存のフレームワークでも よく採用されている シンタックス  インスパイアを受けた Python の テンプレートエンジン Jinja  Symphony のテンプレートエンジンも同じようなシンタックス  気配り が効いていて、使って気持ちがいい
  • 9. ODM for MongoDB  ODM = Object-Document Mapper  ドキュメントをオブジェクトに変換するマッパー  Collection クラスをオーバーライドすることで、 Model クラスと同様に NoSQL のデータを扱える  CRUD (Create, Read, Update, Delete)  find(), save(), delete()  find() で利用できるパラメータ  conditions, fields, sort, limit, skip  validate() で利用できるパラメータ  Email, ExclusionIn, InclusionIn, Numericality, Regex, StringLength
  • 10. ODM for MongoDB  ODM = Object-Document Mapper  ドキュメントをオブジェクトに変換するマッパー  Collection クラスをオーバーライドすることで、 Model クラスと同様に NoSQL のデータを扱える  CRUD (Create, Read, Update, Delete)  find(), save(), delete()  find() で利用できるパラメータ  conditions, fields, sort, limit, skip  validate() で利用できるパラメータ  Email, ExclusionIn, InclusionIn, Numericality, Regex, StringLength
  • 11. Phalcon Development Tools  Controllers  Controller の名前を入力して生成  Models  指定した Model を生成(全テーブルも指定可能)  Scaffold  指定したテーブルから Model, View, Controller を生成  Migrations  テーブル単位でマイグレーション可能
  • 12. Phalcon Development Tools  Controllers  Controller の名前を入力して生成  Models  指定した Model を生成(全テーブルも指定可能)  Scaffold  指定したテーブルから Model, View, Controller を生成  Migrations  テーブル単位でマイグレーション可能
  • 13. さいごに  Phalcon PHP Framework は、new BSD license に基づきリリースされています。  尚、本資料における Phalcon からの引用、および画像については、 Creative Commons Attribution 3.0 License に基づき、使用しています。