본문 바로가기

TechBlog

(2)
🐣자바스크립트에서 덕 타이핑(Duck Typing) 이해하기 위 동물이 강아지 같으신가요? 오리 같으신가요?? 자바스크립트는 주저 없이 ‘오리’라고 말합니다. 왜냐고요? ‘오리처럼 걷고, 오리처럼 운다면 그것은 오리다.’바로 20세기 미국 철학자 제임스 휘트컴 라일리가 남긴 덕 테스트(Duck Test) 라는 격언에서 비롯된 말입니다. 이 ‘덕 테스트’에서 파생된 개념이 바로 프로그래밍 세계의 덕 타이핑(Duck Typing) 이죠. 자바스크립트는 객체가 어떤 클래스인지보다 오리처럼 행동(메서드·프로퍼티)을 할 수 있는지를 기준으로 타입을 판단합니다.우선 덕 타이핑을 알아보기 전에, 자바스크립트가 어떤 타입 언어인지부터 짚고 넘어가야 합니다.자바스크립트는 흔히 “유연한 언어”라고 불리지만, 그 이유를 정확히 이해하려면정적 타입 언어와 동적 타입 언어의 차이를 먼저..
[refactor] Lv.1 아키텍처 개선기: FSD 도입 이야기 리팩토링의 시작: 폴더 구조부터 정리하기이 프로젝트를 시작할 때 폴더 구조나 아키텍처에 대한 개념이 부족했다. 기능을 추가하는 데 집중하다 보니 폴더 구조는 점점 복잡해졌고 유지보수가 어려운 상태가 되었다. 코드가 어디에 위치해야 하는지 명확하지 않아 개발 속도가 느려지고 협업에도 문제가 발생하기 시작했다.이 문제를 해결하기 위해 폴더 구조를 정리하기로 했고 다양한 프론트엔드 아키텍처를 조사했다. 리액트 환경에서 유지보수성과 확장성을 고려했을 때 Feature-Sliced Design(FSD) 아키텍처가 적합하다고 판단했다.기존 폴더 구조기존 폴더 구조는 기능별 분류가 명확하지 않았고 코드가 여러 곳에 흩어져 있어 유지보수가 어려웠다.├── apis/│ ├── codingzone-api.js│ ├..