본문 바로가기

Essay/Programming5

문자 인코딩 방식 언어의 지역화란? 프로그래머가 반드시 알아야 하는 것이 언어의 지역화입니다. 한국어를 사용하는 게임을 미국에 출시하려면 NPC의 대사나 퀘스트, 케릭터 이름, 심지어 게임 무비의 대사까지도 영어가 되어야 합니다. 반대로 미국에서 출시한 게임을 한국에 출시하기 위해선 모든 영어를 한국어로 바꾸어야 하죠. 컴퓨터에서 영어(알파벳)를 표현하는 방법 컴퓨터는 숫자 밖에 알지 못합니다. 0~9까지 알기도 함들어서 0과 1밖에 알지 못합니다. 하지만 어떻게 우리 모니터 화면에는 0~9가, ‘ABC..’ ‘abc..’ 등등의 알파벳들이 떡하니 있는 걸까요? 다음과 같이 0,1로 된 숫자 세트를 문자와 연결시키면 되겠죠. 0000 = 0 0001 = 1 0010 = 2 0011 = 3 … 그 뿐만 아니라 다음과 같이 .. 2012. 1. 16.
오브젝트(객체)에 대해서 오브젝트(Object)의 반대말로 서브젝트(Subject)가 있다. 서브젝트는 주체란 뜻이고, 오브젝트는 객체란 뜻이다. 주는 주인 주 자이고 객은 손님 객 자이다. 쉬운 말로 하면 서브젝트는 '나'이고 오브젝트는 '나를 제외한, 나의 관념으로 들어온 손님이다. 연필도 객체고 책도 객체고 친구도 객체고 거울도 객체다. 나를 제외한 내가 인식하는 모든 것은 객체이다. 지금은 객체지향 프로그래밍의 시대다. 객체지향 프로그래밍은 객체를 중심으로 프로그래밍한다는 뜻이다. 객체지향 프로그래밍의 시대가 오기 전에는 절차지향 프로그래밍의 시대였다. 어떤 일을 특정한 순서대로 처리해 나간다. 절차지향 프로그래밍은 함수 중심의 프로그래밍 패러다임이고 객체지향 프로그래밍은 객체 중심의, 즉 클래스 중심의 프로그래밍 패러다.. 2011. 9. 5.
로그는 언제 어떻게 남기는 것일까 처음으로 서버 프로그래밍을 할 때, 가장 낯선 개념 중 하나가 로그였다. 로그를 남기는 이유는 막연하게나마 알 것 같은데 언제, 어떻게 남겨야 할지는 허공의 구름을 잡는 듯한 느낌이었다. 뭔가 잡히는 것 같은데 안 잡히는… 그래서 새로운 콘텐츠를 담당하게 되었을 때, 로그를 제대로 남기어보고 싶어서 그에 대한 고민을 해 보았다. 로그를 도대체 왜 남길까? 그 이유는 간단하다. 로그는 표시다. 로그는 표시를 하기 위해서 남긴다. 그렇다면 왜 표시를 하냐. 바로 표시된 부분을 알기 위해서이다. 왜 표시된 부분을 알아야 하냐. 그것이 로직의 흐름이나, 문제점이나, 오작동여부를 확인하는 데 도움을 주기 때문이다. 그렇다. 로그를 남기는 이유는 로직이 의도된 바로 흐르는지, 내 코드의 문제나 내 코드를 잘못 사용.. 2011. 9. 4.
게임 개발 중 프로그래머와 기획자의 협업 한 MMORPG게임의 개발에 참여할 때였다. 기획자와 프로그래머의 협의 과정에 대한 사뭇 진지한 논쟁이 벌어졌다. 기획자의 기획이 프로그래머에 의해 구현되기까지의 협의 과정이 논의주제였다. 이 논의를 통해서 얻은 것은 기획자와 프로그래머가 서로의 역할을 침범해서는 안 된다는 것이다. 제안은 할 수 있고 질문에 호의를 베푼 대답은 줄 수 있지만, 프로그래머가 기획 시스템에 지나치게 관여를 한다든지 하는 것은 위험하다. 왜냐하면 프로그래머가 기획의 책임과 업무량까지 가져갈 수 있기 때문이다. 그러면 프로그래머로써 불필요한 고민의 시간을 갖게 되며 그것은 구현의 시간을 잡아먹게 된다. 개인이 일정을 관리할 수 있다면 좋은 것이지만 그렇지 않다면 나의 역할이 아닌 것을 위해 내 역할을 소홀히 하게 되는 과오를 .. 2011. 9. 4.
컴퓨터의 역사 왜 역사인가? 컴퓨터와 땔래야 땔 수 없는 관계를 가진 나로써, 내가 그것에 대해 너무 모르고 있진 않나 하는 생각이 들었다. 어떤 모호한 프로그래밍 개념에 대해 꼬리를 물고 물다 컴퓨터가 무엇이냐에 대한 질문에 도달했을 때 난 "그게 뭐였지..?"하며 머리를 긁고 있었기 때문이다. 과거에 여러 컴퓨터 관련 시험에 응시하면서 주입식으로 관련된 지식들을 줄줄이 외운적은 있었지만, 주입식은 주입식. 시험 후 줄줄이 출혈됐나 보다. 주입식 학습 방식의 폐해를 다시 한 번 체감한다. 어쨌든 프로그래밍 전문가를 꿈꾸는 나였다. 따라서 프로그래밍 공간이 펼쳐지는 컴퓨터에 대해서만큼은 명확한 답을 갖고 싶었다. 그래서 컴퓨터 탄생의 시초부터 오늘날의 컴퓨터까지의 흐름을 짚어주는 역사부터, 찬찬히 훑어보기로 했다. 그.. 2011. 6. 29.