본문 바로가기

ETC/TIP

Sublime Text Tip 주요 기능 및 단축키1. 세로 선택OS X마우스 왼쪽버튼 + Option선택영역 추가 : Command선택영역 빼기 : Command + ShiftCtrl + Shift + UpCtrl + Shift + Down WindowsShift + 마우스 우측버튼선택영역 추가 : Shift + Ctrl + 마우스 우측버튼선택영역 빼기 : Shift + Alt + 마우스 우측버튼Ctrl + Alt + UpCtrl + Alt + Down Linux마우스 우측버튼 + Shift선택영역 추가 : Ctrl선택영역 빼기 : AltCtrl + Alt + UpCtrl + Alt + Down 더보기
[알고리즘] Dijikstra 최단경로 알고리즘 다익스트라 알고리즘의 pseudo-code와 C 코드는 위키피디아에 잘 나와 있으므로 그곳을 참고한다. 이 글은 어떻게 그 알고리즘을 생각하게 되었을까 를 내 나름대로 생각해 본 후 그에 대하여 쓴 글이다. 요약 다익스트라 최단경로 알고리즘은 다음과 같이 생각해 볼 수 있다. 즉, 경로의 그래프를 실로 되어 있다고 생각하고, 각 지점은 매듭으로 되어 있다고 가정하자. 이와 같은 상황에서 주어진 두 지점을 잇는 최단경로를 찾기 위해서는 그 주어진 두 점을 양 끝으로 잡아 당겼을 때 생기는 직선이 된다. 이것은 자명하다1. 다익스트라 알고리즘은, 주어진 경로(그래프)에서 시작점이 주어졌을 때, 각 점으로 가는 최단경로를 구하는 알고리즘이다. 어느 날 나는 그가 어떻게 그 알고리즘을 생각했는지 궁금했다. 그 .. 더보기
Git Data Transport Commands 더보기
바인딩이란? 정적 바인딩 & 동적 바인딩 동적 바인딩을 정적 바인딩처럼 쓰기 위해서 virtual화 시킨다. virtual 화 되면 메모리 구조가 바뀌게 된다. 동적 바인딩의 이익 : 공통된 인터페이스를 제공한다. 상위가 하위를 접근할 수 있다. 추상 클래스 때문에도 쓴다. 바인딩 : 함수를 호출하는 부분에 함수가 위치한 메모리 번지를 연결시켜 주는 것 1) 정적 바인딩 : 컴파일시간에 바인딩 결정(실제 데이터 클래스가 필요 없는 경우 대부분 사용:실행속도 빠름) 2) 동적 바인딩 : 실행시간에 바인딩 결정.virtual화 하여 오버라이딩을 하면. 참조된 인스턴스의 실제 데이터 클래스형에 따라 재정의된 함수가 호출.[출처] [C++] 바인딩: 정적 바인딩 & 동적 바인딩|작성자 플러 더보기
TDD 테스트 주도 개발 작동하는 깔끔한 코드 (clean code that works). 론 제프리즈의 핵심을 찌르는 이 한마디가 테스트 주도 개발의 궁극적인 목표다.작동하는(모든 테스트를 통과하는) 깔끔한 코드(중복성이 제거된)는 사실 모든 프로그래머가 지향하는 목표점이라 할 수 있다. TDD는 기존의 프로그래밍 방식을 뒤엎는 개념이기 때문에 지속적인 훈련과 경험을 통해 올바른 습관을 쌓아가야 하며당분간의 생산성 저하도 감내해야 한다.TDD는 하나의 기술이지만 이면에는 사고의 근원적 변화가 있다.테스터가 아닌 프로그래머가 자기 작업의 품질에 대한 우선적 책임을 진다는 것이다. TDD의 프로그래밍 순서는 아래와 같다.1. 빨강 - 실패하는 작은 테스트를 작성한다. 처음에는 컴파일조차 되지 않을 수 있다.2. 초록 - 빨리 테스.. 더보기
[펌] 개발자를 위한 그래픽 강좌 #1 - 버튼편 안녕하세요? 비니아빠입니다. 늘 안펍에서 도움만 받다가 제가 받은 도움을 돌려드릴 방법이 없어 고민하던 차에 그래픽 강좌를 원하시는 개발자님들이 의외로 좀 계신거 같아 부족한 실력이나마 제가 아는 한도 내에서 강좌를 진행하려고 합니다. 우선은 2D 그래픽 강좌로 실제 앱 개발에 필요한 내용들 위주로 강좌를 하려고 해요. 숙지하실 것은 제가 그래픽 디자이너가 아닌데다 포토샵이나 3DMAX를 독학으로 배웠습니다. 정식으로 배운게 아니기 때문에 툴을 사용하는 방법이나 방식이 정식과는 많이 다를수도 있습니다. 제가 어떤 이미지를 보고 이건 이 기능을 이용하면 되겠다 생각하고 쓴게 많이 있습니다. 이점 참고하시고 이미 포토샵이나 3DMAX에 대해 익숙하신 분들은 그냥 제 강좌를 참고만 하시면 되겠습니다. 그럼 오.. 더보기
Subversion(SVN) 용어 및 사용법 SVN이란 버전 관리 시스템의 하나이다 버전 관리 기능을 제공하여 프로젝트를 여러 사람이 함께 참여할때 프로젝트 소스코드의 공유, 옛날 버전의 소스 코드 조회 소스 코드의 백업의 용도로 사용할수있다 - 체크아웃 : 저장소에 접근해 소스 코드와 버전관리를 위한 파일들을 받아 오는 행위- 추가 : 말 그대로 파일을 서버에 올린다- 커밋 : 내가 수정한 코드를 올린다- 업데이트 : 최신 리버전된 버전의 코드를 받는다 ===================================================================================================================================== SVN 사용법 용어 설명 저장소 : 리포지토리(Reposi.. 더보기