Skip to content

Commit 115385f

Browse files
authored
Merge pull request #550 from ThinkAboutSoftware/542-더-나은-프로그래머-되는-법-sprint-3-14장-23장-총-108페이지-2025-05-16-김지수
더 나은 프로그래머 되는법 3주차 - 김지수
2 parents fb42ddf + 75ef492 commit 115385f

File tree

1 file changed

+169
-0
lines changed

1 file changed

+169
-0
lines changed
Lines changed: 169 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,169 @@
1+
# Part2 02 연습을 통해 완벽해진다.
2+
3+
## 더 나은 프로그래머 되는 법 14~23장
4+
5+
### 14장 소프트웨어 개발이란
6+
7+
`Summary`
8+
- 스포츠, 놀이, 집안일의 예시를 통해 소프트웨어 개발의 본질을 이해할 수 있음
9+
- 영상 시청만으로는 실력이 늘지 않으며, 직접 코딩하며 연습해야 한다
10+
- 끊임없이 학습하고 새로운 것을 배우는 자세를 가져야 한다
11+
- 겸손한 마음가짐으로 개발에 임해야 한다
12+
- 코드를 작성할 때마다 "왜?"라는 질문을 던져 명확한 코드를 만들어야 한다
13+
- 코드 정리와 같은 지루한 작업도 피하지 말고 받아들여야 한다
14+
- 복잡한 코드를 정리하고 개선하는 과정을 즐기는 자세가 필요하다
15+
16+
`Topics`
17+
- 최근들어 배웠던 부분중 인상깊었던 것이 있나요?
18+
19+
### 15장 규칙 가지고 놀기
20+
21+
`Summary`
22+
- 규칙은 협업을 위해 꼭 필요하다. 신입도 바로 와서 할 수 있을 정도의 규칙
23+
- 세가지 원칙
24+
- 간결하게 하라
25+
- 머리를 쓰라
26+
- 변하지 않는 것은 없다
27+
- 규칙을 정하되 언제든 변할 수 있다고 생각해야하 함, 규칙은 깨지라고 존재하는 것
28+
- 팀 규칙을 만들어라
29+
30+
`Topics`
31+
- 최근 팀 내에서 세운 규칙이 뭐가 있을까요?
32+
-
33+
### 16장 간결하게 하기
34+
35+
`Summary`
36+
- 코드의 간결함은 두 가지 방향으로 나타날 수 있다
37+
- 잘못된 간결함
38+
- 지나치게 단순화된 코드
39+
- 깊은 고민 없이 작성된 코드
40+
- 복잡한 문제를 과도하게 단순화한 코드
41+
- 좋은 간결함
42+
- 깊은 고민과 설계가 반영된 코드
43+
- 직관적으로 이해할 수 있는 코드
44+
- 별도의 설명 없이도 자연스럽게 사용할 수 있는 인터페이스
45+
- 복잡한 로직을 깔끔한 인터페이스로 추상화한 코드
46+
- 적절한 단위로 모듈화된 설계
47+
- 문제를 지나치게 단순화하면 오히려 복잡한 코드가 만들어질 수 있다
48+
- 정확한 문제 분석과 설계를 통해 진정한 간결함을 달성할 수 있다
49+
- 결론: 좋은 간결함은 초기 설계 단계에서부터 고려되어야 한다
50+
51+
`Topics`
52+
- 설계나 구조 수준에서 최적화 하신 사례가 있으신가요?
53+
54+
### 17장 머리 쓰기
55+
56+
`Summary`
57+
- 단순한 문제는 단순하게, 복잡한 문제는 적절히 해결하기
58+
- KISS 원칙: 불필요한 복잡성 제거, 중복 최소화
59+
- 코드 작성 전 충분한 설계와 고민이 필요
60+
- 실수를 두려워하지 말고 개선의 기회로 삼기
61+
- 기계적인 코딩보다 논리적 사고를 통한 해결
62+
- 더 나은 해결책을 위한 지속적인 학습과 개선
63+
64+
`Topics`
65+
- 가장 멍청한 코드를 작성한 경험이 있나요?
66+
67+
### 18장 변하지 않는 것은 없다
68+
69+
`Summary`
70+
- 모든 코드는 변경 가능하다
71+
- 완벽한 코드는 없다
72+
- 코드 수정에 대한 두려움은 자연스럽다
73+
- 기능이 망가질까 봐
74+
- 추가 작업이 생길까 봐
75+
- 익숙하지 않은 코드를 건드릴까 봐
76+
- 테스트와 리뷰로 두려움 극복하기
77+
- 기술 부채는 기록하고 계획에 반영하기
78+
79+
`Topics`
80+
- 코드 소유권과 전문성 균형에 대해 어떻게 생각하시나요?
81+
82+
83+
### 19장 코드 재사용 사례
84+
85+
`Summary`
86+
- 코드 복사 붙여넣기는 DRY와 KISS 원칙 위반
87+
- 서드파티 라이브러리가 존재한다면 적극 매입
88+
89+
90+
`Topics`
91+
- 현재 진행중인(혹은 진행했던) 프로젝트에서 얼마나 많은 복제코드가 존재하나요?
92+
93+
### 20장 효과적인 버전 관리
94+
95+
`Summary`
96+
- 버전 관리는 지금 당장 시작하라
97+
- 늦었다고 생각할 때가 가장 좋은 시작점이다
98+
- git init 하나로 시작
99+
- 버전 관리 도구를 신중히 선택하라
100+
- 한번 선택한 도구는 끝까지 사용하라
101+
- 잦은 도구 변경은 혼란을 가져온다
102+
- 커밋은 작은 단위로 쪼개 관리하라
103+
- 하나의 변경사항은 하나의 커밋으로
104+
- 명확한 커밋 메시지로 이력 관리
105+
- 브랜치를 적극 활용하라
106+
- 새로운 기능은 새로운 브랜치에서 개발
107+
- 안정적인 메인 브랜치 유지
108+
109+
`Topics`
110+
- 버전관리도구중 GUI와 CLI중 어떤 것을 자주 사용하시나요? 빈도는 어떻게 되시나요?
111+
112+
### 21장 골키퍼 있다고 골 안 들어가랴
113+
114+
`Summary`
115+
- QA팀과의 협력 관계
116+
- QA팀은 품질 향상을 위한 파트너
117+
- 테스트 부서가 아닌 품질 보증 전문가 집단
118+
- 상호 존중이 협업의 기본
119+
- 개발자의 책임
120+
- 배포 전 자체 테스트 수행
121+
- 단위테스트 작성
122+
- 통합테스트 실행
123+
- 안정적인 QA 배포 버전 제공
124+
- 명확한 릴리즈 노트 작성
125+
- 피드백 수용 자세
126+
- 오류 보고는 개선의 기회
127+
- 고객 발견 전 수정 기회로 인식
128+
- 건설적인 피드백 환영
129+
- 핵심 원칙
130+
- 품질은 전체 팀의 공동 책임
131+
- 상호 신뢰와 존중이 기본
132+
- 효과적인 커뮤니케이션 필수
133+
134+
`Topics`
135+
- 테스트코드 작성에 대한 자신의 노하우가 있을까요?
136+
137+
### 22장 프리징된 코드의 신기한 사례
138+
139+
`Summary`
140+
- 코드 프리징
141+
- 완료일과 출시일 사이 코드 수정을 제한하는 기간
142+
- RTM(Release to Manufacturing)은 최종 출시 버전
143+
- 프리징 단계
144+
- 기능 프리징: 버그 수정만 가능
145+
- 코드 프리징: 심각한 이슈만 수정
146+
- 완전 프리징: 모든 변경 금지
147+
- 출시 브랜치는 격리하여 관리
148+
- 프리징 기간 동안 기술 부채 점검
149+
150+
`Topics`
151+
- 코드프리징을 선택할 때 어느정도 확신을 가지고 하시나요?
152+
153+
### 23장 제발 저를 출시해주세요
154+
155+
`Summary`
156+
- 출시는 단순 빌드가 아닌 체계적인 프로세스
157+
- 효과적인 출시 요소
158+
- 규율과 계획
159+
- 단순하고 명확한 과정
160+
- 반복 가능한 자동화
161+
- 신뢰할 수 있는 검증
162+
- 자동화된 빌드/배포
163+
- CI/CD 파이프라인 활용
164+
- 자동화된 테스트
165+
- 체계적인 출시 브랜치 관리
166+
167+
168+
`Topics`
169+
- CI/CD 파이프라인 구축 및 자동화된 테스트 워크플로우 적용 경험과 그로 인한 이점/개선점은 무엇인가요?

0 commit comments

Comments
 (0)