CS(Computer Science)지식76 [컴퓨터 구조] 컴퓨터 구조 시작하기 컴퓨터 구조를 알아야 하는 이유 컴퓨터 구조에 대한 지식의 역량이 개발자로서 업무를 수행하는데 필요하다는 것을 기업들도 알고 있기 때문에 각종 기술 면접에서 컴퓨터 구조에 관한 소양을 검증하거나 반드시 알아야 하는 분야로 명시하기도 EX) 삼성전자, 구글 뿐만 아니라 개발 관련된 상황에서 성능, 용량, 비용 문제는 프로그래밍 언어의 문법만 알아서는 해결하기 어렵습니다. 혼자만 사용하는 프로그램을 만들 때는 이러한 문제를 생각조차 해 본 적이 없을 수도 있습니다. 즉, 컴퓨터 구조를 이해하면 입력과 출력에만 집중하는 개발을 넘어 성능, 용량, 비용까지 고려하며 개발하는 개발자가 될 수 있다. 컴퓨터 구조의 큰 그림 가장 큰 사각형은 메인보드입니다. 메인보드 안에 시스템 버스(양방향 수직 화살표)가 있습니다.. 2024. 1. 29. 방문자 패턴(Visitor Pattern)이해하기 : 쉽게 설명한 디자인 패턴(C++) 방문자 패턴(Visitor Pattern)이란? 방문자 패턴은 객체 지향 디자인 패턴 중 하나로, 특정 연산을 객체의 구조에 대해 수행하도록 하는 패턴입니다. 이 패턴은 연산을 수행하려는 객체에서 분리하여 새로운 연산을 추가하거나 기존 연산을 변경하는 것을 쉽게 만들어줍니다. 이 패턴은 주로 복잡한 객체 구조에 대해 연산을 수행할 때 사용됩니다. 방문자 패턴은 다음 두 가지 주요 구성 요소로 이루어져 있습니다: Visitor: 방문자 인터페이스로, 방문할 객체의 클래스에 대한 방문 연산을 선언합니다. ConcreteVisitor: 방문자 인터페이스를 구현하고, 각 클래스에 대한 방문 연산을 정의합니다. 예시 코드 다음은 C++로 작성된 간단한 방문자 패턴의 예입니다: #include class Concr.. 2024. 1. 29. 템플릿 메서드 패턴(Template Method Pattern)이해하기 : 쉽게 설명한 디자인 패턴(C++) 템플릿 메서드 패턴(Template Method Pattern)이란? 템플릿 메서드 패턴은 알고리즘의 구조를 메서드에 정의하고, 일부 단계를 서브클래스에서 오버라이드하는 디자인 패턴입니다. 이 패턴을 사용하면 알고리즘의 구조를 변경하지 않고 알고리즘의 특정 단계를 재정의할 수 있습니다. 템플릿 메서드 패턴은 다음 두 가지 주요 구성 요소로 이루어져 있습니다: AbstractClass: 템플릿 메서드를 정의하고, 알고리즘의 각 단계를 정의하는 메서드(일부는 기본 구현을 제공하고, 일부는 서브클래스에서 구현해야 함)를 포함합니다. ConcreteClass: AbstractClass에서 정의한 메서드를 오버라이드하여 알고리즘의 특정 단계를 구현합니다. 예시 코드 다음은 C++로 작성된 간단한 템플릿 메서드 패.. 2024. 1. 29. 상태 패턴(State Pattern)이해하기 : 쉽게 설명한 디자인 패턴(C++) 상태 패턴(State Pattern)이란? 상태 패턴은 객체의 내부 상태에 따라 여러 행동을 캡슐화하는 디자인 패턴입니다. 이 패턴을 사용하면 객체의 클래스를 변경하지 않고도 객체의 행동을 변경할 수 있습니다. 상태 패턴은 객체가 내부 상태에 따라 행동을 변경해야 할 때 유용합니다. 상태 패턴은 세 가지 주요 구성 요소로 이루어져 있습니다: Context: 사용자에게 유용한 인터페이스를 제공하고, 현재 상태를 정의하는 객체입니다. State: 모든 특정 상태의 행동을 캡슐화하는 인터페이스입니다. ConcreteState: State 인터페이스를 구현하는 서브클래스로, 특정 상태의 행동을 제공합니다. 예시 코드 다음은 C++로 작성된 간단한 상태 패턴의 예입니다: #include // State class.. 2024. 1. 29. 이전 1 ··· 13 14 15 16 17 18 19 다음