外部ライブラリetcをなるべく使わない主義
理由 : 他人の書いたコードを読むのが面倒
自分が昔書いたコードを読むのすらちょっと大変なのに
バグを引いたときにどこが原因か探るためには、コードの全体像を知っておく必要があると思うので……
これわかるtakker.icon
自分も大体似た立場takker.icon
そのうえで、すでに実装されていて、かつすぐコードを読めるくらいの小さいものはガンガン使ってる
読むのはbundle sizeを気にしているのが主な理由だけど、その過程で大体処理内容がわかるので、結果的に全体像は知れる
流石にpreactとか$ \KaTeXあたりは読んでなけど……
コードが複雑で大変
ドキュメントではなくコード自体を読む?Mijinko_SD.icon
利用するだけならコードまで読む必要は無いはずだけど
本来はコード読む必要ないはずなんですけど、ライブラリ側のバグをよく引くので結果的にコードを読まなきゃいけなくなり……綾坂こと.icon
デバッグまでしようとしている?
Q. じゃあどうする
A1. 自前でライブラリetcをつくる
importは便利なので使う
わかるtakker.icon
数値計算とか画像処理とか$ \KaTeXとかしない限りは大体なんとかなる
言語の公式モジュールで実装されているのを見るとかっこいいと感じる(私はできない)
ちゃんとドキュメントがあって最近更新されてるなら積極的に使う
問題が出たら逃げればいいのか
コードの品質はそのコードを読む人の量と相関があるnishio.icon
巨人の肩に乗ろう、どんどん使っていこう!をやって後悔したので使わない派になったSummer498.icon
期待通りに動くかどうか、確認しないとわからない
確認せずに期待通りに動くだろうと思っているのは、そのライブラリに対する信仰というか盲信と言うか
確認の手間と1から実装する手間を比べて確認の手間のほうが小さかったらやる
全部読むことで自分のコードにする
逆だなぁMijinko_SD.icon
もちろん、何でもかんでも使う訳では無い
1年に数回程度はリリースしている
PRを溜め込みすぎていない
リリース頻度多くなくてもPRが溜まっていないならまあ許容って感じ
ただ、議論がエスカレートしてなかなかマージされないようなPRが多いこともあるbsahd.icon
Star数が最低でも4桁以上はある
フレームワークレベルで重要なやつ(置き換えがしづらいやつ)は5桁は欲しいけど
これ結構大事だと思う
スポンサーがいないと開発が続きにくいので
有名企業からの利用実績がある
悪い噂(使わない理由を述べた噂)があまり無い
↑全部を満たしているものはそこまで多くはないので、バランスを見て判断する感じ
マニアックな分野だと特にそう
これが一番やだ
自分より詳しい人なら既に見つけているであろう不具合を、残したままリリースしてしまう可能性も高そうで、それもやだ
多くの人がメンテナンスしているドキュメントより、自分一人が作ったドキュメントが読みやすくなるはずがない
開発の引き継ぎとか考えると、自力で作ることに固執したせいでかえってソースコードの寿命を縮めることに繋がりかねない ただ、これらはあくまで多くの人がメンテナンスやデバッグしているライブラリに限った話
改善を見込めないライブラリに頼らざるを得ない状況なら自分で作った方が良いこともある
これやなぁSummer498.icon
リポジトリの所有者が失踪してたり...bsahd.icon
これは実際あるな……綾坂こと.icon
まあ何が言いたいかって、ライブラリ使う使わないは0, 100じゃないし、手間を減らすなら使う選択肢は必要だよねってことMijinko_SD.icon