Saya nampaknya junior melihat komponen kod sebagai perkara material, manakala senior lebih berurusan dengan kategori ideal.
Atau mungkin ia bergantung pada pandangan dunia seseorang dan bukannya tahap profesional mereka?
Kadang-kadang semasa semakan kod, saya terjumpa kod di mana bukannya pemalar CAR_WIDTH, pembangun menggunakan pemalar JADUAL_WIDTH kerana ia adalah pemalar pertama yang dia temui dengan nilai yang sesuai.
Ini adalah masalah biasa apabila pembangun memilih pemalar berdasarkan nilainya dan bukannya namanya. Ternyata pembangun tidak memahami tujuan utama pemalar. Pada pandangan beliau, pemalar hanya untuk digunakan semula dan kebolehbacaan.
Mereka mempunyai pemalar sendiri yang dipanggil SHIP_OF_THESEUS.
https://en.wikipedia.org/wiki/Ship_of_Theseus
Ia mungkin dinamakan berbeza dalam bahasa Yunani, tetapi kami akan menulisnya dalam bahasa Latin dan oleh itu menterjemahkannya ke dalam bahasa Inggeris.
const SHIP_OF_THESEUS = { name: "Ship of Theseus", parts: ["mast", "hull", "sail"] };
Malar SHIP_OF_THESEUS dalam contoh ini melambangkan identiti Kapal Theseus yang tidak berubah. Nilainya, yang berubah dari semasa ke semasa, mewakili perubahan material.
// 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: Setiap hari, pemalar ini mewakili intipati ideal Kapal Theseus. Walaupun nilainya berubah, konsep kapal itu tetap tidak berubah.
bahagian: Senarai bahagian kapal yang berubah setiap hari. Ini mencerminkan penjelmaan material kapal, yang berubah dari semasa ke semasa.
Malar SHIP_OF_THESEUS sebagai bentuk ideal kekal tidak berubah: setiap hari ia mewakili Kapal Theseus. Walau bagaimanapun, nilainya (bahagian) mungkin berubah, mencerminkan perubahan bahan.
Aristotle akan mengatakan bahawa identiti kapal itu terpelihara melalui bentuk dan fungsi (sangat serupa dengan menaip itik dalam JS, bukan?). Dalam contoh kami, walaupun bahagian kapal berubah, bentuk objek (struktur dan fungsinya) kekal tidak berubah. Setiap hari ia masih Kapal Theseus yang sama, walaupun terdapat perubahan pada bahagiannya.
Faedah utama bukan kebolehbacaan dan kebolehgunaan semula. Faedah utama ialah pengasingan kod kepada ideal dan bahan (menurut Plato) atau bentuk dan jirim (menurut Aristotle) .
Dengan membuat perpisahan ini, kita boleh menukar perkara itu tanpa mengubah bentuk.
Dan kita boleh menggunakan borang sepanjang program tanpa perlu risau tentang perkara.
Atas ialah kandungan terperinci Pemalar dalam JS dan apa kaitan Plato dan Aristotle dengannya. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!