TL;DR
- Building Maintainable PHP Applications: Foundations는 중급 소프트웨어 엔지니어링 과정으로, 17개 강의를 통해 유지보수 가능한 PHP 애플리케이션의 기초를 다룸.
- 코드베이스가 퇴화하는 이유와 맥락, 변경 비용 곡선이 모든 결정에 미치는 영향을 설명하고, 나중에 코드를 읽을 사람을 고려한 최적화의 중요성을 다룸.
- 결합도와 응집도, 본질적·우발적 복잡성, 과잉·부족 엔지니어링, 성급한 추상화, 기술 부채와 보이스카우트 규칙을 살펴봄.
- 프레임워크와 데이터 중심 사고에서 벗어나 비즈니스 프로세스를 모델링하고, 의도에 따라 코드 이름을 정하며, 구현에 앞서 사용 사례를 계획하는 방법을 다룸.
- 기존 코드베이스를 변경하기 전에 읽는 법과 결정의 이유를 기록하는 법을 다루며, 다음 작업의 비용을 낮추는 전략적 프로그래밍을 강조함.
기반 다지기
- 코드베이스가 퇴화하는 이유, 맥락과 변경 비용 곡선이 모든 결정에 미치는 영향, 나중에 코드를 읽을 사람을 위해 코드를 최적화해야 하는 이유를 설명함.
- 강의: 코드베이스는 왜 대부분 퇴화하는가.
- 강의: 모든 것은 현재 처한 맥락에 달려 있음.
- 강의: 변경 비용 곡선.
- 강의: 코드 읽기와 코드 작성.
코드를 바꾸기 어렵게 만드는 요인
- 코드를 바꾸기 어렵게 만드는 요인인 결합도와 응집도, 본질적 복잡성과 우발적 복잡성, 과잉 엔지니어링과 부족한 엔지니어링, 성급한 추상화, 실제 기술 부채와 보이스카우트 규칙을 다룸.
- 강의: 결합도와 응집도.
- 강의: 우발적 복잡성과 본질적 복잡성.
- 강의: 부족한 엔지니어링과 과잉 엔지니어링.
- 강의: 성급한 추상화.
- 강의: 기술 부채와 보이스카우트 규칙.
코드를 생각하는 방식
- 프레임워크 중심·데이터 형태 중심 사고에서 비즈니스 프로세스 모델링으로 전환하고, 의도에 따라 코드 이름을 정하며, 구현을 작성하기 전에 사용 사례를 계획하는 방법을 다룸.
- 강의: 프레임워크 결합과 프레임워크 분리.
- 강의: 데이터 중심 사고와 비즈니스 프로세스 중심 사고.
- 강의: 의도에 따른 이름 짓기.
- 강의: 코딩 전 계획하기.
직접 작성하지 않은 코드와 함께 일하기
- 각 작업이 다음 작업의 비용을 낮추도록 하는 태도를 정립하고, 프레임워크의 MVC(Model-View-Controller)를 많은 기존 코드베이스의 기준점으로 다룸.
- 변경 전에 직접 작성하지 않은 코드베이스를 읽는 법과, 다음 독자가 의도적인 지름길과 실수를 구분할 수 있도록 결정의 이유를 기록하는 법을 익힘.
- 강의: 전략적 프로그래밍과 전술적 프로그래밍.
- 강의: Model-View-Controller — 모두가 아는 기준점.
- 강의: 직접 작성하지 않은 코드베이스 읽기.
- 강의: 결정의 이유 기록하기.
- 과정 시작일: 2026년 8월 11일.
- 다음 콘텐츠 공개일: 2026년 10월 6일.
- 난이도: 중급.
- 분야: 소프트웨어 엔지니어링.
- 강의 수: 17개.
- 강사: Davor Minchorov.
댓글 (0)
로그인하면 이 기사에 내 생각을 남길 수 있어요