본문 바로가기

Essay22

문자 인코딩 방식 언어의 지역화란? 프로그래머가 반드시 알아야 하는 것이 언어의 지역화입니다. 한국어를 사용하는 게임을 미국에 출시하려면 NPC의 대사나 퀘스트, 케릭터 이름, 심지어 게임 무비의 대사까지도 영어가 되어야 합니다. 반대로 미국에서 출시한 게임을 한국에 출시하기 위해선 모든 영어를 한국어로 바꾸어야 하죠. 컴퓨터에서 영어(알파벳)를 표현하는 방법 컴퓨터는 숫자 밖에 알지 못합니다. 0~9까지 알기도 함들어서 0과 1밖에 알지 못합니다. 하지만 어떻게 우리 모니터 화면에는 0~9가, ‘ABC..’ ‘abc..’ 등등의 알파벳들이 떡하니 있는 걸까요? 다음과 같이 0,1로 된 숫자 세트를 문자와 연결시키면 되겠죠. 0000 = 0 0001 = 1 0010 = 2 0011 = 3 … 그 뿐만 아니라 다음과 같이 .. 2012. 1. 16.
계란, 그 생명의 가능성에 대하여 일을 재빨리 마치고 집에서 인터넷을 깨작 거리고 있었습니다. 어느덧 시계를 보니 9시. 저녁도 안먹었는데… 미니 전기 밥통의 버튼을 툭 튕겨 밥이 있나 보았지만 세 술갈도 없었습니다. 이럴 때면 항상 찾게 되는 편리한 친구가 있지요. 바로 라면입니다. 군침을 입에 물고 제빨리 가스렌지에 물을 올렸습니다. 당신도 그런가요? 저의 라면에는 계란이 빠지지 않습니다. 스프를 탈탈 털고 면을 넣은 후 계란을 판에서 조심스럽게 꺼냅니다. 탁 쳐서 금을 낸 후 라면 위로 투척합니다. 보글보글 라면 속으로 풍덩 들어갑니다. 계란은 모양이 어쩜 그렇게 이쁜 타원인지 모르겠습니다. 얼마나 이쁘냐면 얼굴형 중에서도 최고가 계란형입니다. 건강에도 좋습니다. 몇년 전만 해도 계란을 우유와 함께 완전식품이라고도 했습니다. 노른자.. 2012. 1. 13.
오브젝트(객체)에 대해서 오브젝트(Object)의 반대말로 서브젝트(Subject)가 있다. 서브젝트는 주체란 뜻이고, 오브젝트는 객체란 뜻이다. 주는 주인 주 자이고 객은 손님 객 자이다. 쉬운 말로 하면 서브젝트는 '나'이고 오브젝트는 '나를 제외한, 나의 관념으로 들어온 손님이다. 연필도 객체고 책도 객체고 친구도 객체고 거울도 객체다. 나를 제외한 내가 인식하는 모든 것은 객체이다. 지금은 객체지향 프로그래밍의 시대다. 객체지향 프로그래밍은 객체를 중심으로 프로그래밍한다는 뜻이다. 객체지향 프로그래밍의 시대가 오기 전에는 절차지향 프로그래밍의 시대였다. 어떤 일을 특정한 순서대로 처리해 나간다. 절차지향 프로그래밍은 함수 중심의 프로그래밍 패러다임이고 객체지향 프로그래밍은 객체 중심의, 즉 클래스 중심의 프로그래밍 패러다.. 2011. 9. 5.
로그는 언제 어떻게 남기는 것일까 처음으로 서버 프로그래밍을 할 때, 가장 낯선 개념 중 하나가 로그였다. 로그를 남기는 이유는 막연하게나마 알 것 같은데 언제, 어떻게 남겨야 할지는 허공의 구름을 잡는 듯한 느낌이었다. 뭔가 잡히는 것 같은데 안 잡히는… 그래서 새로운 콘텐츠를 담당하게 되었을 때, 로그를 제대로 남기어보고 싶어서 그에 대한 고민을 해 보았다. 로그를 도대체 왜 남길까? 그 이유는 간단하다. 로그는 표시다. 로그는 표시를 하기 위해서 남긴다. 그렇다면 왜 표시를 하냐. 바로 표시된 부분을 알기 위해서이다. 왜 표시된 부분을 알아야 하냐. 그것이 로직의 흐름이나, 문제점이나, 오작동여부를 확인하는 데 도움을 주기 때문이다. 그렇다. 로그를 남기는 이유는 로직이 의도된 바로 흐르는지, 내 코드의 문제나 내 코드를 잘못 사용.. 2011. 9. 4.
게임 개발 중 프로그래머와 기획자의 협업 한 MMORPG게임의 개발에 참여할 때였다. 기획자와 프로그래머의 협의 과정에 대한 사뭇 진지한 논쟁이 벌어졌다. 기획자의 기획이 프로그래머에 의해 구현되기까지의 협의 과정이 논의주제였다. 이 논의를 통해서 얻은 것은 기획자와 프로그래머가 서로의 역할을 침범해서는 안 된다는 것이다. 제안은 할 수 있고 질문에 호의를 베푼 대답은 줄 수 있지만, 프로그래머가 기획 시스템에 지나치게 관여를 한다든지 하는 것은 위험하다. 왜냐하면 프로그래머가 기획의 책임과 업무량까지 가져갈 수 있기 때문이다. 그러면 프로그래머로써 불필요한 고민의 시간을 갖게 되며 그것은 구현의 시간을 잡아먹게 된다. 개인이 일정을 관리할 수 있다면 좋은 것이지만 그렇지 않다면 나의 역할이 아닌 것을 위해 내 역할을 소홀히 하게 되는 과오를 .. 2011. 9. 4.
감정과 이성, 자극과 반응 비감정적인 것과 무감정적인 것은 다르다. 비감정적인 것은 감정을 느끼지만 그것에 치우치지 않고 이성적인 판단을 하는 것을 말하고, 무감정적인 것은 아예 심리적으로 감정을 느끼지 않는 것이다. 비감정적인 것은 이성적인 것이다. 때때로 감정은 매우 불필요한 것으로 보인다. 충동적으로 화를 내거나, 먹고 싶은 것을 참지 못하고 먹거나, 두려움에 선택을 내리지 못하고 우왕좌왕하거나, 내 잘못으로 다툰 친구에게 선뜻 사과를 하지 못할 때, 우린 우리의 감정을 탓하고 원망하게 된다. 하지만 이러한 감정이 있기에 우린 진보를 꿈꾸고 사랑을 원하며 시련을 이겨내고 앞으로 전진해 나간다. 무미건조한 인생을 풍요롭고 아름답고 재미있게 하는 것이 바로 감정이다. 또한 불필요해 보이는 감정은 대개 자극에 대해 무의식적으로 반.. 2011. 9. 3.