본문 바로가기

CS3

운영체제란? 운영체제란?(Operating System, OS)실행할 프로그램에 필요한 자원을 할당하고 프로그램이 올바르게 실행되도록 돕는 특별한 프로그램운영체제는 실행되고 있는 프로젝트이므로 메모리에 적재되어 실행된다. 그러나 메모리 중에서도 따로 커널 영역이라는 곳에 저장이 된다. 덧붙이자면, 메모리는 커널 영역, 사용자 영역으로 나눌 수 있는데, 일반적으로 사용되는 응용 프로그램은 사용자 영역에 저장된다. 메모리 구조+---------------------+| 사용자 영역 | ← 대부분의 프로그램이 여기서 실행| (User Space) | - 웹 브라우저| | - 게임| | - 문서 편집기+-.. 2025. 5. 19.
MVC, MVP, MVVM 패턴 MVC 패턴 Model(모델), View(뷰), Controller(컨트롤러)로 이루어진 디자인 패턴입니다. 이 패턴은 주로 인터페이스를 가진 응용 프로그램에서 사용되며, 애플리케이션의 개발과 유지 보수를 쉽게 하기 위해 데이터, 프레젠테이션, 프로세싱을 서로 분리합니다. 애플리케이션의 구성 요소를 세가지 역할로 구분하여 개발 프로세스에서 각각의 구성 요소에만 집중해서 개발할 수 있습니다. 재사용성과 확장성이 용이하다는 장점이 있고, 애플리케이션이 복잡해질수록 모델과 뷰의 관계가 복잡해지는 단점이 있습니다. (🧑🏻‍💻 저는 여기서 모델과 뷰의 관계가 복잡해진다는 거에 궁금증이 생겼는데 밑에서 설명하겠습니다!) 🍓 Model (모델) 모델은 애플리케이션의 데이터인 데이터베이스, 상수, 변수 등을 뜻합니다... 2024. 1. 31.
팩토리 패턴(Factory Pattern) Factory Pattern이란❓ 객체를 사용하는 코드에서 객체 생성 부분을 떼어내 추상화한 패턴이자, 상속 관계에 있는 두 클래스에서 상위 클래스가 중요한 뼈대를 결정하고, 하위 클래스에서 객체 생성에 관한 구체적인 내용을 결정하는 패턴 왜 써야하는데 ❓ 결론부터 말하면 객체 생성 하는 코드를 분리하여 클라이언트 코드와 결합도(의존성)를 낮추어 코드를 건드리는 횟수를 최소화 하기 위한 패턴이다. 여기서 클라이언트 코드는 분리시킨 객체 생성 코드를 호출하는 쪽을 의미한다. 결합도(의존성)는 왜 낮춰질까❓ 그것은 객체 지향 성질 중에 하나인 다형성을 이용하였기 때문이다. 인터페이스를 구현한 객체들은 같은 인터페이스를 바라 보기 때문에 코드에 유연함이 있기 때문이다. 어떻게 코드를 건드리는 횟수가 최소화 될.. 2024. 1. 27.