본문 바로가기

분류 전체보기231

클린코드10 이번장은 오류코드에 관한 내용이었다. 저자는 깨끗한 코드와 오류처리는 연관있다고 한다. 오류처리는 코드에 있어서 중요하다. 하지만 오류처리로 프로그램의 논리를 이해하기 어려워지게 하면 안된다. 오류 코드보다는 예외를 사용하라고 하는데, 오류코드라는 것을 이해하지 못했다. 나는 바로 예외를 처리하는 것으로 배웠기때문이다. 아무튼 예외를 던져 사용하라고 한다. 내가 배운것처럼 try-catch-finally문을 먼저 작성하라고 한다. try-catch를 작성하면 TDD를 이용해 나머지 논리를 추가하라고 한다. 확인된 예외보단 미확인 예외를 사용하라고 한다. 확인된 예외가 뭔지 모르겠다. 그래서 일단은 넘어갔다. 다음으로 예외에 의미를 제공하라고 한다. 예외를 던질 땐 전후 상황을 충분히 붙히라고 한다. 그러.. 2023. 1. 26.
클린코드9 스프링 진도를 따라가느라 너무 급급해 블로깅도 하지 못했다. 내가 게으른거겠지? 하루에 적어도 10분씩은 클린코드를 읽으며 블로깅을 하기로했다. 어차피 아무도 안보겠지만 그래도 해보자. 자료 전달 객체의 전형적인 형태는 공개 변수만 있고 함수가 없는 클래스다. 이런 자료구조체를 때론 Data Transfer Object 줄여서 DTO라고 한다. DTO는 엄청 유용한 구조체고, DB와의 통신, 소켓에서 받은 메시지의 분석에 유용하다. 흔히 DTO는 DB에 저장된 가공되지 않은 정보를 애플리케이션 코드에서 사용할 객체로 변환하는 단계중 가장 처음사용하는 구조체다. 좀더 일반적인것은 Bean구조다. 빈은 private 변수를 조회함수로 조작한다. 활성 레코드는 DTO의 특수한 형태로, public변수가 있거나.. 2023. 1. 26.
클린코드8 저번에 이어 들여쓰기부터 시작한다. 코드에 들여쓰기로 계층을 표현할 수 있다, 클래스 내의 메서드, 또 그안의 메서드 코드, 등 코드들이 어디에 속하는지 들여쓰기로 쉽게 볼 수 있다. 또, 보통은 팀들과 함께 프로젝트를 진행하기 때문에 시작 전에 팀원들과 규칙을 정하고 그 규칙을 따라서 코드를 짜야 한다. 별별 스타일을 섞어서 코드를 필요 이상으로 복잡하게 만드는 실수는 하지 말라고 한다! 다음 챕터는 객체와 자료구조였다. 먼저, 자료를 세세히 공개하는 것 보단 추상적인 개념으로 표현하는 편이 좋다. 인터페이스나, 조회/설정 함수만으로 추상화가 이뤄지지 않는다. 객체가 포함하는 자료를 표현할 좋은 방법을 생각하라 한다. 객체지향 코드에서 어려운 변경은 절차적인 코드에서 쉽고, 절차적인 코드에서 어려운 변.. 2022. 12. 14.
12.6 Framework, SpringFramework, POJO ㅇ Framework란? Frame은 어떤 대상의 큰 틀이나 외형적인 구조를 의미하는데, 프로그래밍에서도 비슷하다. 애플리케이션을 건물이라 가정하면, Frame은 건물의 구조라고 이해하면된다. 결론적으로 framework는 프로그래밍을 하기 위한 어떤 틀이나 구조를 제공한다. 장점 - 기본구조가 있기때문에 효율적으로 코드 작성가능, 정해진 규약이 있어 효율적으로 관리 가능 단점 - Framework를 공부해야함, 규약이 있어서 자유도가 떨어진다. ㅇ Framework와 라이브러리의 차이 자동차를 예로 들면, Framework는 뼈대, 프레임을 의미하고, 라이브러리는 기능을 제공하는 ‘부품’을 의미한다. 한번 프레임이 만들어지면 프레임워크를 교체하는것은 어렵지만 라이브러리는 언제든지 교체하기 쉽다는것이다... 2022. 12. 10.