Laravelを使っていればご存じの通り、ArtisanはLaravelのCLIインターフェイスです。
その中にはさまざまなサブコマンドが用意されていますし、ユーザーが拡張できるようにもなっています。
Artisanそのものがどのように構成されているのか、そしてそれぞれのサブコマンドがどのように実装されているかについて解説します。
PHPの25年の歴史にはさまざまなフレームワークがありましたが、現代と過去を分ける一つの画期として「Composer以前/以後」があります。Laravelをはじめとして、近年のPHPフレームワークとライブラリはすべてComposerを基盤にして相互運用できるように構成されています。
この発表ではComposerとPHPの機能の関係およびLaravelがComposerをどのように使っているか、そしてWebアプリケーションを本番環境で運用するためにComposerの観点からどのように注目するかについて解説します。
僕たちが提供したいのはその技術では無く、その技術が実現する価値です。
その価値提供にFull Serverlessなシステムは非常に高い効果を発揮します。
運用レスを目指してFull Serverlessなサービスを作成し、その中での知見を共有します。
■対象
Serverlessに興味がある人
■お話すること
個人開発でLaravelを使ったあるWEBアプリケーションを開発しています。
開発をする際にLaravelを使ってみてとても便利だなと思った点や、使いやすかった機能など色々と勉強になった点がたくさんありました。
このトークではその便利だと思った点、使いやすかった機能を、Laravelを扱ったことのない人にもわかりやすいように、簡単なCRUDアプリのコードを通して、余すことなく紹介できたらいいなと思っています。
Docker Hubは、Dockerが提供してくれるコンテナレジストリです。
Laravelをすぐに実行できるコンテナを自作して、Docker Hubに登録すると、開発・CI・CD・本番運用までの開発フローが単純になって良いことばかりです。
そんなDocker Hubのオススメの使い方を紹介します。
PHP7.4から、OPCacheにpreloadという新しい設定が加わりました。この設定を利用すると、既にOPCacheを利用しているアプリケーションでも、動作速度を10倍[注1]に上げることが出来ます。
本トークでは、OPCacheの基本からおさらいし、preloadの機能を丁寧に解説した上で、Laravelで利用する場合の利用法や注意点を紹介します。
また、実際に本番で運用する際の、サーバー構成やデプロイの注意点もまとめます。
このトークでお話すること
対象者
[注1] DB接続等のIOバウンドな処理が含まれない場合に限る。
PHP7.4から、OPCacheにpreloadという新しい設定が加わりました。この設定を利用すると、既にOPCacheを利用しているアプリケーションでも、動作速度を10倍[注1]に上げることが出来ます。
本トークでは、OPCacheの基本からおさらいし、preloadの機能を丁寧に解説した上で、Laravelで利用する場合の利用法や注意点を紹介します。
また、実際に本番で運用する際の、サーバー構成やデプロイの注意点もまとめます。
このトークでお話すること
対象者
[注1] DB接続等のIOバウンドな処理が含まれない場合に限る。
Rails歴1年半、Laravel歴1年半のよしにゃんが、現場での体験からの比較をお話します。
・環境構築時
・DB作成時
・自分で書いたものや人のソースを読むとき
・DI
・設計
優しいマサカリをください。
フレームワークにより、アーキテクチャスタイルは異なります。
LumenはMVC、Slim 4はSkeltonを使うとADR(Action Domain Responder)、BEAR.SundayはRMR(Resource Method Representation)です。
軽量なAPIサーバーを構築するにあたり、各マイクロフレームワークを比較しました。
アプリケーションを堅牢に構築したいため、実際にテストを書いてみたところ、マイクロフレームワークごとのアーキテクチャスタイルの違いが明確になりましたのでご紹介します。
Laravelは柔軟で強力なフレームワークです。
その柔軟性は、Laravelの機能をどこからでも利用できることに由来します。
Laravelの公式ドキュメント「構成の概念」章から、「サービスコンテナ」「サービスプロバイダ」「ファサード」「契約」を読み、OOPの観点からそれぞれの考え方を比較します。
Snipe-IT という知る人ぞ知る資産管理ツールがあります。
Version 1.0 が 2014年10月にリリースされて以来、開発が活発に継続しているLaravelベースのOSSプロダクトです。
このトークでは、スプレッドシートでのやや煩雑な管理から脱却することができて業務改善成功を生んでくれたこの Snipe-IT を、
まずは知っていただきたいと考えています。
そして、これから Laravel でプロダクトを作っていこうとしている中級くらいの開発者に向けて、共にこのソースコードを読み、
実に様々な機能が盛り込まれているところから学んでいこう、と呼びかけができるとうれしいです。
新たな世界を開く可能性を感じたこのOSSへのコントリビュートに向き合えるナカマを増やせるよう、話ができればと思います。
PHPのプロではなかったのですが、
Laravelというフレームワークとコミュニティの力で乗り切れました。
話せる範囲で全体のインフラ構成、アプリ設計、注意した点
、営業やチーム開発でのノウハウ、勉強法などについて話そうと思います。
We all love the elegance and high maintainability of Laravel. And we all know the the performance of PHP has amazingly improved from PHP 5 to PHP 7 in the past few years. However, in some cases, when your website faces high traffic, you still need to optimize your code and architecture in case your server went down.
In this talk, I will introduce some performance tuning skills in PHP and Laravel. Moreover, I will share with you some advanced thoughts and web architecture design for high concurrency in different use cases.
In this agenda Sasaya will share with you how to make your Laravel smarter, more convenient and easier to use through magic.
Clever use of SOLID principles and Laravel Container to make testing easier.
Clever use of OOP concepts and Design Patterns to make code more reusable.
Clever use of Metaprogramming to eliminate all unnecessary code, enabling developers to focus on business logic.
Accroding to above, they allow engineers to spend time in the worthy way, thereby improving development efficiency and increasing team production value.
We are lazy because we are developers. :) So we are interested in how to boost our productivity when we develop. In this talk, I will share several tips that could boost your development speed. Bash config, emmet, reformator, CI are included. You could use these tips immediately in your daily job.
私たちデベロッパーはLaravelを愛用しているが、PHP由来の制限があり、またLaravelのRAMへの負荷によって、高い並列処理 (High Concurrency) 負荷への対応に課題がある。一方、Swooleの登場は、デベロッパーに希望を与えた。そこで、Swooleの速度効果とLaravelの表現力の両立で、開発フレームワークに新たな手法を見せられないかと悩んでいたところ、幸いにHyperfを利用することで、その潜在能力を引き出すことができると分かった。この発表は、まず、各開発フレームワークの効率を比較し、LaravelのデメリットとHyperfのメリットを説明する。次に、アプリケーションを実例として、両フレームワークを利用した開発上の違いを比較する。また、デベロッパーがHyperfを活用しやすくなるように、開発テクニックをシェアする。今回の発表によって、より多くのPHP/Laravelデベロッパーがコンフォートゾーンから一歩踏み出し、更なる開発に取り組んでくれることを期待している。(このトークは英語で発表いたします)
皆さんは勉強会を主催してみたいと思ったことはありませんか?
私は不定期でPHPで学ぶデザインパターンの勉強会を開催しています。
きっかけは、オフィスの会議室で行った、昨年のPHPerKaigi 2019の動画上映会でした。
当日のセッションで学んだ内容が非常に為になる内容だと思ったので、社内のメンバーにも内容を共有したいと思いました。
上映会は大盛況で、参加者と様々な議論を交わしていくことで、より理解を深めることができました。
このことがきっかけで、「自分が学ぼうとする領域を他の人と一緒に勉強することで、より効率的かつ楽しみながら勉強できるのではないか」と思い、
上映会でも盛り上がっていたデザインパターンをPHPで学ぶ勉強会を開催することにしました。
この発表では、勉強会を主催しようなんて思いもしなかったエンジニアが、自主的に勉強会を開くようになるまでのマインドの変化と自身の環境の変化についてお話できればと思います。
「PHP の仕様は RFC によって決められている。」これは PHPer ならご存知かと思います。
技術ブログや Twitter でときどき取り上げられる RFC ですが、実は自分で読んだことがない方は多いのではないでしょうか。
RFC は大抵の場合、我々より PHP に精通した人が提案し、議論し、要否を決定しているため、RFC を読み、その提案理由を考えることは、PHP 上級者への一歩です。
しかし、RFC は英語で記述されていますし、そもそもの仕組みを理解していない場合はどこから手をつけていいのかわからないなど、ハードルが高くないでしょうか。
本セッションでは、そんな PHP の RFC について、他の言語とも比較しながら、仕様が決定されるまでの基本的な仕組みや、読み方を紹介します。
「PHP の仕様は RFC によって決められている。」これは PHPer ならご存知かと思います。
技術ブログや Twitter でときどき取り上げられる RFC ですが、実は自分で読んだことがない方は多いのではないでしょうか。
RFC は大抵の場合、我々より PHP に精通した人が提案し、議論し、要否を決定しているため、RFC を読み、その提案理由を考えることは、PHP 上級者への一歩です。
しかし、RFC は英語で記述されていますし、そもそもの仕組みを理解していない場合はどこから手をつけていいのかわからないなど、ハードルが高くないでしょうか。
本セッションでは、そんな PHP の RFC について、他の言語とも比較しながら、仕様が決定されるまでの基本的な仕組みや、読み方を紹介します。