하나의 클래스에 오직 하나의 인스턴스만 가지는 패턴장점데이터베이스 연결 모듈에 많이 사용 \-> DB.instance라는 하나의 인스턴스를 기반으로 생성가능하여, 데이터베이스 연결에 관한 인스턴스 생성 비용이 절감단점의존성이 높아진다. (= 종속성이 높아진다.)TDD(
프록시 패턴 프록시 패턴은 대상 객체에 접근하기 전 그 접근에 대한 흐름을 가로채 대상 객체 앞단의 인터페이스 역할을 하는 디자인패턴 이를 통해 객체의 속성, 변환 등을 보완하며 보안, 데이터 검증, 캐싱, 로깅에 사용 프록시 객체와 프록시 서버로 활용 프록시 객
이터레이터(iterator) 패턴 이터레이터 패턴은 이터레이터르 사용하여 컬랙션의 요소들에 접근하는 디자인 패턴 순회할 수 있는 여러 가지 자료형의 구조와는 상관없이 이터레이터라는 하나의 인터페이스로 순회가 가능 iterator: 반복자 장점 다양한 데이터 순회 알고
무엇을 풀어내는가에 집중하는 패러다임'프로그래밍은 함수로 이루어진 것이다'라는 명제가 담긴 패러다임프로그램이 실제로 어떻게 흘러가는 지와 상관 없이 프로그램의 논리에 초점을 맞춤상태와 제어 흐름이 존재하지 않음약속된 정의만 사용해서 작성하는 언어를 의미선언형 패러다임의
여러가지 방법이 있지만 프록시 객체를 써서 구현하곤 합니다. 프록시 객체를 통해 객체의 속성이나 메서드 변화 등을 감지하고 이를 미리 설정해 놓은 옵저버들에게 전달하는 방법을 구현합니다.프록시 서버란 서버 앞단에 둬서 캐싱, 로깅, 데이터 분석을 서버보다 먼저하는 서버
네트워크는 노드와 링크가 서로 연결되어 있거나 연결되어 있지 않은 집합체를 의미여기서 노드란 서버, 라우터, 스위치 등 네트워크 장치를 의미여기서 링크란 유선 또는 무선을 의미좋은 네트워크란 많은 처리량을 처리하고 지연시간이 짧고 장애 빈도가 적고 좋은 보안을 갖춘 네
네트워크 기기 애플리케이션 계층: L7 스위치 인터넷 계층: 라우터, L3 스위치 데이터 링크 계층: 브리지, L2 스위치 물리 계층: NIC, 리피터, AP L7스위치 애플리케이션 계층을 처리하는 기기 여러 장비를 연결하고 데이터 통신을 중재하며 목적지가 연결된
애플리케이션 계층으로서 웹 서비스 통신에 사용기본적으로 한 연결당 하나의 요청을 처리하도록 설계 -> RTT증가(단점)RTT: 패킷이 목적지에 도달하고 나서 다시 출발지로 돌아가기까지 걸리는 시간(패킷 왕복 시간)서버로부터 파일을 가져올 때마다 TCP의 3-way-ha
1\. CPU 스케줄링과 프로세스 관리\-> CPU 소유권을 어떤 프로세스에 할당할지, 프로세스의 생성과 삭제, 자원 할당 및 반환을 관리2\. 메모리 관리\-> 한정된 메모리를 어떤 프로세스에 얼만큼 할당해야 하는지 관리3\. 디스크 파일 관리\-> 디스크 파일을 어
메모리 계층은 레지스터, 캐시, 메모리, 저장장치로 구성계층 위로 올라갈수록 가격이 비싸지고 용량은 자강지고 속도는 빨리지는 특징계층의 존재 이유는 경제성과 캐시 때문ex) '로딩중' = '하드디스크 또는 인터넷에서 데이터를 읽어 RAM으로 전송하는 과정이 끝나지 않았
컴퓨터에서 실행되고 있는 프로그램CPU스케줄링의 대상이 되는 작업프로세스는 프로그램으로부터 인스턴스화된 것ex) 프로그램은 구글 크롬 프로그램 같은 '실행파일', 이를 두번 클릭하면 구글 크롬 '프로세스'가 시작소스 코드의 주석을 제거하고 오류처리, 코드 최적화 작업을
프로세스의 실행 가능한 가장 작은 단위코드, 데이터, 스택, 힙을 스레드끼리 서로 공유, 그외의 영역은 각각 생성\-> 프로세스끼리는 각자 생성, 그 안에 멀티스레드가 코드,데이터,스택,힙을 공유하는 것프로세스 내 작업을 여러개 스레드, 멀티스레드로 처리하는 기법스레드
일정한 규칙, 규약을 통해 구조화되어 저장되는 데이터의 모음해당 데이터베이스를 제어, 관리하는 통합 시스템을 DBMS데이터베이스 안에 있는 데이터들은 특정 DBMS마다 정의된 쿼리언어를 통해 삽입,삭제,수정,조회 등을 수행 가능데이터베이스는 실시간 접근과 동시 공유가
데이터베이스를 구축할 때 가장 기초적인 뼈대 역할릴레이션 간의 관계들을 정의하는 것서비스를 구축한다면 가장 먼저 신경 써야할 부분ERD는 시스템의 요구사항을 기반으로 작성되며 이 ERD를 기반으로 데이터베이스를 구축데이터베이스를 구축한 이후에도 디버깅 또는 비즈니스 프
데이터베이스에서 하나의 논리적 기능을 수행하기 위한 작업의 단위데이터베이스에 접근하는 방법은 쿼리, 즉 여러개의 쿼리들을 하나로 묶는 단위ACID특징(A:독립성, C:일관성, I:독립성, D:지속성)'all or noting'트랜잭션과 관련된 일이 모두 수행되었거나 수
행과 열을 가지는 표 형식 데이터를 저장하는 형태의 데이터베이스SQL이라는 언어를 써서 조작MySQL, PostgreSQL, 오라클, SQL Server, MSQL 등이 존재관계형 데이터베이스의 경우 표준 SQL은 지키기는 하지만, 각각의 제품에 특화시킨 SQL을 사용
하나의 테이블이 아닌 두 개 이상의 테이블을 묶어서 하나의 결과물을 만드는 것MySQL에서는 JOIN이라는 쿼리, MongoDB에서는 lookup이라는 쿼리로 이를 처리조인의 종류 중에는 대표적으로 내부 조인, 왼쪽 조인, 오른쪽 조인, 합집합 조인 존재💡 잠깐) M
효율적인 코드를 개선하는데 쓰이는 척도문제를 해결하는데 걸리는 시간과 입력의 함수 관계어떠한 알고리즘 로직이 '얼마나 오랜 시간'이 걸리는지를 나타내는데 쓰인다빅오 표기법으로 나타낸다입력 범위 n을 기준으로 해서 로직이 몇번 반복되는지를 나타내는 것💡 잠깐) C++코