후배들은 코드 구성요소를 물질적인 것으로 보는 반면, 선배들은 이상적인 카테고리를 더 많이 다루는 것 같습니다.
아니면 직업적 수준보다는 개인의 세계관에 달려 있는 걸까요?
때때로 코드 검토 중에 개발자가 상수 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의 덕 타이핑과 매우 비슷하지 않나요?). 이 예에서는 배의 부분이 변경되더라도 물체의 형태(구조 및 기능)는 변경되지 않습니다. 부분이 변경되었음에도 불구하고 매일 같은 테세우스의 배입니다.
가장 큰 이점은 가독성과 재사용성이 아닙니다. 주요 이점은 코드를 이상적인 및 재료(플라톤에 따르면) 또는 형식 및 물질(아리스토텔레스에 따르면)으로 분리한다는 것입니다. .
이러한 분리를 통해 형식을 변경하지 않고도 문제를 변경할 수 있습니다.
그리고 프로그램 내내 문제에 대한 걱정 없이 양식을 사용할 수 있습니다.
부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.
Copyright© 2022 湘ICP备2022001581号-3