# cleancode
Repository와 Service의 역할 차이
개발을 하다가 Repository와 Service의 차이점에 대해서 궁금점이 생겨서 알아보게 되었다. 기존에 내가 알기로는 Repository는 DB와 직접적으로 작업되는 로직이고 Service는 Business Logic이라는데,, 코드리뷰를 받아보니 너무 이렇게 하
Clean Code - 5장 - 형식 맞추기
프로그래머라면 형식을 깔끔하게 맞춰 코드를 짜야한다. 규칙을 정하고 착실히 따라야 한다. 필요하다면 규칙을 자동으로 적용하는 도구를 활용한다.코드의 형식은 의사소통의 일환이다. 너무나도 중요함으로 융통성 없이 맹목적으로 따르기만 해도 안된다. 오랜 시간이 지나서 원래
Clean Code - 4장 - 주석
나쁜 코드에 주석을 달지 마라. 새로짜라. > 브라이언 W. 커니핸.P.J.플라우거 주석은 유용하지만 경솔하고, 근거없는 주석은 코드를 이해하기 어렵게 만든다. 주석은 대부분 필요 없다. 프로그래밍 언어를 치밀하게 사용해 의도를 표현할 능력이 있다면, 주석은 거의 필
Clean Code - 3장 - 함수
어떤 프로그램이든 가장 기본적인 단위는 함수. 의도를 분명히 표현하는 함수를 구하기위한 가이드.함수를 만드는 첫째 규칙은 작게. 두번째 규칙은 더 작게! 그렇다면 얼마나 짧아야 좋을까? 저자는 최대한 짧게. 각 함수가 이야기 하나를 표현해야한다고 말한다.중첩구조가 생길
싱글톤 패턴(Singleton pattern)
싱글톤 패턴은 객체를 딱 한 번만 생성하도록 보장하는 디자인 패턴입니다. 이 패턴은 전역 변수를 사용하여 객체를 저장하고 다른 객체들이 그 객체를 공유하게 됩니다.싱글톤 패턴은 주로 다음과 같은 경우에 사용됩니다.자원을 공유해야 하는 경우고비용 객체의 생성을 최소화해야

이벤트 핸들러 네이밍 with React
개발을 하다보면 내가 생각하기에 보기 좋은 함수 이름을 정하게 되는 경우가 많다. "handler나 event 이름은 이렇게 지어야해!" 라는 무조건적인 규칙이 없기도 하고, 팀 내에서 팀원들끼리 이렇게 하자고 정한다 해도 앞부분만 규칙을 따라가고 뒷부분은 각자 쓰고싶

[Clean Code] 00. Clean Code 정독하기
내 인생에서 코드는 ,, 항상 와다다다다 짜고 아니 이게 돼? 아니 이게 안돼? 하는 비둘기 만들기 교실이었다.근데 이것 저것 코드로 만드는 일을 하다보니까 진짜 이게 처음부터 시간에 쫓겨서 꼬이다보면 정말 답이 없구나 싶었다.그래서 이때까지 있던 나의 모든 모습은 버
매직 넘버(Magic number)
매직 넘버(Magic number)는 코드에서 하드 코딩된(literal value) 일정한 값을 의미하는 숫자나 문자열 등을 의미합니다. 매직넘버는 코드 내에서 여러 곳에서 사용되지만 이 값의 의미나 목적은 코드에서 명확하게 알려지지 않습니다. 매직 넘버는 가독성이
디자인 패턴
가장 필수적인 코딩 패턴으로 "Don't Repeat Yourself" 원리입니다. DRY 원리는 코드가 중복되지 않도록 코드를 작성해야 한다는 코딩 철학입니다. 이 개념은 어떤 지식이든 시스템 내에서 하나의 명확하고 권위 있는 표현을 가져야 한다는 것입니다.중복을 방

가독성 좋은 코드를 위한 고민
이 글은 kakaoTech의 '섬세한 ISFP의 코드 가독성 개선 경험' 영상을 보고 작성되었습니다. load는 가져와서 싣다fetch는 가져오다즉, loadData는 가져와서 싣는 것까지 완결된 상태이다.이를 다시 data 변수에 할당하면 가져온다는 뜻이 중복된다.좋
[S1U5] JavaScript 기초 - 변수와 자료형
02. 20. MON > 🔥 학습목표 JavaScript의 정의, 실행환경에 대해 설명할 수 있다. 변수와 자료형에 대해 설명할 수 있다. 변수 keyword 종류와 그에 따른 스코프 차이를 설명할 수 있다. JavaSCript Deep Dive 01~07장, 09
Clean Code - 2장 - 의미 있는 이름
좋은 이름을 지으려면 시간이 걸리지만, 좋은 이름으로 절약하는 시간은 훨씬 더 많다.변수(혹은 함수나 클래스)의 존재 이유는? 수행기능은? 사용방법은? 따로 주석이 필요하다면 의도를 분명히 드러내지 못했기 때문이다.ex>코드는 단순하지만, 어떤 의미가 있는지 알기 어렵
Clean Code - 1장 - 깨끗한 코드
저자는 언젠가 코드를 자동으로 완성히는 시대가 다가오고 그때가 되면 코드는 사라질까? 라는 의문을 말한다. 그러나 저자가 말하는 코드란, 요구사항을 상세하게 표현하는 수단이며, 어느 수준 이상의 요구사항은 코드의 도움없이 표현하기 불가능하다고 서술한다.불가능하다는 근거

[클린코드] 1장. 깨끗한 코드
프로그램 작성 요령을 설명하는 책이고 온통 코드들인 책이다. 코드에 대한 많은 사실을 배워보라궁극적으로 코드는 요구사항을 표현하는 언어이다.
Python 네이밍 컨밴션과 변수 이름 잘 짓는 TIP
PEP8이란 python enhance proposal로 python을 개선하는 제안서 중에서 코딩 규칙에 대한 제안서라는 뜻이다. 한마디로 파이썬 코딩 스타일 가이드이다. 다음은 내가 주목해야할 가이드 몇가지를 적어보았다.함수, 변수, attribute : 소문자로
클린코드를 작성하는 Tips
클린코드를 작성하면 가독성, 유지보수, 확장성이 좋아집니다.클린코드를 작성하기 위한 원리는 무엇이고 가장 좋은 방법은 무엇일까요? 클린코드를 작성하기 위해 도움이 될만한 팁들을 모아봤습니다.의미가 있고 기능을 설명할 수 있는 변수, 함수 및 클래스 이름을 사용합니다.함
[클린코드] 함수
if/else문 while 문 등에 들어가는 블록은 한 줄이면 충분하다. 대게 이 블록 내에서 함수를 호출하므로 적절한 이름을 가진 함수를 사용한다면 코드를 이해하기도 더 쉬워지고 해당 블록을 감싸는 함수(enclosing function)의 크기도 작아진다. 함수는
리팩터링: 함수 추출하기 및 인라인하기
반대: 함수 인라인 하기(Inline Function)재사용성 기준으로 두 번 이상 사용될 코드는 함수로목적과 구현을 분리하는 경우. 함수의 역할을 쉽게 알아볼 수 있어야 한다.함수를 새로 만들고 무슨 목적인지 드러내는 이름을 붙인다.추출할 코드를 원본함수에서 복사해서