Enviar búsqueda
Cargar
Applicationとは何か(哲学)(PHPBLT #6)
•
0 recomendaciones
•
1,119 vistas
sitri kamishirasawa
Seguir
PHP BLT #6 で発表してきたやつ。 最近目にするPHPのフレームワークにおけるApplicationクラスの実装例を見て、アプリケーションとは何か?を哲学(笑)した。
Leer menos
Leer más
Tecnología
Denunciar
Compartir
Denunciar
Compartir
1 de 39
Descargar ahora
Descargar para leer sin conexión
Recomendados
おーぷん万葉プロジェクトの進捗とIzumoのその後
おーぷん万葉プロジェクトの進捗とIzumoのその後
Masahiko Hashimoto
DeepLearning入門以前
DeepLearning入門以前
Masahiko Hashimoto
XMPPの紹介
XMPPの紹介
隆行 神戸
おーぷん万葉プロジェクトとは
おーぷん万葉プロジェクトとは
Masahiko Hashimoto
かな漢字変換ソフト「Genji」をつくってみた
かな漢字変換ソフト「Genji」をつくってみた
Masahiko Hashimoto
ホットな日本語入力技術のお勉強。〜 OSC 2016 Hamanako 編 〜
ホットな日本語入力技術のお勉強。〜 OSC 2016 Hamanako 編 〜
Masahiko Hashimoto
京都発祥日本語入力「FreeWnn」は(今度こそ)どこまで賢くなれるか?
京都発祥日本語入力「FreeWnn」は(今度こそ)どこまで賢くなれるか?
Masahiko Hashimoto
プログラミング言語の習得順番について
プログラミング言語の習得順番について
ichigats
Recomendados
おーぷん万葉プロジェクトの進捗とIzumoのその後
おーぷん万葉プロジェクトの進捗とIzumoのその後
Masahiko Hashimoto
DeepLearning入門以前
DeepLearning入門以前
Masahiko Hashimoto
XMPPの紹介
XMPPの紹介
隆行 神戸
おーぷん万葉プロジェクトとは
おーぷん万葉プロジェクトとは
Masahiko Hashimoto
かな漢字変換ソフト「Genji」をつくってみた
かな漢字変換ソフト「Genji」をつくってみた
Masahiko Hashimoto
ホットな日本語入力技術のお勉強。〜 OSC 2016 Hamanako 編 〜
ホットな日本語入力技術のお勉強。〜 OSC 2016 Hamanako 編 〜
Masahiko Hashimoto
京都発祥日本語入力「FreeWnn」は(今度こそ)どこまで賢くなれるか?
京都発祥日本語入力「FreeWnn」は(今度こそ)どこまで賢くなれるか?
Masahiko Hashimoto
プログラミング言語の習得順番について
プログラミング言語の習得順番について
ichigats
Rails Girls Tokyo 5th
Rails Girls Tokyo 5th
Rie Kato
Nginxで日本語入力を遊んでみよう!
Nginxで日本語入力を遊んでみよう!
Masahiko Hashimoto
2016tensorflow ja001
2016tensorflow ja001
Shin Asakawa
自作かな漢字変換「Genji」をつくったよ
自作かな漢字変換「Genji」をつくったよ
Masahiko Hashimoto
TensorFlowで会話AIを作ってみた。
TensorFlowで会話AIを作ってみた。
tak9029
ゲームマップのためのグラフAPIの設計
ゲームマップのためのグラフAPIの設計
隆行 神戸
ホットな日本語技術の(ちょっとした)お勉強。
ホットな日本語技術の(ちょっとした)お勉強。
Masahiko Hashimoto
NIP2015読み会「End-To-End Memory Networks」
NIP2015読み会「End-To-End Memory Networks」
Yuya Unno
形態素解析の過去・現在・未来
形態素解析の過去・現在・未来
Preferred Networks
ピーFIの研究開発現場
ピーFIの研究開発現場
Yuya Unno
情報抽出入門 〜非構造化データを構造化させる技術〜
情報抽出入門 〜非構造化データを構造化させる技術〜
Yuya Unno
PHPやVBAでMovable Typeを操作しようData API Library for PHP/VBAのご紹介
PHPやVBAでMovable Typeを操作しようData API Library for PHP/VBAのご紹介
Hajime Fujimoto
最先端NLP勉強会“Learning Language Games through Interaction”Sida I. Wang, Percy L...
最先端NLP勉強会“Learning Language Games through Interaction”Sida I. Wang, Percy L...
Yuya Unno
オレオレ言語実装に役立つプル型ASTウォーカーAPI
オレオレ言語実装に役立つプル型ASTウォーカーAPI
隆行 神戸
It勉強会の勉強会
It勉強会の勉強会
oranie Narut
IT勉強会の勉強会資料1
IT勉強会の勉強会資料1
mamoru tateoka
もっとドキュメントが日本語になりますように
もっとドキュメントが日本語になりますように
Takako Miyagawa
第1回プログラミング大学in福岡
第1回プログラミング大学in福岡
Ryu Yamashita
Flex入門
Flex入門
Shinjiro Watanabe
【B 5】x pages extension library じゃぱ〜〜ん!コミュニティ動向2014ば〜〜ん!
【B 5】x pages extension library じゃぱ〜〜ん!コミュニティ動向2014ば〜〜ん!
Masahiko Sato
2018.10.8 つくばビットコインミートアップ 藤田
2018.10.8 つくばビットコインミートアップ 藤田
Takuya Fujita
Facebookアプリケーション開発ガイド読んでみた
Facebookアプリケーション開発ガイド読んでみた
Yuya Fujiwara
Más contenido relacionado
La actualidad más candente
Rails Girls Tokyo 5th
Rails Girls Tokyo 5th
Rie Kato
Nginxで日本語入力を遊んでみよう!
Nginxで日本語入力を遊んでみよう!
Masahiko Hashimoto
2016tensorflow ja001
2016tensorflow ja001
Shin Asakawa
自作かな漢字変換「Genji」をつくったよ
自作かな漢字変換「Genji」をつくったよ
Masahiko Hashimoto
TensorFlowで会話AIを作ってみた。
TensorFlowで会話AIを作ってみた。
tak9029
ゲームマップのためのグラフAPIの設計
ゲームマップのためのグラフAPIの設計
隆行 神戸
ホットな日本語技術の(ちょっとした)お勉強。
ホットな日本語技術の(ちょっとした)お勉強。
Masahiko Hashimoto
NIP2015読み会「End-To-End Memory Networks」
NIP2015読み会「End-To-End Memory Networks」
Yuya Unno
形態素解析の過去・現在・未来
形態素解析の過去・現在・未来
Preferred Networks
ピーFIの研究開発現場
ピーFIの研究開発現場
Yuya Unno
情報抽出入門 〜非構造化データを構造化させる技術〜
情報抽出入門 〜非構造化データを構造化させる技術〜
Yuya Unno
PHPやVBAでMovable Typeを操作しようData API Library for PHP/VBAのご紹介
PHPやVBAでMovable Typeを操作しようData API Library for PHP/VBAのご紹介
Hajime Fujimoto
最先端NLP勉強会“Learning Language Games through Interaction”Sida I. Wang, Percy L...
最先端NLP勉強会“Learning Language Games through Interaction”Sida I. Wang, Percy L...
Yuya Unno
オレオレ言語実装に役立つプル型ASTウォーカーAPI
オレオレ言語実装に役立つプル型ASTウォーカーAPI
隆行 神戸
It勉強会の勉強会
It勉強会の勉強会
oranie Narut
IT勉強会の勉強会資料1
IT勉強会の勉強会資料1
mamoru tateoka
La actualidad más candente
(16)
Rails Girls Tokyo 5th
Rails Girls Tokyo 5th
Nginxで日本語入力を遊んでみよう!
Nginxで日本語入力を遊んでみよう!
2016tensorflow ja001
2016tensorflow ja001
自作かな漢字変換「Genji」をつくったよ
自作かな漢字変換「Genji」をつくったよ
TensorFlowで会話AIを作ってみた。
TensorFlowで会話AIを作ってみた。
ゲームマップのためのグラフAPIの設計
ゲームマップのためのグラフAPIの設計
ホットな日本語技術の(ちょっとした)お勉強。
ホットな日本語技術の(ちょっとした)お勉強。
NIP2015読み会「End-To-End Memory Networks」
NIP2015読み会「End-To-End Memory Networks」
形態素解析の過去・現在・未来
形態素解析の過去・現在・未来
ピーFIの研究開発現場
ピーFIの研究開発現場
情報抽出入門 〜非構造化データを構造化させる技術〜
情報抽出入門 〜非構造化データを構造化させる技術〜
PHPやVBAでMovable Typeを操作しようData API Library for PHP/VBAのご紹介
PHPやVBAでMovable Typeを操作しようData API Library for PHP/VBAのご紹介
最先端NLP勉強会“Learning Language Games through Interaction”Sida I. Wang, Percy L...
最先端NLP勉強会“Learning Language Games through Interaction”Sida I. Wang, Percy L...
オレオレ言語実装に役立つプル型ASTウォーカーAPI
オレオレ言語実装に役立つプル型ASTウォーカーAPI
It勉強会の勉強会
It勉強会の勉強会
IT勉強会の勉強会資料1
IT勉強会の勉強会資料1
Similar a Applicationとは何か(哲学)(PHPBLT #6)
もっとドキュメントが日本語になりますように
もっとドキュメントが日本語になりますように
Takako Miyagawa
第1回プログラミング大学in福岡
第1回プログラミング大学in福岡
Ryu Yamashita
Flex入門
Flex入門
Shinjiro Watanabe
【B 5】x pages extension library じゃぱ〜〜ん!コミュニティ動向2014ば〜〜ん!
【B 5】x pages extension library じゃぱ〜〜ん!コミュニティ動向2014ば〜〜ん!
Masahiko Sato
2018.10.8 つくばビットコインミートアップ 藤田
2018.10.8 つくばビットコインミートアップ 藤田
Takuya Fujita
Facebookアプリケーション開発ガイド読んでみた
Facebookアプリケーション開発ガイド読んでみた
Yuya Fujiwara
Appmethodで何か作ってみる
Appmethodで何か作ってみる
You&I
Apps for office seminar 1st beginners
Apps for office seminar 1st beginners
Seiji Noro
0から教える簡単アプリ開発
0から教える簡単アプリ開発
teencoders
KANAZAWA アプリ開発塾 2015 アプリ制作マスターへの道
KANAZAWA アプリ開発塾 2015 アプリ制作マスターへの道
Masayuki KaToH
Delphi開発者のためのSencha入門
Delphi開発者のためのSencha入門
Shinobu Kawano
フロントエンドというカオスな世界について
フロントエンドというカオスな世界について
mikakane
Yidev201406.pub
Yidev201406.pub
itoz itoz
アプリ制作マスターへの道
アプリ制作マスターへの道
Masayuki KaToH
APIドキュメントの話 #sphinxjp
APIドキュメントの話 #sphinxjp
Takeshi Komiya
PHPカンファレンス福岡に 行ってきた
PHPカンファレンス福岡に 行ってきた
Tomoki Hasegawa
Phpインタフェースについて
Phpインタフェースについて
Hirokazu Katagiri
初心から一週間で作ってみた Kinesis Client Library for Go
初心から一週間で作ってみた Kinesis Client Library for Go
Terui Masashi
App inventorで想いを形に
App inventorで想いを形に
Takeaki Tada
Sphinxでまとめる多言語環境APIドキュメント
Sphinxでまとめる多言語環境APIドキュメント
Iosif Takakura
Similar a Applicationとは何か(哲学)(PHPBLT #6)
(20)
もっとドキュメントが日本語になりますように
もっとドキュメントが日本語になりますように
第1回プログラミング大学in福岡
第1回プログラミング大学in福岡
Flex入門
Flex入門
【B 5】x pages extension library じゃぱ〜〜ん!コミュニティ動向2014ば〜〜ん!
【B 5】x pages extension library じゃぱ〜〜ん!コミュニティ動向2014ば〜〜ん!
2018.10.8 つくばビットコインミートアップ 藤田
2018.10.8 つくばビットコインミートアップ 藤田
Facebookアプリケーション開発ガイド読んでみた
Facebookアプリケーション開発ガイド読んでみた
Appmethodで何か作ってみる
Appmethodで何か作ってみる
Apps for office seminar 1st beginners
Apps for office seminar 1st beginners
0から教える簡単アプリ開発
0から教える簡単アプリ開発
KANAZAWA アプリ開発塾 2015 アプリ制作マスターへの道
KANAZAWA アプリ開発塾 2015 アプリ制作マスターへの道
Delphi開発者のためのSencha入門
Delphi開発者のためのSencha入門
フロントエンドというカオスな世界について
フロントエンドというカオスな世界について
Yidev201406.pub
Yidev201406.pub
アプリ制作マスターへの道
アプリ制作マスターへの道
APIドキュメントの話 #sphinxjp
APIドキュメントの話 #sphinxjp
PHPカンファレンス福岡に 行ってきた
PHPカンファレンス福岡に 行ってきた
Phpインタフェースについて
Phpインタフェースについて
初心から一週間で作ってみた Kinesis Client Library for Go
初心から一週間で作ってみた Kinesis Client Library for Go
App inventorで想いを形に
App inventorで想いを形に
Sphinxでまとめる多言語環境APIドキュメント
Sphinxでまとめる多言語環境APIドキュメント
Último
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
atsushi061452
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
Hiroshi Tomioka
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
iPride Co., Ltd.
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
Toru Tamaki
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
iPride Co., Ltd.
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
CRI Japan, Inc.
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
CRI Japan, Inc.
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
Toru Tamaki
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
iPride Co., Ltd.
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NTT DATA Technology & Innovation
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Hiroshi Tomioka
Último
(11)
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Applicationとは何か(哲学)(PHPBLT #6)
1.
Applicationとは 何か(哲学) しとりー@ndxbn
2.
しとりー@ndxbn Web系フリーランス いまは東銀座の歌舞伎座らへんにいます PHP歴6年くらい 最近は JavaScript が多い(悲しみ) @ndxbn
3.
ことの発端 とあるレガシーなオレオレフレームワークにて… ※このコードは、フィクションです。
4.
● DB使わないアプリだってあるだろ!!!! ● メンテしないアプリだってあるだろ!!!! ●
じゃあコンストラクタで受け取ってるこいつらなんだよ!!!???
5.
そして… 俺の中で、アプリケーションの定義がゲシュタルト崩壊した そりゃぁ、哲学したくなりますよね!!!
6.
ということで、 「アプリケーションとは何か」を哲学(笑)しました。
7.
結論からいうと
8.
Applicationとは何か DIコンテナのこと
9.
10.
アプリケーションソフトウェア(wikipedia) アプリケーションソフトウェア(英: application software)とは、ユーザーが要求する情報 処理を直接実行するソフトウェアである。
11.
アプリケーション(自己解釈) Webアプリなら「リクエスト受けて、レスポンス返す」 コンソールアプリなら「引数受けて、レスポンス返す」 → 「なんか入力を受けて、処理して、レスポンス返すやつ」っていう定義を、良さげな感じ に設計・実装したやつが、「Applicationクラス」
12.
最近のPHPの各種フレームワークの Applicationクラス
13.
Applicationクラスの例 Laravel の場合 IlluminateFandationApplication Symfony の場合 (SymfonyComponentHttpKernel) CakePHP
の場合 AppApplication Phalcon の場合 PhalconApplication Slim の場合 SlimApp Silex の場合 SilexApplication Fuel の場合 FuelCoreFuel
14.
Applicationクラスの探し方 オートローダの登録した直後くらいに作られてるやつが、だいたいそう。
15.
例えば
16.
Laravelの場合 ブラウザでアクセスしたときは オートローダ登録して require __DIR__.'/../vendor/autoload.php';
17.
Laravelの場合 ブラウザでアクセスしたときは Application作って
18.
Laravelの場合 ブラウザでアクセスしたときは Applicationに登録された Web用の処理をする
19.
Laravelの場合 コンソール(ターミナル)からの 処理の場合 オートローダ登録して require __DIR__.'/../vendor/autoload.php';
20.
Laravelの場合 コンソール(ターミナル)からの 処理の場合 Application作って
21.
Laravelの場合 コンソール(ターミナル)からの 処理の場合 Applicationに登録された コンソール用の処理をする
22.
CakePHPの場合 オートローダ登録して require __DIR__.'/../vendor/autoload.php';
23.
CakePHPの場合 Application作って サーバでの処理として実行
24.
Applicationクラスの探し方実装面での定義 オートローダの登録した直後くらいに作られてるやつ
25.
で、正体なんなの???
26.
Laravelの場合 https://github.com/laravel/framework/blob/master/src/Illuminate/Foundation/Application.php DIコンテナ
27.
Symfonyの場合 https://github.com/symfony/symfony-standard/blob/master/web/app.php
28.
Symfonyの場合 https://github.com/symfony/symfony/blob/master/src/Symfony/Component/HttpKernel/Kernel.php Symfony system ≒ワークフロー群
29.
Symfonyの場合 本当は、Symfonyの本質は、Doctrin ORM とか
HTTP Fandation とか を まとめ上げ る、「Bundler」としてのシステムだったりする。(と思う) DIコンテナってことでよくね?(雑) (Symfonyわかりません、誰か教えてください)
30.
CakePHPの場合 https://github.com/cakephp/app/blob/master/src/Application.php
31.
CakePHPの場合 https://github.com/cakephp/cakephp/blob/master/src/Http/BaseApplication.php Applicationを作るには、 設定ファイル(パス)が必要 →Applicationとは、設定
32.
Phalconの場合 https://github.com/phalcon/cphalcon/blob/master/ext/phalcon/application.zep.c DIコンテナ
33.
Slimの場合 https://github.com/slimphp/Slim/blob/3.x/Slim/App.php DIコンテナ (pimple/pimple)
34.
Silexの場合 DIコンテナ (pimple/pimple)
35.
Fuel の場合 (ナンモ ナイト)
36.
Fuel の場合 オートローダ登録して Fuel::init ↑こいつじゃね
37.
Fuel の場合 設定必要 →Applicationとは、設定
38.
まとめ 現代において、良く使われるフレームワークでの Applicationクラスとは、 DIコンテナである(多い) ナ ナンダッテー!! Ω ΩΩ
39.
ご清聴ありがとうございました!!!
Descargar ahora