분류 전체보기(599)
-
[effective STL] 항목 10 : 할당자(allocator)의 일반적인 사항과 제약 사항
정리- 할당자를 템플릿으로 만든다. 템플릿 매개 변수에는 메모리를 할당하고자 하는 객체의 타입을 나타내는 T를 사용한다,- 포인터와 레퍼런스라는 typedef 타입을 제공하되, 항상 포인터는 T*, 레퍼런스는 T&- 할당자에는 객체별 상태를 절대로 주지 않는다. 일반적으로, 할당자는 비정적 데이터 맴버를 가질 수 없다.- 할당자의 allocate 멤버 함수에는 필요한 객체의 개수를 매개 변수로 넘긴다.(바이트 수가 아님) 이 함수는 T* 포인터(포인터라는 typedef 타입을 통해) 반환(비록 T 객체는 아직 생성되지 않았지만)한다.- 표준 컨테이너(연관 컨테이너)에서 필요로 하는 rebind라는 중첩 템플릿을 꼭 제공한다.
2015.09.14 -
[영상] 게임이 마약?
1. 증거가 없다.2. 게임은 현세대의 희생양이다.(한때 영화, 음악, 텔레비전도 악마로 여겨진적이 있었다.)3. 살인자들은 원래 정서적으로 불안하다.4. 대부분의 게이머들은 폭력적이지 않다.5. 범죄율 하강
2015.09.14 -
[서버] 홀펀칭
서론P2P에서 Peer들 간의 통신을 하기 위해서 서로의 IP, Port에 패킷을 전송하면 된다.But! 우리는 방화벽의 NAT(Network Address Translation)을 거치게 된다.NAT안에서는 통신이 되지만 서로 다른 NAT에서는 그 안에만 존재하는 가상 IP기 때문에 당연히 통신이 되지 않는다. NAT의 종류도 여러가지다.Full Cone NAT, Restricted Cone NAT, Port Restricted Con NAT, Symmetric NAT 홀펀칭1. 사설(Private) IP로 패킷을 전송해본다.2. 안되면 공인(Public) IP로 패킷을 전송해본다.3. 안되면 Relay Server로 패킷을 전송해 전송을 맡긴다. (릴레이 서버는 패킷을 중계해주는 서버이다. 클라이언트..
2015.09.13 -
[서버] nagle 알고리즘
정의IP 네트워크에서 데이터는 몇 곂의 헤더로 캡슐화되어 목적지로 전해진다.이 헤더들의 용량도 제법 크고, 적은 데이터를 보내게 되면 배보다 배꼽이 커진다!! 보낼 수 있는 데이터를 바로 패킷으로 만들지 않고 가능한 모아서 더 큰 패킷으로만들어 한번에 보내면 효율적으로 전송할 수 있다. 네이글 알고리즘은 이것을 실제로 구현한 네트워크 전송 알고리즘이다. 동작원리네이글 알고리즘 수도코드 123456789101112#define MSS "maximum segment size"if there is new data to send if the window size >= MSS and available data is >= MSS send complete MSS segment now else if there is u..
2015.09.13 -
scaffold generator 사용해보기
Post 모델 생성1rails generate scaffold Post title content:textcs 해당 제너레이터로 모델을 만든다.title과 content 두 개의 속성으로 만들겠다는 의미다.여러 리소스 모듈이 생성되고 연관 템플릿이 형성된다. rake 명령으로 데이터베이스 테이블 생성1rake db:migratecs 생성 후 확인1rake db:migrate:statuscs db:rollback 명령 하면 마이그레이션을 취소할 수 있다. sqlite 들어가보기1bin dbcs 간단히 확인도 함 해보고.. 결과이렇게 간단히 포스트가 가능한 웹페이지가 만들어지다니...............................................
2015.09.13 -
Sqlite cheat sheet 2015.09.13