SlideShare a Scribd company logo
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 (20)

サンタクロースを支えるIT技術 @M_Ishikawa #yapcasia
サンタクロースを支えるIT技術 @M_Ishikawa #yapcasiaサンタクロースを支えるIT技術 @M_Ishikawa #yapcasia
サンタクロースを支えるIT技術 @M_Ishikawa #yapcasia
Masayuki Ishikawa
 
Behat Driven Development
Behat Driven DevelopmentBehat Driven Development
Behat Driven Development
Ryo Tomidokoro
 
Drupal 8 - モダンなアーキテクチャのPHPベースOSS CMS
Drupal 8 - モダンなアーキテクチャのPHPベースOSS CMSDrupal 8 - モダンなアーキテクチャのPHPベースOSS CMS
Drupal 8 - モダンなアーキテクチャのPHPベースOSS CMS
Tomoki Hasegawa
 
脆弱性もバグ、だからテストしよう PHPカンファンレス2015
脆弱性もバグ、だからテストしよう PHPカンファンレス2015脆弱性もバグ、だからテストしよう PHPカンファンレス2015
脆弱性もバグ、だからテストしよう PHPカンファンレス2015
ichikaway
 
PHPの今とこれから2015
PHPの今とこれから2015PHPの今とこれから2015
PHPの今とこれから2015
Rui Hirokawa
 
営業・運用を支える "気付ける" 管理画面
営業・運用を支える "気付ける" 管理画面営業・運用を支える "気付ける" 管理画面
営業・運用を支える "気付ける" 管理画面
Masao Maeda
 
Visual Studio Code #phpcon2015
Visual Studio Code #phpcon2015Visual Studio Code #phpcon2015
Visual Studio Code #phpcon2015
Aya 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 #phpcon2015
Hikari 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/Min
Masahiro Nagano
 
10年続いているwebサービスの画像サーバをノーメンテでftpサーバからs3互換のストレージサーバに移行している話
10年続いているwebサービスの画像サーバをノーメンテでftpサーバからs3互換のストレージサーバに移行している話 10年続いているwebサービスの画像サーバをノーメンテでftpサーバからs3互換のストレージサーバに移行している話
10年続いているwebサービスの画像サーバをノーメンテでftpサーバからs3互換のストレージサーバに移行している話
Masataka Kono
 
Phpcon2015
Phpcon2015Phpcon2015
Phpcon2015
Hiroshi Tokumaru
 
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 awesome
Andrew Hull
 
いまどきのPHP開発現場 -2015年秋-
いまどきのPHP開発現場 -2015年秋-いまどきのPHP開発現場 -2015年秋-
いまどきのPHP開発現場 -2015年秋-
Masashi Shinbara
 
サーバー未経験者がソーシャルゲームを通して知ったサーバーの事
サーバー未経験者がソーシャルゲームを通して知ったサーバーの事サーバー未経験者がソーシャルゲームを通して知ったサーバーの事
サーバー未経験者がソーシャルゲームを通して知ったサーバーの事
Manabu Koga
 
サンタクロースを支えるIT技術 @M_Ishikawa #yapcasia
サンタクロースを支えるIT技術 @M_Ishikawa #yapcasiaサンタクロースを支えるIT技術 @M_Ishikawa #yapcasia
サンタクロースを支えるIT技術 @M_Ishikawa #yapcasia
Masayuki Ishikawa
 
Behat Driven Development
Behat Driven DevelopmentBehat Driven Development
Behat Driven Development
Ryo Tomidokoro
 
Drupal 8 - モダンなアーキテクチャのPHPベースOSS CMS
Drupal 8 - モダンなアーキテクチャのPHPベースOSS CMSDrupal 8 - モダンなアーキテクチャのPHPベースOSS CMS
Drupal 8 - モダンなアーキテクチャのPHPベースOSS CMS
Tomoki Hasegawa
 
脆弱性もバグ、だからテストしよう PHPカンファンレス2015
脆弱性もバグ、だからテストしよう PHPカンファンレス2015脆弱性もバグ、だからテストしよう PHPカンファンレス2015
脆弱性もバグ、だからテストしよう PHPカンファンレス2015
ichikaway
 
PHPの今とこれから2015
PHPの今とこれから2015PHPの今とこれから2015
PHPの今とこれから2015
Rui Hirokawa
 
営業・運用を支える "気付ける" 管理画面
営業・運用を支える "気付ける" 管理画面営業・運用を支える "気付ける" 管理画面
営業・運用を支える "気付ける" 管理画面
Masao Maeda
 
Visual Studio Code #phpcon2015
Visual Studio Code #phpcon2015Visual Studio Code #phpcon2015
Visual Studio Code #phpcon2015
Aya 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 #phpcon2015
Hikari 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/Min
Masahiro 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 awesome
Andrew Hull
 
いまどきのPHP開発現場 -2015年秋-
いまどきのPHP開発現場 -2015年秋-いまどきのPHP開発現場 -2015年秋-
いまどきのPHP開発現場 -2015年秋-
Masashi Shinbara
 
サーバー未経験者がソーシャルゲームを通して知ったサーバーの事
サーバー未経験者がソーシャルゲームを通して知ったサーバーの事サーバー未経験者がソーシャルゲームを通して知ったサーバーの事
サーバー未経験者がソーシャルゲームを通して知ったサーバーの事
Manabu Koga
 

More from Kazumi IWANAGA (20)

地味だけど劇的に便利になる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 でアプリケーションとインフラストラクチャの守りを固めるDevSecOps
Kazumi 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対応版」書籍出版記念イベント LT
Kazumi 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
 
