본문 바로가기

Programming/Java, Spring98

else 예약어를 쓰지 않았는가? - 우아한테크코스 우테코 클린코드 #3 else 예약어를 쓰지 않기 - 우아한테크코스 우테코 클린코드 #3 이전글에 이어 우아한테크코스에서 요구하는 클린코드 원칙들을 살펴본다. else 예약어를 쓰지 않기 if/case 구문은 인간의 언어 구조를 그대로 모사하고 있어 직관적으로 이해하기 쉽다. ~ 하면 ~ 이고, 아니면 ~이다 와 같은 문법이다. 하지만 에서는 객체지향의 생활 체조 2단계 규칙으로서 else 예약어를 금지하는 것을 제안한다. 아래와 같은 코드가 일반적인 형태의 if/else 구문이다. public static void endMe() { if (status == DONE) { doSomething(); } else { doAnother(); } } 위와 같은 코드에서 else를 제거하는 방법은 무엇이 있을까? erarly ret.. 2022. 10. 30.
한 메서드에 오직 한 단계의 들여쓰기만 - 우아한테크코스 우테코 클린코드 #2 이전글에 이어 우아한테크코스에서 요구하는 클린코드 원칙들을 살펴본다. 검색을 하면서 이 규칙들이 의 책에서 주장된 내용이라는 것을 확인했다. 2009년에 나온 책으로 아쉽게도 동네 도서관들에서는 발견할 수가 없었다. 소트웍스 앤솔러지(위키북스 IT LEADERS 7) 내일을 준비하는 IT 리더들을 위한 'IT LEADERS' 시리즈, 제7권 『소트웍스 앤솔러지』. 미국에서 가장 주목받고 있는 시스템 통합ㆍ컨설팅 회사인 소트웍스의 최고 책임 과학자 마틴 파울러 등이 함께 모여 저술한 것이다. 이 책은 애자일 분야의 최고수로 가득한 소트웍스가 가진 탁월한 문화를 에세이 형식으로 기술한다. 소트웍스 사람들이 경험하고 적용하여 얻은 지혜와 통찰력을 바탕으로 소프트웨어 기술과 혁신에 대해 이야기하고 있다. 소프트.. 2022. 10. 30.
자바 코딩 컨벤션 - 우아한테크코스 우테코 클린코드 #1 우아한테크코스에서 클린코드로 요구되는 사항들을 살펴본다. 본 포스팅은 네이버 캠퍼스 핵데이에서 제공하는 코딩 컨벤션 문서의 내용과 그에 대한 코멘트를 적어본다. https://naver.github.io/hackday-conventions-java/ 캠퍼스 핵데이 Java 코딩 컨벤션 중괄호({,}) 는 클래스, 메서드, 제어문의 블럭을 구분한다. 5.1. K&R 스타일로 중괄호 선언 클래스 선언, 메서드 선언, 조건/반복문 등의 코드 블럭을 감싸는 중괄호에 적용되는 규칙이다. 중괄호 naver.github.io 1. 파일 공통 요건 1.1 파일 인코딩은 UTF-8 1.2 새줄 문자는 LF Unix 형식의 새줄 문자인 LF를 사용한다. Windows 형식인 CRLF가 섞이지 않도록 편집기와 GIT 설정 .. 2022. 10. 30.
[Java/Spring] 스프링 DB 매니지먼트 변천사 / JDBC, JPA, 스프링 데이터 JPA [Java/Spring] by 김영한님 @Inflearn 스프링 입문 JDBC => JdbcTemplate => myBatis / JPA JPA = Java Persistance Api로 2015년 이후 사용이 크게 늘어나고 있다. Jdbc Template 라이브러리를 사용함으로써 기존의 jdbc로 코딩을 해서 가져오는 부분을 간략화할 수 있다. 예컨대 save 메소드에서 jdbc로 구현하고자 한다면 다음과 같은 코드가 필요하다. @Override public Member save(Member member) { String sql = "insert into member(name) values(?)"; Connection conn = null; PreparedStatement pstmt = null; Re.. 2022. 10. 25.
[Java/Spring] 스프링 빈과 의존관계 설정 [Java/Spring] by 김영한님 @Inflearn 스프링 입문 컴포넌트 스캔과 자동 의존관계 설정 에노테이션으로 Controller - Service - Repository를 연결한다. @Component로 스프링 빈으로 자동 등록 이를 포함하는 다음 애노테이션도 자동 스프링 빈으로 등록된다. @Controller @Service @Repository => 정형화된 패턴 Autowired 애노테이션은 컨테이너 안에 객체화된 객체들끼리 연관관계를 형성 = 연결해준다 스프링이 component를 스캔하는 방식은 실행파일에서부터 시작 => 하위로 스캔 이 애노테이션을 타고 들어가보면 ComponentScan이라는 또다른 애노테이션이 붙어있는 것을 볼 수 있다. 자바 코드로 직접 스프링 빈 등록하기 직접.. 2022. 10. 24.