「労働者が自分の仕事をうまくやりたいなら、まず自分の道具を研ぎ澄まさなければなりません。」 - 孔子、「論語。陸霊公」
表紙 > プログラミング > JS の定数とプラトンとアリストテレスはそれと何の関係があるのか

JS の定数とプラトンとアリストテレスはそれと何の関係があるのか

2024 年 8 月 15 日に公開
ブラウズ:665

Constants in JS and what do Plato and Aristotle have to do with it

後輩たちはコードコンポーネントを物質的なものとして見ているのに対し、先輩たちは理想的なカテゴリーをより扱っているように思えます。
それとも、専門的なレベルではなく、その人の世界観に依存するのでしょうか?

コード レビュー中に、開発者が定数 CAR_WIDTH の代わりに定数 TABLE_WIDTH を使用しているコードに遭遇することがあります。これは、開発者が適切な値を持つ最初に見つけた定数だったためです。

これは、開発者が名前ではなく値に基づいて定数を選択する場合によくある問題です。開発者は定数の主な目的を理解していないことが判明しました。彼の見解では、定数は再利用と読みやすさだけを目的としています。

これについてプラトンとアリストテレスが何を言ったかを思い出してみましょう。

彼らには SHIP_OF_THESEUS という独自の定数がありました。
https://en.wikipedia.org/wiki/Ship_of_Theseus
おそらくギリシャ語では別の名前が付けられていると思いますが、ラテン語で書くので英語に翻訳します。

const SHIP_OF_THESEUS = {
    name: "Ship of Theseus",
    parts: ["mast", "hull", "sail"]
};
この例の

定数 SHIP_OF_THESEUS は、テセウスの船の不変のアイデンティティを象徴しています。時間の経過とともに変化するその値は、物質の変化を表します。

// Day 1: Initial state of the ship
const SHIP_OF_THESEUS = {
    name: "Ship of Theseus",
    parts: ["mast", "hull", "sail"]
};

// Day 2: Developer changes one part of the ship
const SHIP_OF_THESEUS = {
    name: "Ship of Theseus",
    parts: ["new mast", "hull", "sail"]
};

// Day 3: Developer changes another part of the ship
const SHIP_OF_THESEUS = {
    name: "Ship of Theseus",
    parts: ["new mast", "new hull", "sail"]
};

// Day 4: Developer changes structure of the part of the ship
const SHIP_OF_THESEUS = {
    name: "Ship of Theseus",
    parts: {
        mast: "new mast",
        hull: "new hull",
        sail: "sail"
    }
};

理想(一定):

SHIP_OF_THESEUS: 毎日、この定数はテセウスの船の理想的な本質を表します。価値は変化しても、船のコンセプトは変わりません。

材料 (定数の値):

パーツ: 毎日変更される船のパーツのリスト。これは、時間の経過とともに変化する船の物質的な具体化を反映しています。

理想と物質についてのプラトン:

理想の形としての不変のSHIP_OF_THESEUSは変わらず、毎日テセウスの船を表しています。ただし、素材の変更を反映して、その値 (パーツ) が変更される可能性があります。

形式と物質についてのアリストテレス:

アリストテレスは、船のアイデンティティはその

形式機能を通じて保存されると言うでしょう(JSのダックタイピングに非常に似ていますね?)。この例では、船の部品は変化しますが、オブジェクトの形状 (構造と機能) は変わりません。部品は変わっても、毎日同じテセウスの船です。

それでは、定数を使用する実際の利点は何でしょうか?

主な利点は読みやすさや再利用しやすさではありません。主な利点は、コードを

理想物質 (プラトンによれば) または 形式物質 (アリストテレスによれば) に分離できることです。 .

この分離を行うことで、形を変えずに物事を変えることができます。

そして、問題を心配することなく、プログラム全体でこのフォームを使用できます。

リリースステートメント この記事は次の場所に転載されています: https://dev.to/simprl/constants-in-js-and-what-do-plato-and-aristotle-have-to-do-with-it-2boi?1侵害がある場合は、削除するには[email protected]までご連絡ください。
最新のチュートリアル もっと>

免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。

Copyright© 2022 湘ICP备2022001581号-3