業務でGoogleAppsScriptを利用する機会があり、その延長でJavaScriptを勉強しています。
個人の経験としてC、C#、Javaなどは扱ったことがあるのですが、JavaScriptは未経験です。
配列の要素にアクセスする関数を学びました。
簡単に表にまとめましたが、一番右の列に出てくるspliceを覚えると、
その便利さゆえにshiftやpopを使わなくて良いと思うかもしれませんね。
ただ、以下のような懸念があります。
●引数を最後まで読まないと、追加、削除、その両方をやりたいのかわからない。
●何でも出来るがゆえに、引数を間違えると、不具合の元になる。
→数が増えれば、増えるほどコピペしたくなるし。
●(spliceに限りませんが)便利な関数ということは、入力パターンが増える。
その分、開発もテストもしっかりしていないといけない。
→脆弱性が見つかり、別の関数に置き換える必要が出て来た時に、影響範囲が大きくなる。
#プログラム"言語"ということを再認識
逆にshiftやpopを使った場合は、アクセス先が関数から読み取れるので、理解がしやすい。
これって、言葉の概念を学んだことに似ているなと思いました🐊
●概念を知らないと、説明やソースコードが長くなりがち。
●長い説明やソースコードは、"長くても筋が通っていて正確であること"が求められる。これは難しい。
●共通の概念を使うと、理解が速く正確になる。
(もちろん受け手もその概念を理解できないと、読み取るのにコストがかかるソースやドキュメントになる)
●自分が使い慣れた概念が、どこでも、誰とでもベストとは限らない。
いろいろなインプット、アウトプットをしていかないと、当然鍛えられないので、
背筋が伸びる思いでした🐊
#最後に
foreachが出て来た時に、「は?forで十分やんけ🐊」と思ってしまったのはないしょ。。。