목록2025/04/02 (5)
LUMI_dev

Google Java Style 1. 아래 깃허브 파일에서 intellij-java-google-style.xml 파일 다운로드https://github.com/google/styleguide GitHub - google/styleguide: Style guides for Google-originated open-source projectsStyle guides for Google-originated open-source projects - google/styleguidegithub.com 2.File > Settings > Editor > Code Style > Java (Window) Intellij > Settings > Editor > Code Style > Java (Mac)… 를 눌러서 i..
아래 참조 블로그에서 공부하기 위해서 정리한 내용입니다.(https://jamie95.tistory.com/99) 1. 한 메서드에 오직 한 단계의 들여쓰기만 메서드는 맡은 일이 적을수록(잘게 쪼갤수록), 재사용성이 높고 디버깅도 용이 2. else 키워드를 쓰지 않는다.조건문은 복제의 원인이 되기도 함 / 가독성도 좋지 않음 디자인 패턴의 Strategy 패턴 - 상태에 대한 분기가 몇 군데 걸쳐 중복돼 있을 때 Strategy 패턴 유용 - 간단한 경우엔 guard clause(보호 구문) 사용: if에 return을 쓸 것(다만, 많이 쓰면 간결함 해침) 수정 전public class JamieObject { String JamieStatus(int hour, boolean isSt..
VO: 도메인에서 한 개 또는 그 이상의 속성들을 묶어서 특정 값을 나타내는 객체 : 도메인 객체의 일종: 보통 기본 키로 식별값을 갖는 Entity와 구별해서 사용 VO는 어떤 조건들에 의해 엔티티와 구별될까?1. equals & hash code 메서드를 재정의해야 한다 타입도 같고, 내부의 속성값도 같은 두 객체가 있으면 당연히 같은 객체로 취급하고 싶을 것임 근데 실제로 값이 같은 두 객체를 생성하고 동일성 비교를 해보면 둘은 서로 다른 객체로 구별됨 public class Point { private int x; private int y; public Point(int x, int y) { this.x = x; this.y = y; }}@Testvoid equals(..

유즈케이스객체지향 프로그래밍을 하기 위한 수행 목표를 작성해놓은 요구사항 말로 사용자의 목표를 달성하기 위해 사용자와 시스템 간에 이루어지는 상호작용의 흐름을 보여주는 것 객체 지향의 사실과 오해 (조영호 저자) 1) 객체는 현실을 그대로 반영한다? (x) 2) 객체 = 클래스? / 중요한 건 상속? (x)자바스크립트도 클래스, 상속 없이도 객체 지향적인 코드 짜기가 가능했다. 3) 데이터베이스 테이블 형태로 그대로 생성? 안됨 -> 메소드 하나, 클래스 하나가 커져버려서 변경에 유연하지 않음 예) 데이터베이스 변경이 있을 때 모든 도메인의 비즈니스 로직에 수정이 있던 상황 있을 것임1. 객체지향의 사실과 오해 객체지향 프로그래밍을 하는 이유?구조적 설계로 역할과 책임을 기반으로 안정적인 구조를..

객체의 참조와 테이블의 외래키 매핑연관관계의 주인 - C언어의 포인터 같음 1. 단방향 연관 관계 Member.java@Entity public class Member { @Id @GeneratedValue // (@GeneratedValue는 auto 모드) @Column(name = "MEMBER_ID") private Long id; @Column(name = "USERNAME") private String name; @Column(name = "TEAM_ID") private Long teamId; … } @Entity public class Team { @Id @GeneratedValue ..