Community

개발자 99% 커뮤니티에서 수다 떨어요!

← Go back
TIL
#clean_code
2년 전
2,161
1


TIL (Today I Learned)

2022.02.17

오늘 읽은 범위

차례, 0장, 1장. 깨끗한 코드

책에서 기억하고 싶은 내용을 써보세요.

  • 소프트웨어는 80% 이상이 소위 “유지보수”다. (xxiii)

  • 5S: 정렬, 체계화, 다듬기(polishing), 표준화, 규율 (xxiv)

  • TPM: Total Productive Management

  • 품질은 하늘에서 뚝 떨어진 위 대한 방법론이 아니라 사심 없이 기울이는 무수한 관심에서 얻어진다. (xxvii)

  • 중복을 피하라. 한 기능만 수행하라. 제대로 표현하라. 작게 추상화하라. (p.14)

  • 보이스카우트 규칙: 캠프장은 처음 왔을 때보다 더 깨끗하게 해놓고 떠나라. (p.19)

    큰 것이 아니더라도 변수 이름 바꾸기나 긴 함수 분할, 약간의 중복 제거 정도도 충분하다.

오늘 읽은 소감은? 떠오르는 생각을 가볍게 적어보세요

  • 어떤 책이든지 차례를 먼저 읽어보면 작가의 의도와 생각에 더 가깝게 접근할 수 있다고 생각한다.

  • 차례를 보면 1장은 깨끗한 코드(Clean Code)의 소개, 그것을 써야하는 이유, 그렇지 않는 코드를 나쁜 코드라고 한다면 나쁜 코드에서 발생하는 손실을 얘기하는 것같다. 그 이후에는 몇가지 클린코드를 위한 규칙 같다.

  • 이 책에서 기차 충돌 형태의 코드는 요즘 트렌드와 달라 참고만 하자. (요즘은 읽기 쉬운 코드 fluent interface가 대세인듯)

  • 이 책에서 유독 보이스카우트 규칙을 강조하는데 등장하면 유심히 봐야겠다.

  • 정렬, 체계화, 다듬기(polishing), 표준화, 규율 ::: 이 다섯 가지 개념이 나오는 부분을 잘 읽어보자.

  • 1980년대에 감당이 안되는 나쁜 코드로 회사가 망했다는게 정말 신기하다. 실제로 가능할 것같으면서 그 상황을 상상하게 한다.

  • 1장의 마지막에서 “연습해, 연습!” 이 여운을 남긴다. Clean Code를 실천하기 위해서는 이 책에서 이야기하는 방법과 추구하는 방향을 생각하면서 코딩을 할때 실제로 적용해보려고 시도해야한다.이는 수많은 연습이 필요할것이다.

궁금한 내용이 있거나, 잘 이해되지 않는 내용이 있다면 적어보세요.

  • // 르블랑의 법칙? (LeBlanc's Law states) - "Later equals never" is used in the context of software development, but may be applied more broadly to other areas. The law is attributed to Dave LeBlanc.

  • 휴리스틱 - 정확한 해결 법을 찾기 보다 간단한 해결법으로 풀고자하는 것?

  • Agile Software Development: Principles, Patterns, and Practices 책(PPP책)

  • 린(Lean)

    • 낭비에 포커스를 두어 프로그램을 개발하는데 발생할 수 있는 모든 낭비를 최소화하고 결과를 측정, 성과를 분석하여 소프트웨어 가치를 최대화하고자 하는 것을 목표로 둔다.

    • 린 개발 방법론 : 고객 관점에서 전체 프로세스상에서 낭비를 제거하여 고객 가치를 높이는 것에 우선순위(전적으로 고객 관점)

  • 애자일

    • 애자일 방법론 : 개인별 또는 팀 간에 고객과 협업하고 빠른 개발을 수행(고객과 협업)

    • 스크럼(Scrum)

      • 애자일 방법론에는 스크럼, 칸반, XP 등 여러 방식이 존재하며 각자 다른 목적에 특화되어 있다.

      • 그 중 스크럼은 유지보수 보다는 개발에 초점이 맞추어진 애자일 방법론이다.

    • 백로그(Backlog)

      • 사용자를 조사하여 구현해야 할 사항을 정의한 문서: 제품 백로그 -> 스프린트 백로그

1 comment