요새 내 주변에는 모두가 입을 모아 한 기기를 찬양하는 상황이 펼쳐지고 있다.바로 아이폰이다! 아이팟 터치도 혁신적인 기기였지만, 아이폰은 그 이상이다. 3G망을 이용한 무선 네트웍 기능은 언제 어디서나 원하는 정보를 이라는 컨셉에 매우 잘 부합한다. 과연 이 것을 노린 것일까, 요행일까? 아마도 '그'라면 노렸을 지도 모른단 생각이 든다. 바로 '스티븐 잡스'다. 매킨토시를 만들어 낸 장본인으로, 새로운 것을 시도하고 실현 하는 것에 탁월한 재주가 있는 그의 '작품'들은 나오는 제품마다 큰 관심사가 되고 있다. 발매되자마자 매진 행렬을 보여주고 있는 아이패드가 그 반증이다. 개인적으로 스티븐 잡스와 관련된 서적은 '잡스처럼 일한다는 것' (http://elky.tistory.com/203) 을 읽었었다..
객체 지향이란 말은 이제 너무 들어 지겨울 정도다. 그렇지만 실무에서 만나는 많은 프로그래머가 모두들 객체 지향적으로 프로그램을 잘 설계하고, 잘 분석하고, 잘 짜느냐고? 그렇지 않다. 내가 만난 프로그래머들만 그럴거라고? 아마도 그렇진 않아 보인다. 꽤나 많은 프로그래머들이 어떠한 경로를 통해서건 객체 지향에 대한 이야기를 듣고 배우지만, 실천에 옮기기란 매우 어려워한다. 왜냐하면 아는 것과 행하는 것. 또한 자기 나름대로의 객체 지향이란 기준을 세우는 것. 그 어떤 것도 쉽지 않기 때문이다. 그 것을 코드로써 구현 하는 데에도, 이것이 과연 어떤 잇점이 있는가? 이렇게 했을때 단점이 무엇인가? 이런 것들에 대한 명확한 해답을 주는 책은 매우 드물다. 이 책에서 제시한 기준들, 구현 방법들이 100% ..
나는 여러 서평에도 언급했지만 제목 혹은 저자의 이름에 대한 기대를 조금 갖는 편인데, 이 책 역시 '재미 이론' 이라는 제목에 혹한 것이 사실이다. 재미란 무엇인가? 그저 즐겁기만 하다면 무엇을 해도 좋은가? 게임은 그저 재미만을 추구하는 오락으로 그치는가? 단순한 유흥인가 문화인가? 나 역시 저자처럼 누군가의 손자이며 아들인 동시에 프로그래머이고, 게임 개발자이다. 나의 가족에게 부끄럼없는 직업을 갖고 있는가라는 고민은 나 역시 했었던 부분이며, 결과까지 도출하는 과정이 달랐을 뿐 나 역시 내 일을 사랑하고 내 일을 자랑스럽게 생각한다. 저자 만큼 게임에 대한 철학적 회고적 미래지향적인 분석적 접근을 하진 모했지만 나 역시 게임이 사회적으로 가져다주는 좋은 영향을 받고 자란 입장으로 게임을 사랑하고 ..
퍼즐이라 하면 많이들 어렵단 생각을 하곤한다. 나 역시 마찬가지였고, 임백준씨의 책이지만 퍼즐북이라는 제목을 보자마자 당황했으니 말 다했다. 임백준씨 책은 하나도 빼먹지 않은 나로써, 이번책도 놓칠 수 없다는 생각에 예약 구매했다. 평소에도 퍼즐에 관심이 많았던 임백준씨 답게 퍼즐북에도 재밌는 퍼즐이 많이 포함되어 있었다. '그리' 어렵지 않은 퍼즐들을 부담스럽지 않게 재밌게 풀어내는 임백준씨의 글솜씨는 여전히 유효했다. 프로그래머지만 수학적인 재미를 크게 느끼지 못하는 나로썬, 퍼즐의 수학적 발상에도 좀 부족한 감이 있었는데, 그런 부분에서 적어도 '재미'있게 접근할 수 있는 계기가 된거 같아 아주 좋았다. 특히나 기억에 남는 퍼즐은 다리 건너기 문제가 기억에 남는다. 예전에 접했던 다리 건너기 문제보..
1장. 가상 컴파일 단위 테스트 등의 버그의 위치를 알려주는 도구를 이용하라. 모든 컴파일러의 경고 옵션을 활성화 시켜라. (최고 Lv, 경고를 에러로 처리) 코드의 빈틈을 파악하고, 그 빈틈이 발생했을 때 알 수 있게끔 코드를 작성하라. 블랙 박스식 검사에 의존하지 말자. 2장. 주관을 갖자 릴리즈, 디버그에 다른 코드를 작성하라. 예외 검사는 디버그 모드에서 활성화 시키고, 디버그 버전으로 테스트하라. 디버그 테스트를 위해 assert를 적응 이용하라. 정의되지 않은 동작 또는 의도하지 않은 동작을 캐치할 때 assert를 사용하라. assert는 Release에서 포함될 코드를 포함하면 안된다. Release에서도 포함될 코드라면 예외 처리를 하라. 방어적 프로그래밍을 하되, 버그를 숨기지 않도록 ..
Visual C++ 프로젝트를 만들 때 새 솔루션을 만들거나 솔루션에 프로젝트를 추가할 수 있습니다. 하나의 솔루션에 포함된 여러 프로젝트를 사용하여 중요한 응용 프로그램을 개발하는 경우가 많습니다. 프로젝트는 보통 EXE 또는 DLL 중 하나를 생성합니다. 프로젝트는 서로 종속성을 가질 수 있습니다. Visual C++ 환경에서는 프로젝트 내부의 종속성 및 프로젝트 간의 종속성을 모두 확인합니다. 각 프로젝트에는 핵심 소스 코드가 있으며 프로젝트 종류에 따라 프로젝트의 여러 측면을 포함하는 여러 종류의 파일이 있습니다. 어떤 내용이 포함된 파일인지는 파일의 확장명을 통해 식별할 수 있습니다. Visual Studio 개발 환경에서는 파일 확장명을 기반으로, 빌드하는 동안 해당 파일 내용을 어떻게 처리할..
생각보다 많은 분들이 찾아주셔서, 50000 히트 돌파 기념 포스팅 (http://elky.tistory.com/204) 이후 1년여만에 100000히트를 돌파했습니다~! 찾아주신 모든분들께 감사드려요 (__) 워낙 잡다하게 다루고 있다보니 딱히 정체성을 알 수 없는 블로그여서 히트수가 생각보다 많은 것 같네요. 리버싱, 서버 프로그래밍, 문화 생활, 게임 이야기, 서평 등 잡다하게 내키는 대로 쓰는 블로그인데, 아무래도 전문성면에서는 떨어지는게 아닌가 싶은 생각도 드는군요. 어찌됐거나 많은 분들이 찾아주신 점은 늘 감사드리고~ 분야에 따라 블로그나 홈페이지를 나누게 될거 같지만, 엘키의 주절 주절도 많이 사랑해주시면 감사하겠습니다. (__) 지금껏 주절주절 스러운 얘기를 여러가지 사정으로 인해 못해왔으..
- Total
- Today
- Yesterday
- 리버스 엔지니어링
- 루비
- 게임개발포에버
- 디자인 패턴
- perfmon
- Rails
- Ruby on Rails
- EasyExec
- 임백준
- TraceRoute
- c언어
- EzShortcut
- 바로가기 프로그램
- MS-SQL
- 좋은 프로그래머
- 멀티스레드
- 게임데브포에버
- TDD
- CppSQLite
- 엘키
- ruby
- 루비 온 레일즈
- NDC2013
- 조엘 온 소프트웨어
- svn
- RoR
- 디버깅
- ftp
- SDL
- SQLite Spy
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |