엘키의 주절 주절

소소한 개발 이야기

포인터와 참조자 이야기

자~ 간만에 C++ 이야기입니다~! C언어의 난이도를 몇배로 높여준! 많은 사람들이 C언어를 포기하게 만든 원흉! 포인터부터 얘기해보죠. 포인터(*)란 아시다시피, 메모리 주소를 가리키는 변수입니다. 가리키는 곳은 언제든 변할 수 있고, 아무곳도 가리키지 않는 상태(NULL 포인터)도 있습니다. 참조자(&)란 뭘까요? 참조자는 변수의 다른 ...

MS-SQL 복원

복원 백업한 데이터를 복구하는 것을 말한다. 쿼리 Restore Database DB이름 From Disk=’경로\파일명.bak’ 복원시 옵션 일반 옵션 File : 한 파일 내에 여러개의 백업 존재 시, 백업 디바이스 헤더 검사에서의 Position 값을 넘겨주면 해당 백업만 복원합니다. ...

MS-SQL 조인 내부 처리 방식 정리

참고 자료 http://support.microsoft.com/kb/197297/ko 용어 정리 Driving Table : 조인에서 기준이 되는 테이블 (= Outer Table) Drived Table : 조인에서 결합 되어지는 테이블 (= Inner Table) Nested Loop 두개 이상의 테이블에서, Drivin...

MS-SQL 데이터 저장 방식

Page MS-SQL에서 다뤄지는 데이터가 저장되는 최소 단위는 Page 입니다. Page의 크기는 8KB ( 1024 * 8 = 8192 btyes ) 이지만, 실제로 데이터를 저장할 수 있는 maximum row size 는 8090 bytes 입니다. Page의 구성 header (96 bytes) 이전페이지와 다음페이...

MS-SQL 백업

백업시 참고 사항 기본적으로 model, northwind, Pubs, tempdb는 백업하지 않아도 됨. master테이블은 권한과 같은 정보들이 있고, msdb테이블은 스케쥴이나 패키지 작업이 저장되어 있습니다. 필요한 데이터일 경우에만 백업하면 됩니다. 전체 백업 전체 백업은 데이터의 변경 유무에 관여하지 않고 전체 데이터의 복...

인덱스가 있지만 인덱스를 안 타는 경우

인덱스 컬럼의 변형 select * from table where LOWER(name) =’word’; select * from table where idx - 1 = 5; 이 처럼 인덱스에 변형을 가하게 되면, DBMS가 인덱스를 이용하지 않는다. NOT 또는 IN 연산자 사용 NOT일 경우 무조건 인덱스를 안타는 것이 아니다...

DB 인덱스 정리

인덱스는 데이터를 찾는 과정이 필요한 모든 일 (Select, Update, delete, Insert 모두) 에 영향을 준다. 데이터를 빠르게 찾기 위해 필요하다. 인덱스 추가시 인덱스 관리 비용(처리하는 일, 인덱스 관리용 공간 필요) 하지만, 인덱스는 항상 타는게 아니다. 인덱스를 탈 때 통계를 참고하는데, 이 통계가 최적 수행 방법을 산출하...

잡스처럼 일한다는 것 - 뛰어난 리더가 뛰어난 기업, 뛰어난 제품을 만든다.

프로그래머 분들 중에 반MS적인 성향을 가지신 분들이 많은 것은 어제 오늘 일이 아니다. 나 개인적으로는 친MS에 가까울 정도로 윈도우의 개발 환경에 찬사를 보내곤 하지만, MS가 존경의 대상은 아니다. MS의 경쟁 업체를 견제하는 전략은 얄미울 정도로 탁월하고 효과적인 경우가 많지만, 정이 가지 않더라. 그렇다면… 윈도우즈의 모태라 할 수 있는 ...

문제해결 노트

나의 리팩토링 기준 및 리팩토링 방법 정리 중복을 제거하라. (DRY. Don’t Repeat Yourself) 같은 일을 하는 클래스, 혹은 메소드 등이 한 곳에만 존재하도록 하라. 메소드가 존재해야 할 클래스는 명확해야 한다. (직관성) 기본적으로 어떤 동작을 행하는 쪽에 메소드를 만...

게임 프로그래머를 위한 수학과 물리

사실 나는 고등학교때 수학/물리 공부를 잘 하지 못했다. 프로그래머가 되겠단 목표는 있었지만, 재미를 못느끼다보니 집중도 잘 못했고. 물론 지금 서버 프로그래머를 하고 있기에 그 필요도가 비교적 낮다고 하지만, 수학을 근간으로 발전해온 컴퓨터에서 수학에 대한 이해도는 높을 수록 좋은 것이지 절대로 불필요하지 않다. 게다가 나는 취미로 2D며, 3D...