Computer Science4 디자인 패턴의 의미와 여러가지 디자인패턴 # 디자인패턴 프로그램을 설계할 때 발생했던 문제점들을 객체 간의 상호 관계 등을 이용하여 해결할 수 있도록 하나의 '규약' 형태로 만들어 놓은 것을 의미. 우리가 코드를 칠 때 사용하는 라이브러리나 프레임워크의 이론적인 뼈대가 되는 개념이기 때문에 반드시 알아둬야 한다. * 라이브러리나 프레임워크도 코드를 칠 때 어떤 문제를 보다 쉽고 효과적으로 해결하기 위해 등장한 것이기 때문 # 싱글톤 패턴 하나의 클래스에 하나의 인스턴스만 가질 수 있도록 하는 패턴. 기본적으로는 하나의 클래스를 기반으로 여러 개의 개별적인 인스턴스를 생성할 수 있지만 그렇게 하지 않고 하나의 인스턴스만 만들어 이를 기반으로 로직을 만드는 데 사용되며 보통 I/O 바운드 작업에 사용된다. * I/O 바운드 : 디스크 연결, 네트워.. 2023. 2. 11. Docker의 탄생과 필요성을 배포의 발전과정으로 알아보자 Docker는 배포단계에서 내가 만든 소스코드들을 Container화 할 때, 빠르고 편하고 효과적으로 할 수 있도록 도움을 줄 수 있는 라이브러리이다. 여기에서 Docker와 Container라는 개념이 등장하는데, Docker는 현재 웹 개발에서 거의 필수적인 요소가 되었고, Container라는 개념은 다양한 산업 전반에서 사용되는 개념이기 때문에 알아보고 가면 좋을 것 같아 내용을 정리했다. 정리를 하면서 Container가 필요해지므로 인해, Docker가 탄생된 것을 알게 되었고, Docker에 대해 조금 더 깊은 이해가 필요한 단계에서 많은 도움이 되었기에 해당 내용을 같이 정리했다. # 전통적 배포 물리적으로 존재하는 컴퓨터 한 대에 하나의 OS를 설치하고 여러가지 프로그램을 배포하는 방식.. 2023. 2. 7. 클라우드(Cloud)의 개념과 클라우드를 기반으로 한 서비스 # 클라우드(Cloud) 인터넷을 통해 접근할 수 있는 서버이며, 그 안에서 구동되는 소프트웨어, 데이터베이스 등을 말한다. 실제적인 컴퓨터를 사용하는 것이 아닌 온라인에 컴퓨터와 같은 역할을 할 수 있도록 환경을 구축하고 그 안에서 서비스를 운영할 수 있도록 도와주는 Data Center라고 보면 된다. 추가적으로, 데이터를 저장하는 방식에 따라 on-premise 또는 off-premise 방식으로 나뉘는데, on-premise 방식 : 기업이 직접 자체 시설을 마련해 데이터를 유지하고 관리하는 방식 (데이터 센터 구축) off-premise 방식 : AWS 등을 통해 가상의 환경에서 데이터를 유지하고 관리하는 방식 두 방식을 나누게 된 것은, 장단점이 있겠지만 전통적으로는 on-premise 방식을.. 2023. 2. 7. 개발자 필수(?)지식 개발자로써 가지고 있으면 좋은 필수적인 지식에 관해 정리해본다. 이미 알고 있는 부분들은 Skip 했고, 개념적으로나 언어적으로 확실치 않았던 것들이 확실해 진 부분 또한 포함되어 있으니 지극히 개인적인 정리글이 될 수 있음. # Data ## 데이터의 의미 이론을 세우는 데 기초가 되는 사실 또는 바탕이 되는 자료 등을 의미 ## 데이터 포맷(Data Format) 데이터는 단순한 정보의 나열이 될 수 있지만, 보통의 경우에는 복잡성을 가지게 된다. 이런 복잡성을 가지는 데이터를 주고 받기 위해서는 특정한 약속(Format)이 정해져 있어야 원활히 데이터를 주고 받을 수 있다. 쉽게 말하면, 데이터를 어떻게 표현해서 작성해놓는가로 생각할 수 있고, 대표적인 데이터 포맷에는 JSON과 XML이 있다. #.. 2023. 2. 7. 이전 1 다음