[디자인 패턴] 팩토리 패턴과 전략 패턴의 개념과 예제 소스
·
CS/디자인 패턴
팩토리 패턴(factory pattern) 팩토리 패턴(Factory Pattern)은 객체 생성을 담당하는 디자인 패턴 중 하나입니다. 이 패턴은 객체를 생성하기 위한 인터페이스를 정의하고, 이 인터페이스를 통해 구체적인 객체의 생성을 서브클래스에게 위임하는 방식으로 동작합니다. 일반적으로, 클라이언트 코드에서는 어떤 클래스의 인스턴스를 직접 생성하는 대신에 추상화된 인터페이스를 통해 객체를 요청합니다. 이 추상화된 인터페이스는 팩토리 메서드로 정의되어 있습니다. 실제로 객체를 생성하는 작업은 구체적인 팩토리 클래스에서 수행됩니다. 각각의 구체적인 팩토리 클래스는 추상화된 인터페이스를 상속받거나 해당 인터페이스를 구현하여 실제 객체의 생성을 담당합니다. 팩토리 메서드 내부에서는 적절한 구체적인 제조자(..
[자바스크립트] 브라우저 객체 모델 (1)
·
JavaScript
저번 시간에는 웹 문서에 삽입된 각 요소를 객체로 인식하고 조작하는 것을 문서 객체 모델(DOM)이라고 배웠습니다. 마찬가지로 웹 브라우저 전체를 객체로 관리하는 것을 브라우저 객체 모델(Browser Object Model)이라고 합니다. 이번 시간에는 자바스크립트의 브라우저 객체 모델에 대해서 살펴보도록 하겠습니다. 브라우저 객체 모델 브라우저 객체 모델(Browser Object Model)은 웹 브라우저가 웹 페이지를 표시하고 상호작용하는 방식을 정의하는 개념입니다. 이 모델은 웹 페이지의 다양한 요소와 구성 요소를 프로그래밍적으로 제어하고 조작할 수 있는 방법을 제공합니다. 브라우저 객체 모델은 웹 페이지의 각 요소를 객체로 표현하며, 이러한 객체들은 웹 페이지의 구조와 내용을 나타냅니다. 예를..
[자바스크립트] 문서 객체 모델(DOM)
·
JavaScript
자바스크립트는 웹 문서 안의 텍스트, 이미지, 표 등 웹 문서 요소를 조작할 수 있는 언어입니다. 자바스크립트가 웹 문서의 요소를 조작할 수 있는 이유는 문서 객체 모델이 있기 때문입니다. 오늘은 바로 이 문서 객체 모델에 대해서 살펴 보려고 합니다. 문서 객체 모델(DOM) 자바스크립트에서 웹 문서나 텍스트, 이미지 등의 요소를 제어하기 위해서는 먼저 문서 객체 모델에 대한 이해가 필요합니다. 문서 객체 모델은 영어로 Document Object Model 이라고 부르며 줄여서 DOM으로 표기합니다. 실무에서는 DOM을 그대로 읽어서 '돔'이라고 부릅니다. DOM의 정의 먼저 살펴보도록 하겠습니다. DOM의 사전적 정의는 "문서 객체 모델 (The Document Object Model, DOM) 은 ..
[자바스크립트] Array 객체의 함수 (2)
·
JavaScript
이번 시간에는 저번 시간에 이어서 Array 객체의 함수의 종류와 특징에 대해서 살펴보겠습니다. pop() 함수와 shift() 함수 자바스크립트에서 pop() 함수와 shift() 함수는 모두 배열 요소를 조작하는 데 사용되는 배열 메서드입니다. 두 함수 모두 배열에서 요소를 제거하는 데 사용되지만 제거하는 요소와 원래 배열을 수정하는 방법에 따라 다르게 작동합니다. 먼저 pop() 함수에 대해서 소스와 함께 살펴보겠습니다. pop() 함수는 배열에서 마지막 요소를 제거하고 제거된 요소를 반환하는 데 사용됩니다. 다음은 shift() 함수입니다. shift() 함수는 배열에서 첫 번째 요소를 제거하는 데 사용되며 제거된 요소를 반환합니다. 또한 나머지 모든 요소를 왼쪽으로 한 위치 이동하여 원래 배열을..
[자바스크립트] Array 객체의 함수 (1)
·
JavaScript
Array 객체에는 배열을 다룰 수 있는 여러 함수가 있습니다. 오늘은 Array 객체의 종류와 특징에 대해서 알아보겠습니다. concat() 함수 concat() 함수는 두 개 이상의 배열을 함께 병합하여 관련된 모든 배열의 요소를 포함하는 새 배열을 만드는 데 사용되는 배열 메서드입니다. 기존의 배열에서 또 다른 배열이나 값을 합쳐서 새로운 배열을 만듭니다. 아래는 concat() 함수를 사용한 경우 3가지입니다. 두 배열을 연결 여러 배열을 연결 기존 배열과 연결 concat() 메서드는 원래 배열을 수정하지 않고 배열을 결합하려는 경우에 편리합니다. 새 배열을 생성하므로 큰 배열을 다루는 경우 다른 배열 조작 방법만큼 효율적이지 않을 수 있습니다. 이러한 경우 push() 또는 스프레드 연산자([..
[자바스크립트] 배열, Array 객체
·
JavaScript
배열 (Array) 자바스크립트에서 배열은 숫자, 문자열, 개체 또는 다른 배열과 같은 모든 데이터 유형일 수 있는 요소 모음을 나타내는 내장 개체입니다. 배열을 사용하면 단일 변수 이름으로 여러 값을 저장하고 구성할 수 있으므로 데이터 목록 작업이 더 쉬워집니다. 배열은 자바스크립트에서 자주 사용하는 자료형이기 때문에 미리 프로토타입 객체로 만들어져 있습니다. Array 객체로 배열 만들기 자바스크립트에서는 배열을 쉽게 만들고 다룰 수 있게 미리 Array 객체가 만들어져 있습니다. 아래 소스를 보면서 설명하겠습니다. 이 소스는 Array 객체의 인스턴스를 만든 후 myArray 변수에 저장한 소스입니다. 빈 괄호를 사용하면 배열 요소의 개수가 고정되지 않기 때문에 myArray 배열에 많은 자료를 저..