목록전체 글 (40)
메모장
참고문헌 - 윤성우 ♨ 개인적 해석이 들어간 글임으로, 인지하지 못한 오류가 있을 수 있습니다 ♨ ○ Windows 기반 Thread ▣ 커널 오브젝트(Kernel Object) - 프로세스, 쓰레드, 파일, 세마포어, 뮤텍스 등은 운영체제가 만드는 리소스(Resource)다 -> 운영체제(Windows)가 생성해서 관리하는 리소스 - 이런 운영체제의 의해서 생서오디는 리소스들은 관리를 목적으로 정보를 기록하기 위해 내부적으로 데이터 블록을 생성(like 구조체 변수) -> 리소스 마다 유지해야 하는 정보가 다르니, 데이터 블록의 형태는 리소스마다 차이가 있다 => 이 데이터 블록이 '커널 오브젝트' 예) 윈도우 상에서 mydata.txt파일 생성 - 윈도우는 이 파일을 관리하기 위해 데이터 블록(커널 ..
참고문헌 - 윤성우 ♨ 개인적 해석이 들어간 글임으로, 인지하지 못한 오류가 있을 수 있습니다 ♨ ○ TCP기반 서버/클라이언트 TCP(Transmission Control Protocol) 네트워크 전송과정의 컨트롤 연결지향형 -> 스트림 기반 소켓 ▣ TCP/IP 프로토콜 스택 (주로 OSI 7 계층과 연계해서 공부한다) [ APPLICATION 계층 ] ↕ ↕ [TCP 계층] [UDP 계층] ↕ ↕ [ IP 계층 ] ↕ [ LINK 계층 ] 인터넷 기반의 효율적인 데이터 전송을 게층화하여 해결 각 계층을 담당하는 것은 운영체제 같은 소프트웨어나 NIC와 같은 물리적인 장치이기도 하다 TCP 소켓을 생성하여 데이터를 송수신 할 경우 APPLICATION - TCP - IP - LINK UDP 소켓을 ..
참고문헌 - 윤성우 ♨ 개인적 해석이 들어간 글임으로, 인지하지 못한 오류가 있을 수 있습니다 ♨ ▣ 프로토콜(Protocol)이란 무엇인가 - 대화에 필요한 통신규약을 의미 -> 컴퓨터 상호간의 대화에 필요한 통신규약 / 컴퓨터가 서로 데이터를 주고 받기 위해서 정의해 놓은 약속 ▣ 소켓의 생성 윈도우 운영체제의 socket 함수 SOCKET socket(int af, int type, int protocol) ① af(리눅스에선 domain) : 소켓이 사용할 프로토콜 체계(Protocol Family) 정보 전달 ② type : 소켓의 데이터 전송방식에 대한 정보 전달 ③ protocol : 두 컴퓨터간 통신에 사용되는 프로토콜 정보 전달 이 파라미터 들에 대한 세부적인 내용 기술될 예정 ▣ 프로토..
참고문헌 - 윤성우 ♨ 개인적 해석이 들어간 글임으로, 인지하지 못한 오류가 있을 수 있습니다 ♨ ▣ 네트워크 프로그래밍과 소켓에 대한 간단한 이해 - 네트워크 프로그래밍 : 네트워크로 연결되어 있는 서로 다른 컴퓨터가 데이터를 주고 받는 것 -> 조건 : 물리적인 연결(인터넷) + 소프트웨어적 데이터 송수신(운영체제에서 제공하는 socket) * Socket? : 물리적으로 연결된 네트워크상에서의 데이터 송수신에 사용할 수 있는 소프트웨어적인 장치 ▣ 윈도우 기반으로 소켓 구현 - 필요사항 1. #include 2. 추가 종속성에 'ws2_32.lib' 추가 (프로젝트 설정 -> 구성 속성 -> 링커 -> 입력 -> 추가 종속성) 3. winsock의 초기화 윈속 프로그래밍을 할 때에는 반드시 WSAS..

Map 이런 느낌의 Map을 서버에서 클라이언트 쪽으로 전달하고 싶어서 1. 클라이언트에서 ajax 요청 2. 해당요청에 따라 서버에서 뚱땅뚱땅 작업 (Map을 이쁘게 만들어서 ModelBean 안에 넣었다) -> ResponseEntity.status(HttpStatus.OK).body() 로 ModelBean을 보내준다 3. success에서 잘 받는다 까지는 이상없이 진행되고 심지어는 콘솔에 이쁘장하게 찍히기도 한다 이걸 또 증명하기 위해서 삭제했던 코드를 부활시켜 스샷을 찍었다 확인을 해보면 뭐가 덕지덕지 많은데 결론적으론 위와 같이 3개의 Tutor(Map의 Key에 해당) 객체 3개가 넘어온다 근데 어째서인지 script에서는 Map으로 담아지지 않았다 javascript는 저 친구를 Obje..

1차 상황 : ajax patch(데이터의 일부 수정을 위해) 요청을 보내고 싶다 문제 : javascrpt객체를 보내도, json 데이터를 보내도 controller에서 받지를 못했다 (당연히 json 때에는 @RequestBody는 파라미터에 당당히 붙어있다) 심지어 Get, Post는 되는데 patch만 안되더라 해결 : cotentType에 "application/json-patch+json; charset=utf-8"로 하고 데이터를 javascript객체에 JSON.stringify 해서 보내니까 받아졌다 2차 상황 : security를 적용하면서, ajax patch로 요청에 data를 json 형식으로 보내기 문제 : 403에러가 엄청 뜨길레 security 잘못인줄 알고 security-..

참고문헌 - 윤성우 ♨ 개인적 해석이 들어간 글임으로, 인지하지 못한 오류가 있을 수 있습니다 ♨ Chapter 4. 연결 리스트(Linked List) 2 4-1. 연결 리스트의 개념적인 이해 ▣Linked - 무엇을 연결하는가 연결 기반의 리스트, 줄여서 연결 리스트에서의 '연결'이 의미하는 바를 알기위해 예제를 보여주셨다 0이하의 숫자가 입력될때 까지, readCount가 10을 넘지 않을 때 까지(배열 arr의 크기가 10이므로) 반복 -> but! 그것이 배열의 단점 - 메모리의 특성이 정적이어서(길이의 변경이 불가능해서) 메모리의 길이를 변경하는 것이 불가능 이 단점을 보완하기 위해 등장한 것이 '동적 메모리 구성'이 등장

참고문헌 - 윤성우 ♨ 개인적 해석이 들어간 글임으로, 인지하지 못한 오류가 있을 수 있습니다 ♨ Chapter 3. 연결 리스트(Linked List) 1 3-1. 추상 자료형 : Abstract Data Type ▣ 자료구조에서의 추상 자료형 (Abstract Data Type) 추상 자료형, ADT(캡스 아님)는 구체적인 기능의 완성과정을 언급하지 않고, 순수하게 기능이 무엇인지 나열한 것을 의미한다 예) 지갑의 기능을 나열해보자면 - 카드의 삽입/추출 - 동전의 삽입/추출 - 지폐의 삽입/추출 위와 같이 기능이 이루어지는 과정(지폐를 넣기 위해서 지갑을 완전히 열고, 지폐를 넣는 공간에 지폐를 넣고 지갑을 닫는다)에 대한 언급 없이, 기능만 나열한 것 교재에서는 추상 자료형에 대한 추가적인 설명을..