분류 전체보기(59)
-
객체지향 프로그래밍
객체지향 프로그래밍(OOP)이란? 객체들의 집합으로 프로그램의 상호 작용을 표현하며 데이터를 객체로 취급하여객체 내부에 선언된 메서드를 활용하는 방식객체 내부에 자료형(필드)와 함수(메서드)가 같이 존재한다. 장단점 장점재사용성객체를 재사용할 수 있기 때문에 코드의 재사용성이 높아진다.객체를 만들고 이를 사용하는 클래스에서 계속 재사용할 수 있다.코드의 가독성클래스와 객체를 이용하면 함수와 변수 등을 그룹화하여 구조화할 수 있어 코드를 쉽게 이해하고 디버깅할 수 있다.유지보수성객체지향 프로그래밍은 변경이 필요한 경우 해당 객체만 수정하면 되므로 유지보수가 쉽다.캡슐화, 상속, 다형성 등의 객체지향 특징을 통해 프로그램을 더 효울적으로 개발할 수 있다. 단점처리 속도객체 간 메시지 전달, 객체 생성 ..
2024.07.17 -
선언형과 함수형 프로그래밍
선언형 프로그래밍 선언형 프로그래밍은 '무엇'을 할 것인지에 집중하는 프로그래밍 패러다임이다.이에 반해 명령형 프로그래밍은 '어떻게' 할 것인지를 설명한다.예를 들어, 데이터베이스에서 정보를 검색하는 경우, 선언형 프로그래밍은 검색하려는 정보의 조건만 명시하면컴퓨터가 어떻게 그 정보를 찾을지 알아서 처리하게 된다. ex) SQL, HTML ... 선언형 프로그래밍의 장단점 장점코드가 직관적이며 가독성이 높다.개발자가 '어떻게'를 걱정할 필요가 없으므로 개발이 단순화된다. 단점선언형 프로그래밍은 컴퓨터에게 과정을 자동으로 처리하도록 맡기므로 성능 문제가 발생할 수 있다.하드웨어에 대한 최적화가 어려울 수 있다. 함수형 프로그래밍 함수형 프로그래밍은 선언형 패러다임의 일종으로, 작은 순수 함수들..
2024.07.15 -
MVP 패턴
MVP 패턴이란 MVP 패턴은 MVC 패턴으로부터 파생되었으며 MVC에서 C에 해당하는 컨트롤러가 프레젠터(Presenter)로 교체된 패턴이다. View와 Presenter는 일대일 관계이기 때문에 MVC패턴보다 더 강한 결합을 지닌 디자인 패턴이다. Model - 애플리케이션의 데이터인 데이터베이스, 상수, 변수 등을 뜻한다.View - 모델을 기반으로 사용자가 볼 수 있는 화면을 뜻한다.Presenter - Model과 View를 매개체로한다는 점에서 Controller와 유사하지만, View에 직접 연결되는 대신 인터페이스를 통해 상호작용 한다는 차이가 있다. 장점 Model과 View의 결합도를 낮추면, 새로운 기능 추가 및 변경을 할 때마다 관련된 부분만 코드를 수정하면 되기 때문에 확장성..
2024.06.07 -
MVC 패턴
MVC Model, View, Controller로 이루어진 디자인 패턴 Model - 데이터베이스, 상수, 변수 등View - 사용자가 보는 화면 / 프론트Controller - Model과 View를 이어주는 역할 MVC 패턴을 이용한 대표적인 프레임워크 - Spring Spring의 MVC 처리 순서 Client 요청이 DispatcherServlet에게 전달된다.DispatcherServlet은 HandlerMapping을 사용해서 client요청을 처리할 Controller 객체를 추출한다.Controller에서 Moder을 사용하여 client의 요청을 처리한다.Cotroller는 처리 결과 data를 Model(AndView)에 담아서 return 한다.DispatcherServlet..
2024.06.05 -
노출 모듈 패턴
노출 모듈 패턴 즉시 실행 함수를 통해 private, public 같은 '접근 제어자'를 만드는 패턴을 뜻한다.자바스크립트는 private나 public 같은 접근 제어자가 존재하지 않고, 전역 범위에서 스크립트가 실행된다.따라서 노출 모듈 패턴을 통해 public, private 접근 제어자를 구현하기도 한다. Java Spring에서 노출 모듈 패턴의 개념 특정 기능 또는 서비스를 외부에 제공하는 인터페이스를 만드는 것캡슐화, 인터페이스 분리, 의존성 역전 등의 SOLID 원칙을 따르는 것과 밀접하게 관련되어 있음 Controller Layer : Spring MVC에서 Controller 클래스는 HTTP 요청을 처리하고 응답을 반환하는 역할을 한다. 이들은 웹 클라이언트에게 노출되는 인터페..
2024.06.04 -
이터레이터 패턴
이터레이터 패턴 일련의 데이터 집합에 대하여 순차적인 접근(순회)을 지원하는 패턴데이터 집합이란 객체들을 그룹으로 묶어 자료의 구조를 취하는 컬렉션을 의미별도의 이터레이터 객체를 반환받아 이를 이용해 순회하기 때문에 집합체의 내부 구조를 노출하지 않고 순회 가능 배열이나 리스트같은 경우 순서가 연속적인 데이터 집합이기 때문에 간단한 for문을 통해 순회할 수 있지만, 데이터 저장 순서가 정해지지 않고 적재되는 다른 복잡한 컬렉션들은 기준이 애매해진다. 이처럼 복잡하게 얽혀있는 자료 컬렉션들을 순회하는 알고리즘 전략을 정의하는 것을 이터레이터 패턴이라고 한다. 이터레이터 패턴 구조 자바의 컬렉션 프레임워크(JCF)에서 각종 컬렉션을 무리 없이 순회할 수 있는 것도 내부에 미리 이터레이터 패턴이 적용..
2024.06.03