반응형

2024/11 13

전송 계층(Transport Layer) 정리 (2) (Feat. UDP, RTP)

UDP비연결형 서비스를 이용해 송신전송 과정에서 독립적으로 중개됨목적지 도착 보장 X흐름 제어 기능을 제공하지 않아 데이터 분실 오류, 도착 순서 변경 오류도 발생할 수 있음지터 - 데이터그램의 도착 시간이 불규칙적으로 도착하는 정도를 표현 (지연 차)  RTP실시간 서비스를 제공하기 위해 UDP에 데이터그램의 순서 번호 기능을 추가하는 것유니캐스팅, 멀티캐스팅 지원불규칙하게 수신되는 데이터의 순서를 정렬하기 위히 타임스탬프 방식 사용응용 프로그램의 라이브러리 형태로 구현되는 ALF 사용자원 예약, QoS 보장과 같은 기능은 제공하지 않아 실시간 동영상 서비스는 부적합하나의 완전한 프로그램 단위로 동작하는 것이 아닌 기능별로 개별적으로 구현 RTP 기능 요소릴레이(Relay) : 송수신 프로세스가 데이터..

전송 계층(Transport Layer) 정리 (1) (Feat. TCP)

전송 계층 (Transport Layer)오류 제어, 흐름 제어, 분할과 병합과 같은 데이터 순서화 등 기능을 가짐데이터 링크 계층의 특징과 유사프로세스 간 통신을 담당 멀티플렉싱 (Multiplexing)전송 계층의 주된 기능 중 하나로, 멀티플렉서와 유사한 기능을 가짐전송 계층의 여러 소켓에서 송신하는 데이터에 패킷을 붙여 통합하여 네트워크 계층으로 전달 (N -> 1)Sender의 역할디멀티플렉싱(DeMultiplexing)하나의 데이터를 분할하여 여러 소켓에 배분 해주는 것 (1 -> N), Receiver의 역할TCP 헤더(Header) 구조연결형 서비스와 신뢰성 있는 전송 보장전이중 방식의 가성 회선 제공IP는 컴퓨터 레벨에서 통신을 제공하고, TCP는 응용 프로그램 간 통신에 중점을 둠 TC..

데이터베이스(Database) 설계하기

1. 요구 사항 분석사용자의 요구 사항을 수집하고 분석하고,  DB의 목적 파악결과물 : 요구 사항 명세서 2. 개념적 설계요구 사항 명세서를 기반으로 개념적 스키마 생성개체를 추출 (의미가 있는 명사를 찾음)개체 간의 관계를 정의 (의미가 있는 동사를 찾음)E-R 다이어그램으로 개념적으로 표현결과물 : E-R 다이어그램 (개체-관계 다이어그램)기호기호 이름의미□사각형개체 타입◇마름모관계 타입ㅇ타원속성◎이중 타원다중값 속성 (복합 속성)ㅇ밑줄 타원기본키 속성―이중 실선필수로 연결해줘야 하는 관계 3. 논리적 설계개념적 스키마를 논리적 모델링하여 논리적 스키마 생성관계 데이터 모델(릴레이션, 스키마) 를 주로 사용데이터 타입, 길이, 기본 값, 제약조건 등을 정의모든 개체는 릴레이션으로 변환한다.결과물 :..

C# 상속(Inheritance), virtual, override 키워드 정리

상속(Inheritance)부모 클래스로부터 기능들을 자식 클래스가 물려받는 행위이다.부모 클래스의 기능을 재사용하고, 확장이 가능하다.생산성과 유지보수에 크게 도움이 된다. C#에서 상속(Inheritance) 사용하기public class Doctor // 부모 클래스 Doctor 생성{ private void Leave() // 접근 불가능 { Console.WriteLine("퇴근을 합니다."); } protected void Claim(int money) // 접근 가능 { Console.WriteLine($"돈 {money} 원을 청구합니다."); } public void Health(string name) // 접근 가능 { ..

프로그래밍/C# 2024.11.13

C# 인터페이스(Interface) 정리

