logo
/
モダンな書き方を追っていきたいのだけど、いつかそれもリプレースが来るのならば古い(基本の)書き方を続けた方が良いんじゃないか
2021-01-01

大前提として

  • モダンになればなるほど(環境設定や動作が隠されて)作成は簡単になる
  • (例えば)Reactを使える様になるのではなく、それが出来た背景やそれを支える背景を理解しなければならない
    • デザインパターンを学ぶ

特定のエコシステムに依存する学習をする場合

  • それがない場合でも同じことが出来るかを把握
    • 出来なければ、中身(仕組み)の学習を行う
    • 出来るのなら、同じ事を実現するために楽な仕組みを採用するのは問題ない
いま react で実装しているものと同じものを react 無しで書けるかどうかだと思います。もし書けない気がするなら、 react のコードを読んで、中で何が起きてるかを追ってみると良いかと思います。 ( https://qr.ae/pGue2q)
  • Reactを学ぶ(学んでしまう)べきなのか?
    • 正直WebpackやSCSSとは隠蔽のレベルが違う
    • ReactがReactではなくなったとき、リファクタ出来るとは思えない
    • きちんと設計されていてリソースがあれば1から再構築できるだろうけど

環境構築について

環境構築をしても、一度きりでは終わりません。[ライブラリ]が定期的にバージョンアップしていく作業も発生しますし、何かしらの新しいツールやライブラリを付け加えるという作業も発生します。環境周りの面倒を見れるメンバーが一人はプロジェクトにはいることが望ましいです
もしも誰もいないかつReactであればNext.jsを使い、てっとり速く作れる環境を利用すべきです。VueやAngularはデフォルトのプロジェクト作成である程度揃うので、それを活用しましょう。
そして、環境設定はなるべくがんばらず、デフォルトのままで頑張れるだけ頑張るのが良いでしょう。バージョンアップ時は、新しくプロジェクトを作り、そこに既存のコードを持ってきて式年遷宮(ソフトウェアの式年遷宮という考え方)をする、というのがトラブルが少ないと思われます。
[https://future-architect.github.io/typescript-guide/prodenv.html 仕事ですぐに使えるTypeScript]より

その他の考え方

「今一番流行ってるFrameworkだから許されてること」ってあると思う。どんなに学習コスト高くても独自構文でも、流行りなら許される。でも数年経ってこれが負債になった時、ウゲぇって思う時が来るかもしれない。
  • 冷静に見る必要がある。どっぷり浸からずに、使いたい機能だけを使うために使用するという考えで
本当にこんなにほいほいフロントエンドのムーブメントが変わるなら、うんこだから、ひとまずjQueryを覚えて、余った時間は好きな映画でも観て、と言わざるを得ない。
  • 別に最新のものを使わなくても実現出来ることならそれでいい
  • というかサーバサイドやらセキュリティやらを低レイヤーで学ばないと使い物にならない