현실을 넘어
close
프로필 배경
프로필 로고

현실을 넘어

  • 분류 전체보기
    • 자바
      • 일반
      • 알고리즘
      • 객사오
      • 스프링입문객체지향
      • 리팩토링
      • 스프링부트3
      • JPA
      • QueryDsl
      • Spring Security
    • 코틀린
      • 코틀린인액션
      • 알고리즘
    • 일 관련 삽질
    • JIRA
    • 도메인주도개발
    • DB
      • Mysql
    • MQ
      • Apache Kafka
    • Docker-Kubernetes
    • GITHUB
    • REST API
    • 리눅스
  • 홈
  • 태그
  • 방명록

[5단원]5원칙 - SRP

단일 책임 원칙 (Single Responsibility Principle)1. 정의하나의 클래스는 하나의 책임만 가져야 한다는 것이 핵심2. 속성이 단일 책임 원칙을 지키지 못하는 경우: '사람' 클래스 예시public class Main{ public static void main(String[] args) { 사람 로미오 = new 사람(); 사람 줄리엣 = new 사람(); 로미오.군번 = "129301203012"; } public static class 사람 { String 군번; } }2.1 문제점사람 클래스에서는 군번이라는 속성이 모든 사람, 즉 남자와 여자 모두에게 적용됨하지만 이 경우 남자와 여자의 책임이 명확하게 구분되어 있지 않기 때문에 문제가 생깁니다.2.2 해결 방안남자와 여자 ..

  • format_list_bulleted 자바/스프링입문객체지향
  • · 2023. 9. 10.
  • textsms

[5단원]5원칙 - OCP

정의소프트웨어 엔티티는 확장에 열려있어야하고변경에 대해서는 닫혀 있어야 한다.새로운 기능을 추가하거나 코드를 수정하는 경우기존 코드에 최소한의 변경을 주는 것을 목표로 해야한다.예시마티즈, 쏘나타라는 두 종류의 자동차 존재마티즈수동 기어수동 창문쏘나타자동 기어자동 창문OOP 세계에서는 자동차 종류마다 기능을 변경하지 않고도 활용가능// 마티즈를 운전할 때 driver.operateGearManual(); driver.openWindowManual(); // 쏘나타를 운전할 때 driver.operateGearAuto(); driver.openWindowAuto();가 아니라// 어떤 차를 운전하든 간에 driver.operateGear(); driver.openWindow();가 되어야 확장에 유리함.원..

  • format_list_bulleted 자바/스프링입문객체지향
  • · 2023. 9. 10.
  • textsms

[리팩토링]Java 1.8 vs Java 17

현재 버전Java 1.8Spring Boot 2.4.5자바 1.8의 특징펼치기람다표현식의 등장자바 8 에서 등장한 기능입니다.개요이름이 없는 함수쓰레드 , 컬렉션을 다룰 때 매우 유용함문법기본 문법은 ( 매개변수 ) -> { 실행 코드 } 로 구성되어 있습니다.예를들어a + b 의 기능을 하는 함수의 경우(a, b) -> { return a + b; }람다 표현식 내부의 변수는 final 혹은 사실상의 final 이여야 합니다.함수형 인터페이스에서의 사용개요함수형 인터페이스단 하나의 추상 메서드를 가진 인터페이스를 의미합니다.@FunctionalInterface public interface MyFunctionalInterface { int add(int a, int b); }이러한 식으로 @Functi..

  • format_list_bulleted 자바/리팩토링
  • · 2023. 9. 10.
  • textsms

[4단원]this 키워드

정의this 는 자바와 같은 객체지향 프로그래밍 언어에서 사용되는 키워드임객체가 자기 자신을 참조하는 경우 사용일상생활에서 나 라고 말하는 것과 유사함.코드예제package This; class 펭귄 { int var = 10; void test() { int var = 20; System.out.println(var); System.out.println(this.var); } } public class Driver { public static void main(String[] args) { 펭귄 뽀로로 = new 펭귄(); 뽀로로.test(); } }System.out.println(var); 의 경우 var는 지역변수 var 의 값이 출력됨System.out.println(this.var);의 경우 ..

  • format_list_bulleted 자바/스프링입문객체지향
  • · 2023. 9. 4.
  • textsms

[4단원]super 키워드

정의super 는 자바 같은 단일 상속을 지원하는 객체지향 언어에서 사용되는 키워드임.해당 키워드는 바로 상위 클래스의 인스턴스를 지칭함.this 가 객체 자신을 지칭한다면, super 는 부모 클래스 를 지칭한다.코드 예제package Super; class 동물 { void method() { System.out.println("동물"); } } class 조류 extends 동물 { void method() { super.method(); System.out.println("조류"); } } class 펭귄 extends 조류 { void method() { super.method(); System.out.println("펭귄"); // Syntax error on token "super", Ide..

  • format_list_bulleted 자바/스프링입문객체지향
  • · 2023. 9. 4.
  • textsms

[알고리즘]병사 배치하기

import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.ArrayList; import java.util.Arrays; import java.util.List; import java.util.Objects; /** * packageName : org.example.병사배치하기 * fileName : Main * author : ipeac * date : 2023-08-31 * description : * =========================================================== * DATE AUTHOR NOTE * ----------..

  • format_list_bulleted 자바/알고리즘
  • · 2023. 9. 1.
  • textsms
  • navigate_before
  • 1
  • ···
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • ···
  • 49
  • navigate_next
공지사항
  • ㅇ
전체 카테고리
  • 분류 전체보기
    • 자바
      • 일반
      • 알고리즘
      • 객사오
      • 스프링입문객체지향
      • 리팩토링
      • 스프링부트3
      • JPA
      • QueryDsl
      • Spring Security
    • 코틀린
      • 코틀린인액션
      • 알고리즘
    • 일 관련 삽질
    • JIRA
    • 도메인주도개발
    • DB
      • Mysql
    • MQ
      • Apache Kafka
    • Docker-Kubernetes
    • GITHUB
    • REST API
    • 리눅스
최근 글
인기 글
최근 댓글
태그
  • #Kotlin
  • #도메인주도개발
  • #객사오
  • #ddd
  • #알고리즘
  • #리팩토링
  • #자바
  • #JPA
  • #객체지향
  • #QueryDSL
전체 방문자
오늘
어제
전체
Copyright © 쭈미로운 생활 All rights reserved.
Designed by JJuum

티스토리툴바