목록2024/10 (4)
tlov
#개발 기존에는 MVC 패턴이 그저 스프링 개발 시에 웹의 기능을 분리해주기 위해 사용하는 '특정한' 디자인 패턴인 줄 알았습니다. 웹 개발 시에 사용하는 디자인 패턴 정도로 생각이 갇혀있던 겁니다. 근데, 우테코 6기 '코딩해듀오' 팀 분들의 페어 프로그래밍 행사에 참여했다가 MVC(Model-View-Controller) 패턴에 대한 생각이 확장되었습니다. 그래서 다시 한번 MVC를 정리해보고자 이 글을 작성합니다. MDN의 정의MVC는 사용자 인터페이스, 데이터 및 논리 제어를 구현하는데 널리 사용되는 소프트웨어 디자인 패턴입니다. 소프트웨어의 비즈니스 로직, 화면을 구분하는데 중점을 두며, 이러한 '관심사 분리'로 더 나은 업무의 분리와 향상된 관리를 제공합니다. 즉, 어플리케이션을 모델, 뷰, ..
#개발/자바/모던자바인액션 동작 파라미터화를 이용하면 자주 바뀌는 요구사항에 효과적으로 대응할 수 있습니다. 동작 파라미터란? 아직은 어떻게 실행할 것인지 결정하지 않은 코드 블록이다. 예를 들어, 나중에 실행될 메서드의 인수로 코드 블록을 전달할 수 있습니다. 결과적으로 코드 블록에 따라 메서드의 동작이 파라미터화 됩니다. 이를 이해하기 위해 책에 있는 하나의 예제를 통해 알아보겠습니다. 기존의 농장 재고목록 어플리케이션에 리스트에서 녹색 사과만 필터링 하는 기능을 추가한다고 가정합시다.enum Color { RED, GREEN }public static List filterGreenApples(List inventory) { List result = new ArrayList(); for (Apple..
Bean스프링 공식 문서에 따르면, 어플리케이션의 백본을 형성하고 Spring IoC 컨테이너에 의해 관리되는 객체들을 Bean이라고 부릅니다. 즉, Spring IoC 컨테이너에 의해 관리되고 인스턴스화되고 조립되는 객체를 의미합니다. 단순하게는 현재 어플리케이션 속 수많은 객체들 중 하나가 Bean이라고 생각하면 됩니다. Spring IoC Container스프링 IoC 컨테이너는 제어의 역전(Inversion of Control, IoC) 개념을 가지며 이는 Bean을 인스턴스화 하고, 구성하며 조립(assemble)하는 역할을 합니다. 그 중에서도 IoC의 특수한 형태(Specialized form of IoC)인 의존성 주입(Dependency Injection, ID)은 생성자, 클래스 속성 ..
펜윅트리는 이진트리기반의 자료구조이며, 세그먼트 트리의 원리를 가지고 있습니다. 세그먼트 트리?여러 개의 데이터가 존재할 때 특정 구간의 합 혹은 최소값, 최대값 등을 구하는데 사용하는 이진 트리 형태의 자료구조입니다. 저는 이것을 어떻게 써야할지 단번에 이해가지 않아서 BOJ BOOK의 설명에 따라 그림과 함께 이해하였습니다. 만약, 이러한 문제가 있다고 합시다.크기가 n인 정수 배열 a가 있으며, 다음 연산을 최대 m번 수행합니다. 1. 구간 l, r이 주어졌을 때, a[l] + ... + a[r] 합 출력하기 2. i번째 수를 v로 바꾸기int[] a = {4, 6, 2, 1, 7, 5, 8}; 주어진 a 배열은 위와 같습니다. 일단 문제에서 구간 l, r이 주어졌을 때의 구간합을 구한다라고 하면 ..