[디자인패턴] MVC 패턴 이해하고 활용하기
·
CS/디자인 패턴
안녕하세요! 피피아노입니다 🎵 이번 포스팅에서는 소프트웨어 디자인 패턴 중 하나인 MVC 패턴에 대해 간단하게 한 번 살펴보도록 하겠습니다. MVC 패턴이란?먼저 MVC 정의 먼저 살펴보겠습니다. "MVC (모델-뷰-컨트롤러) 는 사용자 인터페이스, 데이터 및 논리 제어를 구현하는데 널리 사용되는 소프트웨어 디자인 패턴입니다"라고 하는군요.... 말이 좀 어렵죠? MVC 패턴(Model-View-Controller Pattern)은 소프트웨어 공학에서 사용되는 아키텍처 패턴 중 하나입니다. 이 패턴은 애플리케이션을 세 가지 역할로 분리하여 개발하는 방법론을 의미합니다.  제가 밑에서 좀 더 쉽게 설명해드리겠습니다! 그 전에 우선 각 키워드 별로 어떤 역할을 하는지 간단하게 살펴보겠습니다. Model(모..
[SwiftUI] MVVM(Model-View-ViewModel) 디자인패턴 완벽하게 이해하기
·
Apple/SwiftUI
안녕하세요! 피피아노입니다 🎵 이번 포스팅에서는 Swift에서 사용되는 디자인패턴 중 하나인 MVVM(Model-View-ViewModel)에 대해 이야기를 해보려고 합니다. 그럼 바로 시작하겠습니다! MVVM이란?MVVM은 Model-View-ViewModel의 약자로, 애플리케이션의 데이터 처리와 사용자 인터페이스(UI)를 분리하는 데 초점을 맞춥니다. 이 디자인패턴은 크게 세 가지 구성 요소로 이루어져 있습니다. MVVM 구성요소첫 번째로 '모델(Model)'은 애플리케이션의 비즈니스 로직과 데이터를 관리합니다. 데이터베이스와의 상호작용, 네트워크 통신 등이 여기에 해당됩니다. 두 번째로 '뷰(View)'는 사용자에게 보여지는 UI 요소를 담당합니다. 사용자의 입력을 받아 화면을 업데이트하는 역할..
[디자인패턴] 이터레이터 패턴 With Swift, Java
·
CS/디자인 패턴
서론 제가 블로그 포스팅을 1일 1포스팅을 해보려고 했는데 개인 사정으로 너무 바빠서 결국 실패해버렸네요..ㅎ 그런 이유로 오랜만에 포스팅을 해보려고 합니다! 이번시간에는 디자인패턴에 이터레이터 패턴에 대해서 포스팅을 해보려고 합니다! 이터레이터 패턴은 디자인 패턴 중 하나로, 여러분이 컬렉션을 다루는 데 있어 매우 유용한 도구입니다. 이터레이터 패턴이 무엇인지, 왜 필요한지, 그리고 어떻게 사용하는지에 대해 자세히 알아보도록 하겠습니다. 이터레이터 패턴이란? 이터레이터 패턴은 객체의 컬렉션, 즉 목록을 순회하는 방법을 제공하는 디자인 패턴입니다. 쉽게 말해서, 컬렉션 안의 각 요소에 순차적으로 접근할 수 있는 방법을 제공하는 것이죠. 그런데 왜 이런 패턴이 필요한 걸까요? 왜 이터레이터 패턴이 필요한가..
[디자인 패턴] 팩토리 패턴과 전략 패턴의 개념과 예제 소스
·
CS/디자인 패턴
팩토리 패턴(factory pattern) 팩토리 패턴(Factory Pattern)은 객체 생성을 담당하는 디자인 패턴 중 하나입니다. 이 패턴은 객체를 생성하기 위한 인터페이스를 정의하고, 이 인터페이스를 통해 구체적인 객체의 생성을 서브클래스에게 위임하는 방식으로 동작합니다. 일반적으로, 클라이언트 코드에서는 어떤 클래스의 인스턴스를 직접 생성하는 대신에 추상화된 인터페이스를 통해 객체를 요청합니다. 이 추상화된 인터페이스는 팩토리 메서드로 정의되어 있습니다. 실제로 객체를 생성하는 작업은 구체적인 팩토리 클래스에서 수행됩니다. 각각의 구체적인 팩토리 클래스는 추상화된 인터페이스를 상속받거나 해당 인터페이스를 구현하여 실제 객체의 생성을 담당합니다. 팩토리 메서드 내부에서는 적절한 구체적인 제조자(..
[디자인 패턴] 디자인 패턴과 싱글톤 패턴
·
CS/디자인 패턴
1. 디자인패턴 소프트웨어 디자인 패턴이란 소프트웨어 설계에서 자주 발생하는 문제를 해결하기 위해 개발된 재사용 가능한 솔루션입니다. 디자인 패턴은 설계 문제의 구조화된 해결책을 제공하며, 소프트웨어 시스템의 유지 보수성, 확장성, 유연성 등을 개선하는 데 도움을 줍니다. 2. 싱글톤 패턴 하나의 클래스에 오직 하나의 인스턴스만 가지는 패턴을 말합니다. 하나의 클래스를 기반으로 여러 개의 개별적인 인스턴스를 만들 수 있지만, 그렇게 하지 않고 하나의 클래스를 기반으로 단 하나의 인스턴스를 만들어서 이를 기반으로 로직을 만드는데 쓰입니다. 보통 데이터베이스 연결 모듈에 많이 사용합니다. 하나의 인스턴스를 만들어 놓고 해당 인스턴스를 다른 모듈들이 공유하면서 사용합니다. 이러한 특징 덕분에 인스턴스를 생성할..