Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
毎年殺されるPHPとは何か
Search
usuyuki
June 18, 2024
Education
0
150
毎年殺されるPHPとは何か
FY24Eng Tech Talk発表資料の公開版
PHPへの愛を持って作られています。
usuyuki
June 18, 2024
Tweet
Share
More Decks by usuyuki
See All by usuyuki
新卒1ヶ月半の邁進と変化
usuyuki
1
510
5分で理解するWebAssemblyのWebの外の話 PHPはマイコンの夢を見るか?
usuyuki
3
600
Git -研究室ミーティング2023/12/1資料-
usuyuki
0
490
非公式内定者懇親会 LT たのしい企業理念クイズ!
usuyuki
0
610
技育展2023 ブロック予選関東① かどで日記
usuyuki
0
630
サポーターズエンジニア1on1面談イベント10月自己紹介
usuyuki
0
1.6k
U-lab定期LT10月 古代技術と現代技術の融合VSCodeVimのススメ
usuyuki
0
1.2k
PHPerと就活
usuyuki
0
1.2k
技育CAMP vol.5 発表スライド(うすゆき_むすびねる)
usuyuki
0
1.1k
Other Decks in Education
See All in Education
Ch2_-_Partie_1.pdf
bernhardsvt
0
110
Ch2_-_Partie_3.pdf
bernhardsvt
0
100
Beispiel einer Fortbildung für "Soziales Lernen"
gsgoethe
0
120
The Blockchain Game
jscottmo
0
3.7k
Padlet opetuksessa
matleenalaakso
4
12k
Introduction - Lecture 1 - Web Technologies (1019888BNR)
signer
PRO
0
4.9k
Zoom-ohjeet
matleenalaakso
7
7.2k
TP5_-_UV.pdf
bernhardsvt
0
100
コンセプトシェアハウス講演資料
uchinomasahiro
0
390
ACT FAST 20240830
japanstrokeassociation
0
320
Requirements Analysis and Prototyping - Lecture 3 - Human-Computer Interaction (1023841ANR)
signer
PRO
0
800
Medidas en informática
irocho
0
290
Featured
See All Featured
jQuery: Nuts, Bolts and Bling
dougneiner
61
7.5k
The MySQL Ecosystem @ GitHub 2015
samlambert
250
12k
Imperfection Machines: The Place of Print at Facebook
scottboms
265
13k
Java REST API Framework Comparison - PWX 2021
mraible
PRO
28
8.2k
Done Done
chrislema
181
16k
GitHub's CSS Performance
jonrohan
1030
460k
The World Runs on Bad Software
bkeepers
PRO
65
11k
The Cost Of JavaScript in 2023
addyosmani
45
6.8k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
16
2.1k
Thoughts on Productivity
jonyablonski
67
4.3k
Adopting Sorbet at Scale
ufuk
73
9.1k
Ruby is Unlike a Banana
tanoku
97
11k
Transcript
毎年殺されるPHPとは何か FY24 Tech Talk 2024/6/18 10min うすゆき たくさんコメントください!!!
お前誰よ うすゆきです。PHPだけ、素人ではありません。 PHPerKaigi 2023 当日スタッフ PHPerKaigi 2024 ルーキーズLT登壇 ピクシブ株式会社 PHP製内製FWのリファクタ 株式会社luco
PHP製新規APIの開発 カンファレンス お仕事
PHP 1995年登場のWeb向けインタプリタ言語です。
PHP 1995年登場のWeb向けインタプリタ言語です。 昔から「PHP is dead」と言われています。
PHP 昔から「PHP is dead」と言われています。 知の結晶である𝕏(旧Twitter)調べた結果... 1995年登場のWeb向けインタプリタ言語です。
PHP 昔から「PHP is dead」と言われています。 1995年登場のWeb向けインタプリタ言語です。
7 このスライドで伝えたいこと【結論】 1. なんとなくで判断しないで! PHPはレガシー。その情報の根拠は? 2. 成熟で多様なコミュニティは良い! 歴史あるけどオープンなコミュニティ
8 このスライドで伝えたいこと【結論】 この2つを伝えるための茶番です。 歴史ある色々な言語に言えそう。楽しんで聞いてください! 1. なんとなくで判断しないで! PHPはレガシー。その情報の根拠は? 2. 成熟で多様なコミュニティは良い! 歴史あるけどオープンなコミュニティ
なぜPHPか PHPに育てられたから 本資料はPHPへの愛を持って作られています。 「化石(PHP)がなんか喋ってるなぁ〜」のノリで聞いてね
もくじ 人間は育ててもらった言語を親だと思うんだよ(起) 想像を超えるPHP(承) モダンPHP(転) 超PHPerになろう(結) 0 1 2 3 まとめ
4 10
11 想像を超えるPHP 早速ですが、クイズです。
12 ①PHPが使われていないものはどれ 1. Facebook 2. メルカリ 3. pixiv 4. Slack
5. ウマ娘
13 ①PHPが使われていないものはどれ 1. Facebook(採用ページより) 2. メルカリ(採用ページより) 3. pixiv(採用ページより) 4. Slack(採用ページより)
5. ウマ娘(PHP Conference Japan 2022 の Proposalより) ごめんなさい。 全部PHP使われてます。
14 PHPって人気の言語だな〜〜!!
15 PHPの言語仕様、わたし、気になります!
16 ②PHP8.1の組み込み関数の数 発案:PHPer Tea Night★第三夜 「お前はPHPの標準関数の数を知っているか」 tadsan 1. 26 2.
71 3. 774 4. 3759 組み込み関数:初期環境でそのまま使えるやつ 例:count(), var_dump(),
17 ②PHP8.1の組み込み関数の数 発案:PHPer Tea Night★第三夜 「お前はPHPの標準関数の数を知っているか」 tadsan 1. 26 2.
71(Python 3.12の組み込み関数数) 3. 774 4. 3759(コア拡張以外も含めた組み込み関数)
18 多くね?????
19 どんな関数があるのか。
20 PHPにある関数の例 日の出や日の入りを計算する関数 date_sun_info(strtotime("2022-12-21"), 70.21, -148.51);
21 日の出の計算をどこでも呼べて すごいなぁ〜〜()
22 関数以外の仕様も見てみる
23 これってどうなると思います(~PHP7.4)?
24 暗黙的型変換(~PHP7.4) https://3v4l.org/dY3Go#v7.4.33
25 〜〜〜〜〜(気遣いすごいな)
26 暗黙的型変換(~PHP7.4)
27 暗黙的型変換(~PHP7.4) もちろんtrueです
28 他にもやばいやつ(~PHP7.4) 存在しない変数、 呼び出しても実行できます!
29 先ほどは4年前のPHP7.4の話...
もくじ 人間は育ててもらった言語を親だと思うんだよ(起) 想像を超えるPHP(承) モダンPHP(転) 超PHPerになろう(結) 0 1 2 3 まとめ
4 30
31 ③PHP8.3に無い型表現はどれ 1. Union型 2. 列挙型 3. True型 4. ジェネリクス
32 ③PHP8.3に無い型表現はどれ 1. Union型(PHP8.0~) 2. 列挙型(PHP8.1~) 3. True型(PHP8.2~) 4. ジェネリクス
1~3は言語組み込みの型なので、型の不一致で実行時にエラーが出ます。
33 PHP8.3のコード例
34 エンタープライズにありがちな構成例 1. PHPStanで型表現・静的解析 2. PHP-DIでDIコンテナ 3. PHPUnitでテスト 4. PHP-CS-Fixerでコード修正
5. (Swooleで非同期処理)
35 PHPStan(静的解析ライブラリ)でもっと表現豊かに ジェネリクス 条件付き戻り値型 範囲制約型
36 PHP製フレームワーク Bear.Sundayチュートリアルコード 範囲制約型
37 PHP製フレームワーク Bear.Sundayチュートリアルコード 範囲制約型 DIできるような型定義 抽象に依存 引数の型定義 綺麗な名前空間
38 モダンな言語の構文も多数!
39 その他 mapや無名関数、もちろんあります。
40 その他 matchもできます。
41 その他 エルビス演算子?:、宇宙船演算子<=>とかも soupsをname順にソート、同じ名前ならyear順にソート
42 モダンな言語や型もアツい! (PHP9も楽しみ...)
もくじ 人間は育ててもらった言語を親だと思うんだよ(起) 想像を超えるPHP(承) モダンPHP(転) 超PHPerになろう(結) 0 1 2 3 まとめ
4 43
44 超PHPerになろう(結)
45 ④今年開催のPHPカンファレンスの数は? 1. 1 2. 3 3. 5 4. 8
勉強会や企業開催のイベントは除きます。カンファレンスと名前の付くもの OR PHPerKaigiを対象。
46 ④今年開催のPHPカンファレンスの数は? 1. 1 2. 3 3. 5 4. 8
勉強会や企業開催のイベントは除きます。カンファレンスと名前の付くもの OR PHPerKaigiを対象。
47 今、PHPがアツい
48 今、PHPがアツい!! 1月 PHPカンファレンス北海道 2024 2月 PHPカンファレンス関西 2024 ←6年ぶりの開催 3月 PHPerKaigi
2024 (東京) ←iOSDC Japanと同じ主催者 4月 PHPカンファレンス小田原 2024 ←初開催 5月 PHPカンファレンス香川 2024 ←初開催 6月 PHPカンファレンス福岡 2024 ←今週末開催! 主催は24新卒! 9月 PHPカンファレンス沖縄 2024 12月 PHPカンファレンス Japan 2024(東京) ←25回目(2000年から毎年開催 )
49 PHP界隈、あったけぇ〜〜
もくじ 人間は育ててもらった言語を親だと思うんだよ(起) 想像を超えるPHP(承) モダンPHP(転) 超PHPerになろう(結) 0 1 2 3 まとめ
4 50
51 まとめ 1. なんとなくで判断しないで! 2. 成熟で多様なコミュニティは良い! 【陳腐】PHPは型がない、PHPは遅い 【混同】PHPはレガシー、PHPは書きにくい 【成熟】言語に歴史あらばサービスに歴史あり 【多様】学生から年長者までいっぱい
52 ありがとうございました!