Develop/CS 3

객체지향 프로그래밍(OOP)

객체지향 프로그래밍(Object-Oriented-Programing) 실제 데이터의 표현을 객체를 중심으로 누가 어떤 일을 하는가에 집중해서 개발하는 방법론 객체지향 프로그래밍은 데이터를 표현하는데에 있어 객체를 중심으로 누가 어떤 일을 하는가에 집중하여 개발하는 방법론을 말한다. 데이터를 추상화 시켜 상태와 행위를 만들고 그 객체들이 서로 상호작용하는 형태로 개발한다. 객체지향 프로그래밍의 장/단점 장점 - 코드의 재사용성이 높다. - 유지보수가 쉽고 편리하다. 단점 - 설계에 많은 시간이 소요된다. - 절차형 프로그래밍에 비하여 상대적으로 느리다. 상태와 행위를 클래스로 만들고 그 객체를 상속을 통해 확장할 수 있고 객체 단위로 관리하기 때문에 객체들 간의 독립성이 뚜렷해지고 중복된 코드의 양이 줄어..

Develop/CS 2022.11.22

MSA(Micro-Service Architecture) 란?

1. Monolithic Architecture 소프트웨어의 모든 요소들이 하나의 통합된 형태의 아키텍쳐 모든 프로세스가 긴밀하게 결합하고 있고, 단일 서비스로 실행되기 때문에 소규모 프로젝트에서는 Monolithic Architecture가 훨씬 합리적일 수도 있다. 간단한 형태의 아키텍쳐이기도 하고 개발, 빌드, 배포가 용이하기 때문이다. 하지만 애플리케이션의 프로세스에 대한 수요가 급증하게 되고 일정 규모 이상으로 커지게 되면 뚜렷한 한계를 보이게 된다. 단점 - 애플리케이션의 규모가 커질수록 빌드, 배포시간이 길어짐. - 부분적인 오류 및 장애가 애플리케이션 전체에 영향을 끼침. - 여러 서비스의 결합도로 인해 서비스의 변경 및 수정이 어려움. - 부분적인 Scale-Out이 어려움. - 한 Fr..

Develop/CS 2022.11.14

Framework? Library? 프레임워크와 라이브러리의 차이

프레임워크(Framework)란? 소프트웨어 프레임워크(software framework)는 복잡한 문제를 해결하거나 서술하는 데 사용되는 기본 개념 구조, 간단히 뼈대, 골조, 프레임워크(framework)라고도 한다. 출처: Wiki 소프트웨어 프레임워크 소프트웨어 프레임워크 - 위키백과, 우리 모두의 백과사전 컴퓨터 프로그래밍에서, 소프트웨어 프레임워크(software framework)는 복잡한 문제를 해결하거나 서술하는 데 사용되는 기본 개념 구조이다. 간단히 뼈대, 골조(骨組), 프레임워크(framework)라고도 한 ko.wikipedia.org 소프트웨어의 구체적인 부분에 해당하는 설계와 구현을 재사용이 가능하게끔 일련의 협업화된 형태로 클래스들을 제공하는 것 Ralph Johnson 프레..

Develop/CS 2021.09.26