[OOP] 음식 주문하기
·
여러가지/이것저것
음식점에서 음식을 주문하는 프로세스를 구현하기 위한 도메인 모델링 과정을 요약하면 다음과 같습니다: 1. 도메인 구성 객체 식별 도메인 내 객체: 음식점의 주문 프로세스에서 중요한 역할을 하는 객체를 식별합니다. 이에는 손님, 메뉴판, 다양한 음식(예: 돈까스, 냉면, 만두), 요리사, 요리가 포함됩니다. 2. 객체 간 관계 분석 손님과 메뉴판: 손님은 메뉴판을 통해 음식을 선택합니다. 손님과 요리사: 손님은 요리사에게 음식을 요청(주문)합니다. 요리사와 요리: 요리사는 손님의 주문에 따라 요리를 준비합니다. 3. 도메인 모델링과 추상화 객체 추상화: 식별된 객체들을 정적인 타입으로 추상화하여, 각 객체의 역할과 책임을 명확히 합니다. 손님 타입: 주문하는 역할을 담당합니다. 요리 타입: 돈까스, 냉면,..
[OOP]사칙연산 계산기
·
여러가지/이것저것
요구사항 간단한 사칙연산을 할 수 있다. 양수로만 계산 할 수 있다. 나눗셈에서 0을 나누는 경우 적절한 예외(IllegalArgument, ZeroDivisionError)를 발생 시킬 수 있다. 절차적 코드 Enum 기반: ArithmeticOperator Enum 클래스를 사용하여 구현합니다. 각 연산을 열거형 값으로 나타내며, 각 값은 연산을 수행하는 calculate 메소드를 구현합니다. 자바 package org.example; import java.util.stream.Stream; import org.junit.jupiter.api.DisplayName; import org.junit.jupiter.api.Test; import org.junit.jupiter.params.Parameter..
OOP?
·
여러가지/이것저것
객체지향이란? 객체지향(Object-Oriented)은 컴퓨터 프로그래밍에서 널리 사용되는 패러다임 중 하나로 프로그램을 객체들의 집합으로 모델링하여 설계하고 프로그래밍하는 방법론입니다. 이는 소프트웨어의 재사용성, 확장성, 유지관리성을 향상 시키기 위해 만들어졌습니다. 핵심개념에는 클래스, 객체, 상속, 다형성, 캡슐화, 추상화등이 있습니다. 4가지 특징 - 추상화(Abstraction) 복잡한 실제 상황을 간단한 모델로 표현하는 것. 필요한 정보만을 추출하여 프로그램의 복잡도를 관리하게 해줍니다. 불필요한 부분을 제거함으로써 필요한 핵심만 나타낸 것이라고 볼 수 있다. 흔히 일반화, 단순화라고 여겨 질수 있습니다. 이를 사용하는 이유는 복잡성을 낮추기 위함입니다. - 다형성(Polymorphism) ..