# CLEAN CODE

485개의 포스트

6장 객체와 자료구조

객체와 자료구조 남들이 변수에 의존하지 않도록 변수는 비공개(private)로 정의한다. 그렇다면 어째서 조회(get)함수와 설정(set)함수를 당연하게 공개(public)해 변수를 외부에 노출할까? 객체는 동작을 공개하고 자료를 숨긴다. 그래서 기존 동작을 변경하

약 4시간 전
·
0개의 댓글
·

clean code 3강

위 코드는 emp를 분기처리하는 간단한 로직입니다. 하지만 옳지 않습니다.if문/else문/while문 등에 들어가는 내용은 한 줄로 줄여서 함수를 읽고 이해하기가 쉬워집니다."함수는 한 가지를 해야 한다. 그 한 가지를 잘 해야 한다. 그 한 가지만을 해야 한다."위

2023년 1월 31일
·
0개의 댓글
·

git branch protection rule

이 옵션을 선택하면, 모든 커밋을 보호되지 않는 branch로 만들고 꺼내기 요청을 통해 제출해야 이 규칙과 일치하는 branch로 병합할 수 있습니다.branch를 이 규칙과 일치하는 branch로 병합하기 전에 통과해야 하는 상태 검사를 선택하십시오.이 옵션을 선택

2023년 1월 31일
·
0개의 댓글
·
post-thumbnail

[Clean Code] 5장 형식 맞추기

우리가 어떤 글을 볼 때, 가독성이 좋다고 느끼는 경우가 있다. 그런 경우 대부분 글의 형식이 잘 갖춰져 있다는 전제가 성립된 채로 글이 작성되었기 때문이다.소스 코드도 마찬가지로 일종의 글이기 때문에 형식을 잘 갖춰서 작성한다면 깨끗한 코드를 작성하는데 탄탄한 기반이

2023년 1월 30일
·
0개의 댓글
·
post-thumbnail

[Clean Code] 4장 주석

주석(comment)의 중요성은 수도 없이 들어왔었다. 주석의 남발을 조심해라, 남들이 볼 때 무슨 일들을 하는지 알 수 있는 주석을 달아라 등 수 많은 주석과 관련된 조언들이 인터넷과 현실에서 돌아다니고 있다. 그만큼 명확하고 좋은 주석이 얼마나 코드 해석에 도움이

2023년 1월 26일
·
0개의 댓글
·

11. 동시성

동시성은 결합(coupling)을 없애는 전략이다. 즉, 무엇(what)과 언제(when)를 분리하는 전략이다. 스레드가 하나인 프로그램은 무엇과 언제가 서로 밀접하다. 흔히 단일 스레드 프로그램을 디버깅 하는 프로그래머는 정지점(breakpoint)를 정한 후 어느

2023년 1월 25일
·
0개의 댓글
·
post-thumbnail

[Clean Code] 3장 함수

프로그래밍에서 가장 작은 단위로 함수가 있다. 함수를 기반으로 어떤 것이 작동을 하고, 이 함수들이 모여서 하나의 프로그램을 만들게 된다. 함수형 프로그래밍이 대세를 이루듯이 점점 함수를 잘 작성하는 것이 중요한 점으로 꼽히고있는데, 이번 장에서는 어떻게 하면 함수를

2023년 1월 25일
·
0개의 댓글
·

google code review(2) - 구체적 방식

CL 에 대한 설명이 잘 되어있는지 가장 먼저 확인하자.step 1: 변화의 broad view를 보자.애초에 이러한 변경이 발생하지 말았어야 하는 경우에는, 변경이 발생하지 않아야 하는 이유를 즉시 설명하여 author 에게 전덜하라.이와 같은 변경을 거부할 때 개발

2023년 1월 25일
·
0개의 댓글
·

google code review(1) - overview

코드 리뷰 프로세스 기초작성자던 reviewer이던, 조금 막히면 직접 찾아가서 이야기하자. 그게 훨씬 효율적이렇게 합의를 봤고, 결론에 도달한 이유를 반드시 적어놓아야 한다.코드 리뷰는 어느 정도까지?케이스 1: 대규모 서비스 or 서비스 준비 중 or 큰 과제 or

2023년 1월 25일
·
0개의 댓글
·

CL 과 gerrit 이란?

