본문 바로가기

전체 글232

클린코드 12 이번챕터는 경계다. 경계라했을때 뭔소리지 했다. 소프트웨어 개발시 하나부터 열까지 모두 만들지 않는다. 패키지를 사거나, 오픈소스를 이용하는데 이런 외부 코드를 우리의 코드와 깔끔히 통합해야 한다. 이 경계를 깔금히 한다는 것이었다. 인터페이스 제공자는 적용성을 넓히는데 애쓰고, 인터페이스 사용자는 자신의 요구에 맞는 인터페이스를 바란다. 이 둘 사이의 긴장으로 시스템 경계에서 문제의 소지가 많다고 한다. 우리는 외부코드를 사용하면 시간을 효율적으로 사용해 많은 기능을 만들기 쉽다. 외부 패키지 테스트는 우리의 책임이 아니다. 그렇지만 우리가 사용할 코드를 테스트하는 편이 바람직하다. 외부 코드는 익히기 어렵다. 외부코드를 통합하기도 힘들다. 그래서 우린 외부코드 호출하는대신 간단한 테스트 케이스를 작성.. 2023. 2. 1.
Section3-1 섹션3는 Spring MVC에 관한 내용이다. 첨엔 정말 어려웠다.(하지만 지금도..) 그치만 이걸로 밥벌어먹고 살려면 알아야한다. 그리고 잘해야한다. 시작해보자! ㅇ Spring MVC란? Spring 의 모듈중에서 서블릿API를 기반으로 클라이언트의 요청을 처리하는 모듈이다. --- 사실 이걸보고 뭔소리지? 했다. Spring Web MVC 지만 줄여서 Spring MVC라고 한다. 그리고 웹 프레임워크의 종류이기 때문에 Spring MVC Framework라고도 한다. 근데 첫문장의 서블릿은 뭘까? -- 바로 밑에서 설명함^^ ㅇ 서블릿(Servlet) Iran? 지식이 얕아서 한줄로 설명하자면 클라이언트의 요청을 처리하도록 특정 규약에 맞춰 Java 코드로 작성하는 클래스 파일이라고 한다. ㅇ M.. 2023. 1. 29.
나의 잃어버린 Section3... Section3 - Spring MVC에 들어가면서부터 의욕을 잃었다. 초반엔 열심히 해보자! 으쌰으쌰 했지만 Section3가 시작하고 끝날때까지 머리속에 남은거 하나 없이 지나왔다. 애초에 이해하기 힘든것도 있고 나에게 너무 빨랐다.(복습을 안했다.) 고로 이제 프로젝트가 2주정도 남은 이 시점부터라도 어떻게든 머리속에 우겨넣기 위해 공부하고 블로깅을 하려고한다. 다시 으쌰으쌰 해보겠다. 누가 이 글을 볼까? 본다면 응원해줬으면 좋겠다. 화이팅~ 2023. 1. 29.
클린코드11 오류를 유발하는 행위도 언급했다. 그중 첫째가 null을 반환하는 습관이라고 한다. null을 반환하는 코드는 일거리를 늘릴뿐 아니라 호출자에게 문제를 떠넘긴다고 한다. 실제로 null 확인이 너무 많아서 문제가 생긴다고 한다. 메서드에서 null을 반환하고싶으면, 예외를 던지거나 특수사례 객체를 반환해야한다. null 반환뿐 아니라 null을 전달하지 말라고 한다. 인수로 null을 전달하는 코드를 피하라고 한다. 그러면 당연히 NullPointerException이 발생하고 새로운 예외 유형을 만들어 던지라고 한다. 하지만 이것도 좋은 대안은 아니다. assert문을 사용하는 방법도 있다고 한다. public double project(Point p1, Point p2){ assert p1 != nu.. 2023. 1. 29.