毎年殺されるPHPとは何か
by
usuyuki
Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
Slide 1
Slide 1 text
毎年殺されるPHPとは何か FY24 Tech Talk 2024/6/18 10min うすゆき たくさんコメントください!!!
Slide 2
Slide 2 text
お前誰よ うすゆきです。PHPだけ、素人ではありません。 PHPerKaigi 2023 当日スタッフ PHPerKaigi 2024 ルーキーズLT登壇 ピクシブ株式会社 PHP製内製FWのリファクタ 株式会社luco PHP製新規APIの開発 カンファレンス お仕事
Slide 3
Slide 3 text
PHP 1995年登場のWeb向けインタプリタ言語です。
Slide 4
Slide 4 text
PHP 1995年登場のWeb向けインタプリタ言語です。 昔から「PHP is dead」と言われています。
Slide 5
Slide 5 text
PHP 昔から「PHP is dead」と言われています。 知の結晶である𝕏(旧Twitter)調べた結果... 1995年登場のWeb向けインタプリタ言語です。
Slide 6
Slide 6 text
PHP 昔から「PHP is dead」と言われています。 1995年登場のWeb向けインタプリタ言語です。
Slide 7
Slide 7 text
7 このスライドで伝えたいこと【結論】 1. なんとなくで判断しないで! PHPはレガシー。その情報の根拠は? 2. 成熟で多様なコミュニティは良い! 歴史あるけどオープンなコミュニティ
Slide 8
Slide 8 text
8 このスライドで伝えたいこと【結論】 この2つを伝えるための茶番です。 歴史ある色々な言語に言えそう。楽しんで聞いてください! 1. なんとなくで判断しないで! PHPはレガシー。その情報の根拠は? 2. 成熟で多様なコミュニティは良い! 歴史あるけどオープンなコミュニティ
Slide 9
Slide 9 text
なぜPHPか PHPに育てられたから 本資料はPHPへの愛を持って作られています。 「化石(PHP)がなんか喋ってるなぁ〜」のノリで聞いてね
Slide 10
Slide 10 text
もくじ 人間は育ててもらった言語を親だと思うんだよ(起) 想像を超えるPHP(承) モダンPHP(転) 超PHPerになろう(結) 0 1 2 3 まとめ 4 10
Slide 11
Slide 11 text
11 想像を超えるPHP 早速ですが、クイズです。
Slide 12
Slide 12 text
12 ①PHPが使われていないものはどれ 1. Facebook 2. メルカリ 3. pixiv 4. Slack 5. ウマ娘
Slide 13
Slide 13 text
13 ①PHPが使われていないものはどれ 1. Facebook(採用ページより) 2. メルカリ(採用ページより) 3. pixiv(採用ページより) 4. Slack(採用ページより) 5. ウマ娘(PHP Conference Japan 2022 の Proposalより) ごめんなさい。 全部PHP使われてます。
Slide 14
Slide 14 text
14 PHPって人気の言語だな〜〜!!
Slide 15
Slide 15 text
15 PHPの言語仕様、わたし、気になります!
Slide 16
Slide 16 text
16 ②PHP8.1の組み込み関数の数 発案:PHPer Tea Night★第三夜 「お前はPHPの標準関数の数を知っているか」 tadsan 1. 26 2. 71 3. 774 4. 3759 組み込み関数:初期環境でそのまま使えるやつ 例:count(), var_dump(),
Slide 17
Slide 17 text
17 ②PHP8.1の組み込み関数の数 発案:PHPer Tea Night★第三夜 「お前はPHPの標準関数の数を知っているか」 tadsan 1. 26 2. 71(Python 3.12の組み込み関数数) 3. 774 4. 3759(コア拡張以外も含めた組み込み関数)
Slide 18
Slide 18 text
18 多くね?????
Slide 19
Slide 19 text
19 どんな関数があるのか。
Slide 20
Slide 20 text
20 PHPにある関数の例 日の出や日の入りを計算する関数 date_sun_info(strtotime("2022-12-21"), 70.21, -148.51);
Slide 21
Slide 21 text
21 日の出の計算をどこでも呼べて すごいなぁ〜〜()
Slide 22
Slide 22 text
22 関数以外の仕様も見てみる
Slide 23
Slide 23 text
23 これってどうなると思います(~PHP7.4)?
Slide 24
Slide 24 text
24 暗黙的型変換(~PHP7.4) https://3v4l.org/dY3Go#v7.4.33
Slide 25
Slide 25 text
25 〜〜〜〜〜(気遣いすごいな)
Slide 26
Slide 26 text
26 暗黙的型変換(~PHP7.4)
Slide 27
Slide 27 text
27 暗黙的型変換(~PHP7.4) もちろんtrueです
Slide 28
Slide 28 text
28 他にもやばいやつ(~PHP7.4) 存在しない変数、 呼び出しても実行できます!
Slide 29
Slide 29 text
29 先ほどは4年前のPHP7.4の話...
Slide 30
Slide 30 text
もくじ 人間は育ててもらった言語を親だと思うんだよ(起) 想像を超えるPHP(承) モダンPHP(転) 超PHPerになろう(結) 0 1 2 3 まとめ 4 30
Slide 31
Slide 31 text
31 ③PHP8.3に無い型表現はどれ 1. Union型 2. 列挙型 3. True型 4. ジェネリクス
Slide 32
Slide 32 text
32 ③PHP8.3に無い型表現はどれ 1. Union型(PHP8.0~) 2. 列挙型(PHP8.1~) 3. True型(PHP8.2~) 4. ジェネリクス 1~3は言語組み込みの型なので、型の不一致で実行時にエラーが出ます。
Slide 33
Slide 33 text
33 PHP8.3のコード例
Slide 34
Slide 34 text
34 エンタープライズにありがちな構成例 1. PHPStanで型表現・静的解析 2. PHP-DIでDIコンテナ 3. PHPUnitでテスト 4. PHP-CS-Fixerでコード修正 5. (Swooleで非同期処理)
Slide 35
Slide 35 text
35 PHPStan(静的解析ライブラリ)でもっと表現豊かに ジェネリクス 条件付き戻り値型 範囲制約型
Slide 36
Slide 36 text
36 PHP製フレームワーク Bear.Sundayチュートリアルコード 範囲制約型
Slide 37
Slide 37 text
37 PHP製フレームワーク Bear.Sundayチュートリアルコード 範囲制約型 DIできるような型定義 抽象に依存 引数の型定義 綺麗な名前空間
Slide 38
Slide 38 text
38 モダンな言語の構文も多数!
Slide 39
Slide 39 text
39 その他 mapや無名関数、もちろんあります。
Slide 40
Slide 40 text
40 その他 matchもできます。
Slide 41
Slide 41 text
41 その他 エルビス演算子?:、宇宙船演算子<=>とかも soupsをname順にソート、同じ名前ならyear順にソート
Slide 42
Slide 42 text
42 モダンな言語や型もアツい! (PHP9も楽しみ...)
Slide 43
Slide 43 text
もくじ 人間は育ててもらった言語を親だと思うんだよ(起) 想像を超えるPHP(承) モダンPHP(転) 超PHPerになろう(結) 0 1 2 3 まとめ 4 43
Slide 44
Slide 44 text
44 超PHPerになろう(結)
Slide 45
Slide 45 text
45 ④今年開催のPHPカンファレンスの数は? 1. 1 2. 3 3. 5 4. 8 勉強会や企業開催のイベントは除きます。カンファレンスと名前の付くもの OR PHPerKaigiを対象。
Slide 46
Slide 46 text
46 ④今年開催のPHPカンファレンスの数は? 1. 1 2. 3 3. 5 4. 8 勉強会や企業開催のイベントは除きます。カンファレンスと名前の付くもの OR PHPerKaigiを対象。
Slide 47
Slide 47 text
47 今、PHPがアツい
Slide 48
Slide 48 text
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年から毎年開催 )
Slide 49
Slide 49 text
49 PHP界隈、あったけぇ〜〜
Slide 50
Slide 50 text
もくじ 人間は育ててもらった言語を親だと思うんだよ(起) 想像を超えるPHP(承) モダンPHP(転) 超PHPerになろう(結) 0 1 2 3 まとめ 4 50
Slide 51
Slide 51 text
51 まとめ 1. なんとなくで判断しないで! 2. 成熟で多様なコミュニティは良い! 【陳腐】PHPは型がない、PHPは遅い 【混同】PHPはレガシー、PHPは書きにくい 【成熟】言語に歴史あらばサービスに歴史あり 【多様】学生から年長者までいっぱい
Slide 52
Slide 52 text
52 ありがとうございました!