버전 제어에 제출되었거나 코드 검토 중인 하나의 자체 포함된 변경사항을 의미합니다.다른 조직에서는 이를 종종 "pull-request"이라고 부릅니다.코드 리뷰 + git 저장소 시스템특징리뷰 통과 조건 설정IDE 도구와 연동jenkins와 같은 CI(Continuou

2023년 1월 25일
·
0개의 댓글
·

google author guide - to getting through code review

CL (ChangeList)버전 제어에 제출되었거나 코드 검토 중인 하나의 자체 포함된 변경사항을 의미합니다.다른 조직에서는 이를 종종 "pull-request"이라고 부릅니다.gerrit코드 리뷰 + git 저장소 시스템특징리뷰 통과 조건 설정IDE 도구와 연동jen

2023년 1월 25일
·
0개의 댓글
·

클린 코드(Clean Code) - 14장 점진적인 개선

깔끔한 작품을 내놓으려면 단계적으로 개선해야 한다.깨끗하고 우아한 프로그램을 한 방에 뚝딱 내놓을 수 없다. 프로그래밍은 과학보다 공예에 가깝다. 깨끗한 코드를 짜려면 먼저 지저분한 코드를 짠 뒤에 정리해야 한다.처음부터 지저분한 코드는 아니었고 제한적으로 기능을 지원

2023년 1월 24일
·
0개의 댓글
·

클린 코드(Clean Code) - 13장 동시성

객체는 처리의 추상화다. 스레드는 일정의 추상화다.동시성과 깔끔한 코드는 양립하기 어렵다여러 스레드를 동시에 돌리는 이유, 어려움, 어려움에 대처하고 클린 코드를 작성하는 법들, 동시성을 테스트하는 방법과 문제를 알아본다.무엇과 언제를 분리하면 어플리케이션 구조와 효율

2023년 1월 24일
·
0개의 댓글
·

clean code study 1~3 장

회사 팀원끼리 스터디를 시작했습니다. 일정 주제까지 읽고 5 ~ 10 문제 정도의 내용을 만들어 공유하고는 것입니다. 제가 1~3 장까지 읽고 중요하다고 생각되는 부분을 문제로 만들어봤습니다. 아래와 같이 MAX_SUM_NUMBER 변수를 추가해준다.

2023년 1월 24일
·
0개의 댓글
·

2022년 정리10

우테코 origin 저장소 → 개인 깃헙 origin 저장소 → 개인 로컬 저장소개인 로컬 저장소에서 commit을 하며 과제 해결개인 로컬 저장소 → 개인 깃헙 origin 저장소로 push → 우테코 origin 저장소로 PR 보내기.원래는 PR 후 merge를 하

2023년 1월 22일
·
0개의 댓글
·

9. 시스템

여러분이 도시를 세운다면 온갖 세세한 사항을 혼자서 직접 관리할 수 있을까?아마도 불가능 하리라도시가 돌아가는 이유는 적절한 추상화와 모듈화 때문이다.그래서 큰그림을 이해하지 못할지라도 개인과 개인이 관리하는 '구성요소'는 효율적으로 돌아간다.흔히 소프트웨어 팀도 도시

2023년 1월 18일
·
0개의 댓글
·

10. 창발성

켄트 벡은 다음 규칙을 따르면 설계는 단순하다고 말한다.모든 테스트를 실행한다.중복을 없앤다.프로그래머 의도를 표현한다.클래스와 메서드 수를 최소로 줄인다.시스템이 의도 대로 돌아가는지 확인할려면 검증이 필요하다. 검증이 불가능한 시스템은 출시하면 안된다.SRP를 준수

2023년 1월 18일
·
0개의 댓글
·

클린 코드(Clean Code) - 12장 창발성

단순하지만 중요한 네 가지 규칙을 따라 설계를 하면, 창발성이 촉진되어 우수한 설계를 완성할 수 있게 된다. 테스트를 철저히 거쳐 모든 테스트 케이스를 항상 통과하는 시스템은 '테스트가 가능한 시스템' 이다.테스트가 가능한 시스템을 만들려고 애쓰면 설계 품질이 더불어

2023년 1월 18일
·
0개의 댓글
·
post-thumbnail

클린 코드(Clean Code) - 11장 시스템

도시를 건설하고 관리하는 데에는 한 사람 만으로는 충분하지 않다. 그래도 도시는 돌아간다. 그것은 도시라는 거대한 덩어리를 수도, 전원, 교통 등의 모듈로 모듈화하고 관리되기 때문이다.소프트웨어 또한 비슷한 방식으로 구성되기는 하나 도시의 모듈화 만큼의 추상화를 이루지

2023년 1월 18일
·
0개의 댓글
·

클린 코드(Clean Code) - 10장 클래스

Intro 표준 자바 관례에 따르면, 클래스 안에서의 순서는 아래와 같다 static public 상수 static private 변수 private instance 변수(public 변수가 필요한 경우는 거의 없음) public method private meth

2023년 1월 18일
·
0개의 댓글
·