地味だけど劇的に便利になる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 でアプリケーションとインフラストラクチャの守りを固めるDevSecOps
Kazumi 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対応版」書籍出版記念イベント LT
Kazumi 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
 

Recently uploaded (8)

永島 陸, 徳丸 晴天, 畑 玲音, 松下 光範. イベントにおける地図の情報量がユーザ行動へ与える影響に関する分析, 情報処理学会研究報告, Vol.2...
永島 陸, 徳丸 晴天, 畑 玲音, 松下 光範. イベントにおける地図の情報量がユーザ行動へ与える影響に関する分析, 情報処理学会研究報告, Vol.2...永島 陸, 徳丸 晴天, 畑 玲音, 松下 光範. イベントにおける地図の情報量がユーザ行動へ与える影響に関する分析, 情報処理学会研究報告, Vol.2...
永島 陸, 徳丸 晴天, 畑 玲音, 松下 光範. イベントにおける地図の情報量がユーザ行動へ与える影響に関する分析, 情報処理学会研究報告, Vol.2...
Matsushita Laboratory
 
2025 02 TankyuDock
2025 02 TankyuDock2025 02 TankyuDock
2025 02 TankyuDock
arts yokohama
 
Guidance for beginners and experts on how to set up a Windows driver developm...
Guidance for beginners and experts on how to set up a Windows driver developm...Guidance for beginners and experts on how to set up a Windows driver developm...
Guidance for beginners and experts on how to set up a Windows driver developm...
Atomu Hidaka
 
2025 01 スマート抵抗チェッカー
2025 01 スマート抵抗チェッカー2025 01 スマート抵抗チェッカー
2025 01 スマート抵抗チェッカー
arts yokohama
 
2025 03 世代を繋ぎ、より高質で快適な学校生活へ、1から始まるコネクタス!!
2025 03 世代を繋ぎ、より高質で快適な学校生活へ、1から始まるコネクタス!!2025 03 世代を繋ぎ、より高質で快適な学校生活へ、1から始まるコネクタス!!
2025 03 世代を繋ぎ、より高質で快適な学校生活へ、1から始まるコネクタス!!
arts yokohama
 
2025 04 Dayne
2025 04 Dayne2025 04 Dayne
2025 04 Dayne
arts yokohama
 
わたしたちのAlexaスキル開発 by 筑波技術大学スマートスピーカーアプリ開発チーム
わたしたちのAlexaスキル開発 by 筑波技術大学スマートスピーカーアプリ開発チームわたしたちのAlexaスキル開発 by 筑波技術大学スマートスピーカーアプリ開発チーム
わたしたちのAlexaスキル開発 by 筑波技術大学スマートスピーカーアプリ開発チーム
National University Cooperation, Tsukuba University of Technology
 
LoRa/LoRaWAN 5インチタッチスクリーン LTS5 日本語ユーザーマニュアル
LoRa/LoRaWAN 5インチタッチスクリーン LTS5 日本語ユーザーマニュアルLoRa/LoRaWAN 5インチタッチスクリーン LTS5 日本語ユーザーマニュアル
LoRa/LoRaWAN 5インチタッチスクリーン LTS5 日本語ユーザーマニュアル
CRI Japan, Inc.
 
永島 陸, 徳丸 晴天, 畑 玲音, 松下 光範. イベントにおける地図の情報量がユーザ行動へ与える影響に関する分析, 情報処理学会研究報告, Vol.2...
永島 陸, 徳丸 晴天, 畑 玲音, 松下 光範. イベントにおける地図の情報量がユーザ行動へ与える影響に関する分析, 情報処理学会研究報告, Vol.2...永島 陸, 徳丸 晴天, 畑 玲音, 松下 光範. イベントにおける地図の情報量がユーザ行動へ与える影響に関する分析, 情報処理学会研究報告, Vol.2...
永島 陸, 徳丸 晴天, 畑 玲音, 松下 光範. イベントにおける地図の情報量がユーザ行動へ与える影響に関する分析, 情報処理学会研究報告, Vol.2...
Matsushita Laboratory
 
Guidance for beginners and experts on how to set up a Windows driver developm...
Guidance for beginners and experts on how to set up a Windows driver developm...Guidance for beginners and experts on how to set up a Windows driver developm...
Guidance for beginners and experts on how to set up a Windows driver developm...
Atomu Hidaka
 
2025 01 スマート抵抗チェッカー
2025 01 スマート抵抗チェッカー2025 01 スマート抵抗チェッカー
2025 01 スマート抵抗チェッカー
arts yokohama
 
2025 03 世代を繋ぎ、より高質で快適な学校生活へ、1から始まるコネクタス!!
2025 03 世代を繋ぎ、より高質で快適な学校生活へ、1から始まるコネクタス!!2025 03 世代を繋ぎ、より高質で快適な学校生活へ、1から始まるコネクタス!!
2025 03 世代を繋ぎ、より高質で快適な学校生活へ、1から始まるコネクタス!!
arts yokohama
 
LoRa/LoRaWAN 5インチタッチスクリーン LTS5 日本語ユーザーマニュアル
LoRa/LoRaWAN 5インチタッチスクリーン LTS5 日本語ユーザーマニュアルLoRa/LoRaWAN 5インチタッチスクリーン LTS5 日本語ユーザーマニュアル
LoRa/LoRaWAN 5インチタッチスクリーン LTS5 日本語ユーザーマニュアル
CRI Japan, Inc.
 

爆速フレームワーク!! 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 に基づき、使用しています。