✋ 인터페이스(Interface)객체지향 언어 특징 중, 추상화를 구현 시켜주는 메서드 정의 방법의 한 종류이다. 즉, 서로 비슷한 기능을 하는 클래스들을 그룹화 시켜서 공통의 메소드를 정의시킬 수 있음. Example : Animal (Walk) → Cat (Walk) | Dog (Walk) | Fox (Walk) | Tiger (Walk) 다중 상속이 가능하다. Example : Animal (Walk), Pet (Name) → Cat (Animal.Walk, Pet.Name) | Dog ( Animal.Walk, Pet.Name) | Fox (Walk) | Tiger (Walk) 다형성을 보장한다. ✋ C#에서 인터페이스 구현인터페이스의 이름에는 앞에 I"를 붙이도록 한다.interface IAni..

프로그래밍/C# 2024.11.12

데이터베이스 SQL CREATE TABLE 정리

CREATE TABLE 양식CREATE TABLE 테이블명 ( 속성1 타입 [제약조건], 속성2 타입 [제약조건], 속성3 타입 [제약조건], .......); 주요 테이블 타입 종류타입특징CHAR()0~255자의 고정 문자 저장VARCHAR()0~65535자의 가변 문자 저장INT4바이트의 크기를 가진 정수형FLOAT4바이트의 크기를 가진 실수형DATE날짜 출력 (YYYY-MM-DD)TIME시간 출력 (HH:MM:SS)💧 고객 테이블 만들기CREATE TABLE 고객 ( id INT PRIMARY KEY, 이름 VARCHAR(10), 주소 VARCHAR(10),);id이름주소   고객 테이블  테이블 제약 조건테이블 작성할 때 특정한 규칙을 추가하여 만들 수 있다..

데이터베이스 SQL SELECT문 총정리

SELECTDML중 조회를 담당하는 구문으로, 외부 스키마(사용자 관점)에서 주로 사용된다.테이블뿐만 아니라, 뷰도 조회가 가능하다.SELECT {ALL | DISTINCT} [속성] FROM [테이블] {WHERE [조건]} {GROUP BY [속성] HAVING [조건]} {ORDER BY [DESC | ASC]}1. {ALL | DISTNCT}ALL : 중복을 포함해준다. (기본값, 생략가능)SELECT ALL * FROM 구매고객번호이름상품1홍길동귤2이순신오렌지3홍길동오렌지 DISTINCT : 중복을 제거해준다.SELECT DISTINCT * FROM 구매고객번호이름상품1홍길동귤2이순신오렌지 2. {WHERE}조건을 적용하여 투플들을 검색한다.WHERE [조건] 으로 작동한다.SELECT * F..

데이터베이스(Database) 관계 대수 정리

▶ 일반 집합 연산자 ◀1. 합집합(UNION)결과 값 카디널리티가 두 릴레이션의 카디널리티의 합보다 크지 않음. (교집합이 존재할 수도 있기 때문) 2. 교집합(INTERSECTION)결과 값 카디널리티가 두 릴레이션 중 더 적은 카디널리티를 갖고 있는 릴레이션보다 크지 않음. 3. 차집합(DIFFERENCE)결과 값 카디널리티가 릴레이션 R의 카디널리티보다 크지 않음 (R - S)교집합 포함X 4. 교차곱(CARTESIAN PRODUCT)두 튜플들을 교차하여 곱해서 새로운 릴레이션을 만듬 (R x S) 😗 관계 대수를 이루기 위한 최소 조건두 릴레이션의 차수가 같아야함두 릴레이션의 대응되는 속성의 도메인이 같아야함단, 교차곱은 해당 조건들이 충족되지 않아도됨  ▶ 순수 관계 연산자 ◀1. SELEC..

C# 제네릭(generic) 간단 사용법

때론 상황에 따라 메소드에 전달하는 인자의 타입을 바꾸고 싶을 때가 있다."제너릭 메소드(generic method)" 은 이 고민을 해결해준다. 1. 제너릭 메소드제네릭 메소드는 다음과 같이 정의한다.class Test{ private T TestGeneric(T n1) { .... }}리턴 타입을 T로 지정하고, 메소드 이름 뒤에 를 붙이고, 매개변수 타입을 T로 지정한다.여기서 T는 우리가 직접 정의할 타입이다. 실제로 사용을 해보겠다.class Test{ public static void Main(string[] args) { object rs_1 = GetCode(30); // int 타입으로 정의 object rs_2 = GetC..

프로그래밍/C# 2024.11.07
반응형