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
TechBowlのPRレビューで指摘されたこと
Search
shy
December 04, 2024
0
200
TechBowlのPRレビューで指摘されたこと
https://techtrain.connpass.com/event/330882/
shy
December 04, 2024
Tweet
Share
Featured
See All Featured
Information Architects: The Missing Link in Design Systems
soysaucechin
0
780
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Done Done
chrislema
186
16k
Documentation Writing (for coders)
carmenintech
77
5.3k
Hiding What from Whom? A Critical Review of the History of Programming languages for Music
tomoyanonymous
2
430
Scaling GitHub
holman
464
140k
DBのスキルで生き残る技術 - AI時代におけるテーブル設計の勘所
soudai
PRO
62
50k
JAMstack: Web Apps at Ludicrous Speed - All Things Open 2022
reverentgeek
1
350
Navigating Team Friction
lara
192
16k
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
0
230
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
440
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
1.7k
Transcript
TechBowlのPRレビューで 指摘されたこと
橋本 創平 / そうちゃん / shy 23年卒の新卒2年目。TechBowlには 2021年よりエンジニアインターンとして join。 2023年3月に就職のため退職、同年8
月より副業として再join。 現在、本業では認証認可基盤周辺 サービスの設計・開発に従事。 素人PHPer。
色々な実装をしたけど、、 この時はなんとなく理解で進め ていましたが、 振り返る目的も持ちつつ、深 掘ってみる (最近MBTIがENFP→ENTPにな りました) 私が 対応したPR
自分が対応した PR を振り返ってみた
date()ではなく、 Carbonを使いたみ PHPの組み込み関数 date() で はなく、 Laravelで広く使われている Carbon ライブラリを使用して欲 しいというレビュー
(現在TechBowlバックエンドチームでは CarbonImmutableを使用)
そもそもCarbonってなんで作られたの CarbonはPHPの標準的な日付 ・時刻操作をより直感的かつ 強力に行うために開発された ライブラリ 昔のPHPは日付や時刻操作が 色々と大変だったらしい https://carbon.nesbot.com/
そもそもCarbonってなんで作られたの CarbonはPHPの標準的な日付 ・時刻操作をより直感的かつ 強力に行うために開発された ライブラリ 昔のPHPは日付や時刻操作が 色々と大変だったらしい https://carbon.nesbot.com/ もうちょっと深掘ってみる
Carbonの実装を見てみる https://github.com/briannesbitt/Carbon 多言語対応 に近い実装
Carbonのマクロ機能を見てみる https://github.com/briannesbitt/Carbon ①macroとして内部で保持される ②macroの登録有無で処理の出しわけ
マクロ機能ってよくあるやつ? https://laravel.com/api/master/Illuminate/Support/Traits/Macroable.html Laravelにも Illuminate\Support\Traits\Macroable というものがあった 柔軟性、拡張性が上がるものの自由 すぎてプロジェクトで採用したら困り そう OSS開発の時には視野に入れると良 さそう
他のレビューも見てみる
declare(strict_mode=1); を入れる PHP7で導入された記述で、 今まで関数やメソッドの引数および 戻り値の型に対して暗黙的に型変 換が行われていたものを strict_mode=1で指定すると厳密に チェックするようになるもの
どこで厳密にチェックされているんだろ? PHPのソースコードを読んでみる! ・・・が、PHPはC言語で実装されてい るためなんとなくで、、 php-srcを読んでみよう
どこで厳密にチェックされているんだろ? 型チェック 引数や型の 情報を保持 暗黙的な 型変換 https://github.com/php/php-src
https://github.com/php/php-src 型変換の流れも考えてみる 配列のkeyで指定された1が ”1”に変換される
事業の状況などを見つつ深ぼるのも必要そう!