본문 바로가기

CS37

[CS] 클래스와 객체와 인스턴스의 차이, static 키워드 사용하는 이유 및 단점 클래스와 객체와 인스턴스의 차이 클래스 클래스(class)란 객체(object)를 만들어 내기 위한 틀이며 만들어 낼 객체의 속성과 메서드의 집합을 담아놓은 것 객체 객체(object)란 클래스로부터 만들어지는 실체, 클래스로 선언된 변수 인스턴스 인스턴스(instance)란 객체가 메모리에 할당이 된 상태이며 런타임에 구동되는 객체. 객체와 같은 의미로 쓰이기도 함. 인스턴스는 AWS의 클라우드의 가상서버라는 말로도 쓰임 예시 class Person { constructor(name = "alanwalker", IQ = 100, str = 100) { this.name = name; this.IQ = IQ; this.str = str; } levelup() { this.IQ++; this.str++; .. 2023. 8. 25.
[CS] CI/CD(Continuous Integration/Delivery & Deployment) CI/CD(Continuous Integration/Delivery & Deployment) 개발자들이 소스 코드를 지속적으로 통합하고, 테스트하며, 배포하는 것을 의미 필요한 이유 혼자가 아닌 수 많은 개발자가 코드를 합치고 배포를 계속해서 시스템 없이 수동으로 한다면 여러 명의 개발자가 동시에 개발을 하게 될 것이고 서로 다른 환경에서 안되는 문제, 에러등이 발생. 이러한 문제를 해결하기 위해 CI/CD라는 개념이 도래했고 이를 쉽게 해주는 툴 등이 나옴 파이프라인 코드구축부터 시작해서 배포까지의 일련의 과정들을 CI/CD 파이프라인이라고 함. 총 3가지의 단계로 구성 continuous integration : 코드를 빌드하고 테스트하고 통합 continuous delivery : 해당 레퍼지토리에.. 2023. 8. 24.
[CS] 클라우드 - 컨테이너와 도커 클라우드 - 컨테이너와 도커 컨테이너 컨테이너는 애플리케이션이 한 컴퓨팅 환경에서 다른 컴퓨팅 환경으로 빠르고 안정적으로 실행되도록 코드와 모든 종속성을 패키징하는 소프트웨어의 표준 단위 컨테이너는 OS를 공유하기 때문에 빠르고, 경량화되어있으며 격리성도 훌륭함. 그러나 OS에 문제가 생기면 다른 앱에도 영향을 미칠 수 있음 도커 도커는 컨테이너 필요한 기능을 거의 모두 제공하는 플랫폼 애플리케이션 구동에 필요한 환경설정관련 절차를 도커파일에 작성하고 그 후 빌드를 하면 도커이미지가 생성이 되고 도커이미지를 실행시키면 도커컨테이너가 만들어짐 그 후 도커컨테이너에 설정된 프로그램, 데이터 등이 실제 컴퓨팅자원 위에서 돌아가게 됨 도커 컨테이너 만드는 과정 1. 도커파일 : 패키지, 환경변수설정 등을 기록한.. 2023. 8. 23.
[CS] 클라우드 - 가상머신 클라우드 - 가상머신 전통적 배포방식 물리적인 컴퓨터 한 대에 하나의 OS를 깔고 여러 가지 프로그램을 설치하는 방식. 계정을 나눠 여러명의 사용자가 이용할 수 있도록 할 수 있지만 어떤 프로그램을 설치했을 때 다른 앱에 영향을 미침 → 독립적이지 않은 문제점이 있음 전통적 배포방식 가상머신을 기반으로 배포하는 것. 가상머신이란 컴퓨터의 하드웨어를 소프트웨어적으로 구현한 것 계정을 나누는 것이 아니라 한대의 컴퓨터를 가지고 여러개의 OS를 구동할 수 있게 되며 CPU, RAM을 물리적으로 갈아끼는 것이 아니라 설정만으로 이를 수행할 수 있음 중간에 있는 하이퍼바이저는 하나의 시스템 상에서 가상 컴퓨터를 여러 개 구동할 수 있도록 해 주는 중간 계층을 의미하며 이 위에 여러개의 가상머신을 구축할 수 있고 .. 2023. 8. 20.
[CS] API 개념 API 개념 API (API, Application Programming Interface)는 둘 이상의 컴퓨터 프로그램이 서로 통신하는 방법이자 컴퓨터 사이에 있는 중계 계층을 의미 예를 들어 A라는 컴퓨터가 요청을 하고 B라는 컴퓨터가 응답을 한다고 했을 때의 어떻게 통신할 것인지, 어떠한 데이터를 주고 받을 건지 등에 대한 방법(HTTP, HTTPS 프로토콜을 사용할 것인지, GET, POST 등의 방식 등..)이 정의된 중계계층을 말함 참고로 API는 과거부터 발전되어온 용어로 라이브러리 및 프레임워크를 설명하는 명세서, 웹상에서 WEB API, Web Socket API 등을 가리키는데 현재를 기준으로 API라고 할 때 보통 WEB API를 기준으로 설명 인터페이스 인터페이스(interface).. 2023. 8. 18.
[CS] 데이터포맷 - XML 데이터포맷 - XML XML XML(Extensible Markup Language)은 마크업 형태를 쓰는 데이터 교환 형식 마크업 형태 마크업(markup)는 태그 등을 이용하여 문서나 데이터의 구조를 나타내는 방법 (속성부여도 가능) 구성 1. 프롤로그 : 버전, 인코딩 2. 루트요소(단 하나만) 3. 하위 요소들 마녀 배달부 키키 따스함에 둘러쌓인다면 하울의 움직이는 성 세계의 약속 HTML 과 XML 비교 1. HTML의 용도는 데이터를 표시 / XML은 데이터를 저장 및 전송 2. HTML에는 미리 정의된 태그가 있지만 사용자는 XML에서 고유한 태그를 만들고 정의 가능 3. XML은 대/소문자를 구분하지만 HTML은 구분하지 않음. 대신 으로 태그를 작성하면 XML 구문 분석기에서 오류가 발생.. 2023. 8. 16.