-
zl/memory_stream 네이밍프로그래밍 2014. 7. 2. 11:32반응형
memory_stream
일반적으로, 메모리 조작을 돕는 클래스는 memory stream란 이름을 많이 사용한다.
스트림의 정의는? http://terms.naver.com/entry.nhn?docId=838349&cid=209&categoryId=209
put
처음엔 push로 네이밍을 했었는데, put은 어떤 공간에 어떤걸 딱딱 맞게 넣는 느낌인 반면 push는 어거지로 데이터를 밀어넣는단 느낌이라 put을 선택했다.
근데 구현부를 생각하면 push가 어울리기도 한 듯 -_-; 삽입 데이터의 사이즈 체크를 안 하고, 오버플로우를 유발할 수 있으니까...
하지만, 문제가 언제든 있을 수 있는 부분이 멀쩡하게 잘 돌아가는 것처럼 보이게 하는 것보단,
메모리 오버플로우 관련 에러를 미리 알 수 있는 것이 나을 거 같다는 생각에 체크하는 부분을 넣지 않았다.
data
data, array, read에서 고민을 했는데 기존 STL 컨테이너에서 메모리 포인터를 반환하는 함수의 이름이 data라 data란 이름을 선택했다.
지금 생각해보니 data의 const pointer를 반환하는 함수로 read 넣어도 괜찮을 듯?
capacity
영문 os에서 하드디스크의 크기를 capacity로 표현하는 것을 보고 참고.
available
메모리의 남은 공간의 크기를 리턴하는 함수로 ramaining과 available 중 하나를 하자고 생각했는데,
영문 os에서 하드의 남은 공간을 available로 표현하는 것을 참고.
used
메모리의 쓰여진 공간(또는 삽입 위치)을 리턴하는 함수로 used와 index, limit, size, end를 생각했는데
마찬가지로 영문 os에서... 하드의 사용한 양을 used로 표현하는 것을 참고.
set
생성자, 초기화 함수와 같은 기능을 하지만 별도로 할당하는 작업이 없고 단순 대입만 하기 때문에 create, initialize 같은 이름보단 가벼운 느낌인 set을 선택함.
compact
필요 없는 공간을 빼 압축한다는 함수로
기능이 http://terms.naver.com/entry.nhn?docId=818336&cid=209&categoryId=209 와 비슷해서 이름을 그대로 빌려서 씀.
* 관련 글
반응형'프로그래밍' 카테고리의 다른 글
[c++] typedef template<typename T> 템플릿 자료형의 이름 재정의 방법 (0) 2014.07.02 [c++] inline 함수 사용의 경우 (0) 2014.07.02 [C++] 모든 컨테이너를 배열처럼 접근? std::advance() (0) 2014.05.24 CPU에 따른, 프로그램에서의 효율적 스레드의 수 (2) 2014.05.23 C# 표준 네이밍 규칙 (2) 2014.05.02