흥많은 개발 이야기

고정 헤더 영역

글 제목

메뉴 레이어

흥많은 개발 이야기

메뉴 리스트

  • 홈
  • 태그
  • 방명록
  • 분류 전체보기 (6)
    • Java (3)
    • Spring (3)

검색 레이어

흥많은 개발 이야기

검색 영역

컨텐츠 검색

전체 글

  • Spring Triangle - AOP 개요

    2023.12.13 by 흥많은 개발자

  • Java Generic - 활용

    2023.11.30 by 흥많은 개발자

  • Java Generic - 심화

    2023.11.24 by 흥많은 개발자

  • Java Generic - 개념

    2023.11.07 by 흥많은 개발자

  • Spring Triangle - IOC, DI

    2023.11.03 by 흥많은 개발자

  • Spring Triangle - PSA

    2023.10.24 by 흥많은 개발자

Spring Triangle - AOP 개요

AOP 는 Spring Triangle 의 한 축을 담당하는 개념일 뿐만 아니라, 소프트웨어 공학에서 굉장히 중요한 요소입니다. 이번 글에서는 AOP 자체에 대해 개괄적으로 다루어 보도록 하겠습니다. AOP AOP 는 Aspect Oriented Programming 의 약자로 '관점 지향 프로그래밍' 으로 해석합니다. 조금 더 풀어 해석하면 '관점을 중심으로 소프트웨어을 바라보는 개발 패러다임' 정도가 되겠습니다. 풀어 해석해도 먼가 애매모호한 것 같습니다. AOP 의 개념을 정확히 이해하려면 Aspect(관점) 에 대한 이해에서 출발해야 합니다. 핵심기능과 부가기능 그 전에 먼저 핵심기능과 부가기능이라는 개념을 짚어 보겠습니다. 핵심기능은 OOP 에서 각각의 객체들의 고유..

Spring 2023. 12. 13. 13:41

Java Generic - 활용

Java Generic 시리즈 마지막 포스팅입니다. 이번에는 Java Generic 을 활용하는 여러 가지 상황들에 대해 살펴보겠습니다. 이번 포스팅에서도 개념편, 심화편 에서 사용했던 예제를 활용해보겠습니다. public class Electronics { private String manufacturer; public Electronics(String manufacturer) { this.manufacturer = manufacturer; } public String getManufacturer() { return manufacturer; } } public class Tv extends Electronics { private String title; public Tv(String manufactur..

Java 2023. 11. 30. 08:31

Java Generic - 심화

이번에는 Java Generic 에서 주의해야 하는 심화 개념들을 몇가지 다뤄보겠습니다. 1. Type Erasure Java Generic 을 관통하는 주요 개념 중에 Type Erasure 라는 개념이 있습니다. 이론적으로는 Generic 을 운영하기 위해 부가적으로 들어간 소스코드들이 바이트코드 레벨에서는 모두 제거되는 것을 의미하는데요. 개념편에서 다루었던 예제를 기반으로 좀 더 상세히 알아보겠습니다. public class Tv { private String title; public Tv(String title) { this.title = title; } public String getTitle() { return title; } } public class Radio { private Strin..

Java 2023. 11. 24. 13:22

Java Generic - 개념

이번 포스팅에서는 Java의 Generic의 개념을 한번 다뤄 보겠습니다. "제네릭"은 "구체적인 타입에 대한 정보를 타입 정의 시점이 아닌 타입의 인스턴스화 시점에 전달함으로써 하나의 타입으로 여러 가지 타입을 표현하는 프로그래밍 기법"을 일반적으로 지칭하는 용어입니다. Java의 Generic은 이러한 제네릭에 대한 Java의 구현체라고 할 수 있겠습니다. Java Generic의 주요 기능은 다양한 타입의 객체를 다루는 메서드나 클래스에 대해서 컴파일 타임 타입 체크를 가능하게 하여 타입 안정성을 높이고 형 변환의 번거로움을 줄여주는 것입니다. 위에 적은 문장이 Java Generic의 아주 주요한 개념이라고 할 수 있는데요, 이 문장을 제네릭이 없는 상황과 있는 상황 두가지 예시를 통해 상세히 들..

Java 2023. 11. 7. 09:50

Spring Triangle - IOC, DI

Spring 을 처음 접하는 개발자들이 가장 많이 마주치는 단어 중 하나는 아마도 IOC, DI 일 것 입니다. Spring 이라는 단어는 문맥에 따라서 여러가지 의미로 사용이 되지만(상황에 따라 Spring Core Project 를 의미하기도 하고, Spring 생태계 전체를 의미하기도 합니다.) 가장 좁은 의미로 사용이 되면 보통 Spring Container 를 지칭합니다. Spring Container 를 IOC Container 나 DI Container 로도 부르기 때문에, IOC 나 DI 는 자연스럽게 Spring 을 다루면서 자주 접하게 되는 단어입니다. 이렇듯 IOC, DI 는 Spring 을 다루는 개발자 들에게 매우 친숙한 표현이지만, 각 용어의 개념이나 맥락에 대해서 여러가지 오해..

Spring 2023. 11. 3. 14:24

Spring Triangle - PSA

Spring 프로젝트를 관통하는 핵심 개념으로 가장 많이 꼽히는 것이 IOC, PSA, AOP 입니다. 이 세가지 개념을 두고 흔히 Spring 의 3대 요소 혹은 Spring Triangle 이라고 표현합니다. 이번 글에서는 이 중 PSA 에 대한 원론적인 이야기를 해보겠습니다. PSA 는 Portable Service Abstraction 의 약자입니다. 번역하면 '휴대가 용이한 서비스 추상화' 정도가 되겠습니다. PSA 를 정확히 이해하려면 '서비스 추상화' 와 '휴대의 용이성' 이라는 두가지 측면을 나누어서 살펴봐야 합니다. 서비스 추상화 '추상화' 는 사전적으로는 '복잡한 자료, 모듈, 시스템 등으로부터 핵심적인 개념 또는 기능을 간추려 내는 것' 을 의미합니다. 프로그래밍 관점에서 해석하면 '..

Spring 2023. 10. 24. 13:21

추가 정보

인기글

최신글

페이징

이전
1
다음
TISTORY
흥많은 개발 이야기 © Magazine Lab
페이스북 트위터 인스타그램 유투브 메일

티스토리툴바