사용자가 쓸 수 있는 포트번호에는 종류가 있다.1~1023 : 잘 알려진 포트번호 (well-known port number)1024~49151 : 등록된 포트번호49152~65535 : 동적 포트번호 잘 알려진 포트번호의 같은 경우에는 루트권한이 필요하며 시스템에 필요한 포트번호 이기 때문에 사용자가 응용프로그램에서 필요하다고 해서 이 범위 내에 있는 포트번호를 사용하면 안된다. 이 범위의 번호들은 IANA(Internet Assigned Number Authority)에서 지정한것이며 이러이러한 일을 하는 시스템 프로그램은 이 포트번호를 써야 한다고 권장하는 내용을 담고 있다. 등록된 포트번호 : 사용자가 소켓프로그래밍을 할 때 개인적으로 사용하고 싶은 포트번호가 있을때 사용해도 되는 포트번호이다.위..
연결형 서버 프로그램 작성 절차▶ 그림 2-11에 TCP(연결형) 서버를 iterative 형태 즉, 서비스 요구가 들어오는 순서대로 처리해 주는 형태로 구축하는 절차를 나타냈다.▶ 서버는 socket()으로 소켓을 개설하고 bind()를 수행한 후 listen()으로 소켓을 수동 대기모드로 만든다.▶ 다음에는 accept()를 호출하여 자신에게 연결을 요청하는 클라이언트의 연결을 처리하도록 한다. ▶ 하나의 서비스를 완료하면 다음 요청을 반복적으로 처리한다. 1. socket() 소켓 생성socket(PF_INET, SOCK_STREAM, 0);서버에서도 마찬가지로 소켓을 생성해야 한다. (2) bind(), 소켓번호와 소켓주소 구조체 연결▶서버에서도 마찬가지로 socket()시스템 콜을 하면 소켓번호..
(1) socket(), 소켓 개설PF_INET ==인터넷 프로토콜 사용하겠다는 뜻SOCK_STREAM == TCP프로토콜 사용하겠다는 뜻 소켓 프로그래밍을 하기 위하여는 다섯 가지 요소 사용할 트랜스포트 프로토콜(스트림 또는 데이터그램), 자신과 상대방의 IP 주소, 자신과 상대방의 포트번호가 지정돼야 함. ▶ socket()을 호출시에는 트랜스포트 프로토콜만을 지정하게 되는데 그림 2-8에 socket() 수행시 내부적으로 일어나는 동작을 나타냈다. 여기서 응용 프로그램이 프로토콜을 지정하여 socket()을 호출하면 소켓 인터페이스가 새로 생성된 소켓의 소켓번호를 리턴하는 것을 보여주고 있다.▶ 한편 클라이언트는 자신이 사용할 포트번호를 명시적으로 지정할 필요가 없다. 즉, 클라이언트는 bind()..
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667package sdfg; public class ArrayQueue { // 큐 배열은 front와 rear 그리고 maxSize를 가진다. private int front; private int rear; private int maxSize; private Object[] queueArray; public static void main(String args[]) { ArrayQueue que = new ArrayQueue(3); que.insert('a'); que.insert(40..
1. 데이터베이스의 추상화 사용자가 취급하는 데이터베이스는 어떠한 구조로 물리적 저장장치 위에 저장되어야 한다. 이러한 저장 구조를 사용자의 입장에서 보느냐, 저장장치의 입장에서 보느냐에 따라 논리적 구조와 물리적 구조로 구별한다. 즉, 논리적 구조는 사용자가 생각하는 데이터의 논리적 표현이다. 반면에 물리적 구조는 디스크나 테이프와 같이 저장장치 위에 물리적으로 저장되어 있는 데이터의 실제 구조를 의미한다. 1.1 데이터의 계층 구조 비트(BIT : BInary digiT)바이트(Byte)필드(Field)레코드(Record)파일(File) = 테이블데이터베이스(Database) 스키마 1. 사전적 의미 : 개요 도표2. 데이터 베이스에서의 의미 : DB를 논리적으로 정의한 것을 나타내는 용어, Sche..
데이터 무결성데이터 무결성을 강제 적용하면 데이터베이스에 있는 데이터의 품질이 보장(데이터에 결함이 없다 == 무결성)됩니다. 예를 들어 한 사원의 사원 ID 값으로 123을 입력한 경우 데이터베이스의 다른 사원이 동일한 값의 ID를 갖지 못하도록 해야 합니다. employee_rating 열에 필요한 값이 1에서 5 사이이면 데이터베이스에서 이 범위를 벗어난 값을 허용하지 않아야 합니다. 테이블에 사원의 부서 번호를 저장하는 dept_id 열이 있으면 데이터베이스에서 회사의 부서 번호에 유효한 값만 허용해야 합니다.테이블을 계획할 때 필요한 두 가지 주요 단계는 특정 열에서 유효한 값을 확인하고 열에 있는 데이터의 무결성을 유지하는 방법을 결정하는 것입니다. 데이터 무결성은 다음과 같은 4가지 범주로 ..
자바는 자바가상머신이라는 것을 사용한다.자바는 작성된 프로그램을 한번 컴파일 한뒤 인터프리터 방식으로 실행하게끔 설계되어있다. 자바 프로그램의 실행 순서는 다음과 같다.자바로 작성된 프로그램 -> 바이트 코드 -> 인터프리터 방식으로 바이트 코드를 한줄한줄 해석하면서 실행 즉 자바 프로그램은 한번 컴파일 할때 자바 가상 머신이 해석할 수 있는 형태인 바이트 코드로 변형이 되고그 바이트 코드를 자바 가상머신이 한줄한줄 해석하면서(인터프리터방식) 실행시키는 방식으로 진행이 된다.그렇기 때문에 자바 가상 머신만 있다면운영체제나 cpu에 종속적이지 않고 자바로 된 프로그램을 한번 작성하면 어떤 플랫폼에서든지 그 프로그램을 실행 시킬수 있다는 장점이 있다.(c나 c++같은 경우 cpu나 운영체제가 달라지면 같은 ..
- Total
- Today
- Yesterday
- useEffect
- computed
- react
- react hooks
- async
- Action
- Next.js
- design system
- Polyfill
- state
- storybook
- useRef
- es6
- promise
- hydrate
- reducer
- reflow
- rendering scope
- Babel
- atomic design
- webpack
- javascript
- return type
- reactdom
- props
- await
- mobx
- server side rendering
- type alias
- typescript
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |