본문 바로가기

기타

객체지향의 탄생-용어 정리 덧 ) 이 객체지향의 탄생 원고는 제가 책으로 내려다가 일단 잘 안되었는데요. 이유는 비문이 많다. 단락내 주제가 중복된다. 어떤 상황 설명을 과장한다.등 입니다. 그래도 원고를 일단 블로그에 몽땅 풀어보고 언젠가 제대로 교정해서 다시 도전할 생각입니다. 비문이 많다. 단락내 주제가 중복된다. 어떤 상황 설명을 과장한다. 이점을 감안해서 읽고 객체지향을 이해하는데 도움이 되셨으면 좋겠습니다. 의견도 주셨으면 좋겠습니다. 원고 조금만 교정하면 괜찮을것 같은 출판사 관계자분의 피드백도 환영합니다. 특별한 일 없으면 매주 월수 발행 예정입니다. 책의 고유 속성과 메소드 이 책은 자바, C#의 객체지향 언어의 기초 문법과 기초 개념은 알고 있는 초급 개발자와, 객체지향 개념을 명확하게 이해하고 싶은 중급 개발자.. 더보기
객체지향의 탄생-목차,머리말 덧 ) 이 객체지향의 탄생 원고는 제가 책으로 내려다가 일단 잘 안되었는데요. 이유는 비문이 많다. 단락내 주제가 중복된다. 어떤 상황 설명을 과장한다.등 입니다. 그래도 원고를 일단 블로그에 몽땅 풀어보고 언젠가 제대로 교정해서 다시 도전할 생각입니다. 비문이 많다. 단락내 주제가 중복된다. 어떤 상황 설명을 과장한다. 이점을 감안해서 읽고 객체지향을 이해하는데 도움이 되셨으면 좋겠습니다. 의견도 주셨으면 좋겠습니다. 원고 조금만 교정하면 괜찮을것 같은 출판사 관계자분의 피드백도 환영합니다. 특별한 일 없으면 매주 월수 발행 예정입니다.목차 1. 기본 7 1.1 객체지향의 탄생 7 1.1.1 생각의 탄생 7 1.1.2 객체지향의 탄생 10 1.1.3 객체지향, 삽질을 줄이는 지혜 13 1.1.4 객체지.. 더보기
미드웨이 해전에서 배우는 코드품질의 중요성 밀덕이라는 재밌는 단어가 있다. 밀리터리 마니아란 뜻이다. 남자라면 스포츠도 좋아하고 전자제품도 좋아하지만 군사관련 역사나 무기에 대한 관심도 많을 것이다. 나는 역사를 좋아했다. 역사중에서도 중국사를 좋아했다. 중국사중에서도 삼국지를 좋아했다. 삼국지를 읽지 않은 사람과 얘기를 하지 말라는 말을 믿었다. 사실은 왠지 모를 허전한 느낌이 들었다. 삼국지는 픽션이 섞였고, 화려한 모사들의 작전은 치밀하기 보다는 운이 따라주는것 같고, 아늑한 옛날 일이다. 무엇보다 픽션이 섞인것이 무작정 삼국지를 좋아하기에는 아쉬움이 따랐다. 2차세계대전 역사를 알면 알수록 거대한 스케일과 전장에 입을 다물지 못했다. 2차대전하면 유럽/미국과 독일 히틀러의 싸움을 생각하곤 한다. 그러나 가장 많은 물량전과 가장 많은 사람이.. 더보기
진입장벽이 높다는 것 무언가를 배울때 진입장벽이 높다는 것은 두가지 경우가 있다. 하나는, 배우고자 하는 대상이 조잡하여 배우는 진입장벽도 높고 배운 결과물도 안 좋은 경우이다. 영업력 90 기술력 10프로로 계약을 성사, 어이없게도 SI할때 완성된 솔루션을 공급하는게 아니라 SI 할때 같이 개발을 시작하고 SI 개발자들을 베타테스터로 만드는 엉터리 솔루션을 만드는 업체들의 제품이 여기에 해당한다. 처음부터 조잡하게 설계되어 사용법도 조잡한 경우로 마치 짝퉁 제품들과 같다. 하나는, 배우고자 하는 대상이 고도의 지식과 노하우가 쌓인 고급 지식이라 배우는 진입장벽이 높고 대신 진입장벽을 넘으면 배움의 혜택을 보는 경우이다. 자동차 운전면허와 비행기 조종면허의 차이점의 예를 들 수 있다. 자동차 운전면허는 보통 사람이 적당한 이.. 더보기
수영과 감기 감기는 닌자의 습격과 같다. 은밀하게 접근하여 치명적인 상처를 입힌다. 면역체계가 집을 온전히 지키면 닌자의 습격을 막을수 있다. 면역체계가 허술하면 닌자는 자유롭게 휘젓고 잔인하게 칼질을 한다. 잔인한 칼질에 찬란하게 뿜어내는 핏빛의 흔적처럼, 나에게 감기는 은밀하게 다가왔고, 잔인하게 호흡기 계통을 휘저었고, 기침과 콧물이라는 핏빛 상처와 같은 흔적을 남겨주었다. 내가 기억하는 꼬마때 이후로 가장 잔인한 감기에 걸렸다. 내몸이 망가졌다 라는 표현이 잘맞는 고통이었다. 호흡기 계통이 뒤틀어진것 같았고 내 몸은 39.4도의 열에 비틀거렸다. 지금 감기는 나았지만 기침과 콧물이라는 치우기 힘든 흔적을 남겼다. 이번 내 몸의 습격에 크게 성공한 감기를 잊지 못할것이다. 속이 좁은 나는 감기가 존재하는 생명이.. 더보기
2007년 블로고 스피어에서 일어났던 일 (우토로) 평일 저녁, 어느 특별한 손님과 헤어진후 회사로 들어가면서 2007년때 열심히 했던 무엇인가~가 계속 머릿속에 떠올랐습니다. 저는 2007년도 열성적으로 했던 블로그 활동 대부분의 힘을, 우토로의 동포분을 돕기 위한 블로거들의 온라인 시민운동에 쏟아부었던 적이 있었습니다. 아시는 분은 아시겠지만 2차세계대전 일본군 강제징용으로 끌려간 동포분들이 돌아오지 못하고 일본의 우토로란 지역에 정착하게 되셨는데, 돈을 더 마련하지 못하면 쫓겨나는 위기에 놓여있었습니다. 이런 분을 돕기 위해 블로거들이 열심히 노력 한적이 있었던 거죠. 그때 새벽까지 글을 쓸 정도로 열심히 했지만, 우토로 온라인 활동이 시들어갈때쯤 저는 빠른 속도로 우토로 일을 잊어버렸습니다. 이유는 블로거들이 열심히 한만큼의 성과를 거두지 못한것 .. 더보기
수영, 잠영의 중요성 (세기의 라이벌 펠프스와 록티) 저의 수영에 대한 관심은 유별나서 수영을 하는 것도 좋아하지만, 수영 경기를 보는것도 좋아했습니다. 한때 마니아적으로 수영 동영상 보다보니 수영 경기에 대한 길고 긴 분석기사도 썼었죠. 그 기사에는 이런 칭찬 댓글도 달려서 뿌듯했습니다. "이렇게 정성스레 쓴 글이 있었는지 몰랐네요. 전 수영선수 아이를 둔 관계로 수영에 관심이 아주 많은데도 말이죠. 제가 본 수영에 관한 글 중에서 최고인 것 같아요. 조금 일찍 알았으면 좋았을텐데 이제야 보았습니다. (다음 뷰 메시지)" 저는 수영 경기중에서도 단체 릴레이 경기나 혼영 경기를 좋아합니다. 혼영은 4가지 영법의 멋있음과 우아함을 한번에 감상할수 있어서 좋아합니다. 더구나 혼영은 제가 제일 좋아하는 마이클 펠프스가 잘하는 경기로 펠프스의 모습을 유심히 보다보.. 더보기
스피도 핑거워치 사용기 (생활수영인생 2막~) 제가 블로거로 활동하다보니 다른 블로거의 글들도 많이 읽습니다. 그런데 유명 블로거들 보면 최신 전자제품 과 자전거등의 최신 운동기기 사용기들이 많이 올라옵니다. 그분들의 글을 볼때면 부럽기도 하고 먼 얘기 같은 느낌도 듭니다. 그런데 오늘은 제가 쉽게 가지지 못하는 희소성 있는 첨단 운동기기를 보여드립니다. 저는 수영을 열심히 즐겁게 하고 있습니다. 저는 수영하는 것 뿐만 아니라 수영경기 보는것도 좋아하는데 이번에 박태환 덕분에 원없이 수영경기 봤네요. 제가 한창 수영 동영상보고 수영 열심히 할때 저의 수영 훈련 기준은 지구력을 늘리는 것 이었습니다. 자유형은 1500미터 가야지..접영은 언제 100미터를 가보나..근데 수영 동호회 딱 한번 나갔는데 그분이 그러시더군요. 수영의 고수는 '속도' 로 판가.. 더보기
접영 400미터 돌파 (접영에 대한 애착) 글쓰기 공부할때 많은 도움이 됐던 글쓰기 만보 저자도 수영을 많이 좋아하셨나보다. 책 처음부터 물놀이 자랑을 하신다. 그분은 평영이 제일 좋다고 하셨다. 그러면서 하는 말씀이 남들에게 과시하기 위해 접영을 배울지라도 강을 건널때는 아무짝에도 쓸모 없는 영법이 접영이라고 하셨다. 수영을 음식으로 치면 만능 건강 식품 '우유'와 같다. 수영은 인간 대부분의 근육과 장기를 골고루 강하게 자극하는 '우유'와 같은 만능 운동이다. 그런데 잘 모르는 사실 하나가 있다. 접영은 수영 영법을 위한 만능 건강 식품 '우유'와 같다. 수영이 인간의 건강을 골고루 발달시키는 '우유'와 같다면, 접영은 수영인의 수영실력을 골고루 키워주는 만능 건강 식품 '우유'와 같다는 것이다. 접영을 하면 양 손으로 물질을 하기 때문에 근.. 더보기
캐나다 여행일지 메모, 고유특징, 여행 소감 일단 간략하게 쓰고 나중에 제대로 올릴 예정 + 캐나다의 고유 특징 사실 캐나다 잠깐 생활하면서 틈틈이 특이점을 아이폰에 메모하였으나 실수로 날려버렸다. 그래도 기억나는데로 쓰면.. 캐나다의 남자 화장실에도 아줌마 청소원이 들어온다. 상당히 좋은 호텔 화장실에 갔다가 아줌마 보고 깜짝놀랐다. 길거리에서 침을 뱉지 말것. 문을 열때 뒤에 따라오는 사람이 있으면 에스코트 해준다. 자동차 양보를 잘해준다. 신사 운전자들이 가득하다. 재채기를 하면 꼭 익스큐즈미~ 라고 얘기해야 한다. 그래서 공중질서를 지킨다는 측면에서 최고의 선진국이었다. 캐나다 여성들이 한국 여성들처럼은 꾸미는것 같지 않다. 화장이나 몸매 관리, 옷 스타일 면에서 한국보다는 편하게 다니는것 같다. 여성 버스 운전사, 건설 현장에서 여성 일꾼.. 더보기
캐나다 여행일지 메모, 벤쿠버 일단 간략하게 쓰고 나중에 제대로 올릴 예정. 태양이 따갑다. 태양이 따갑게 날 쏘는 때면 나는 내 까만 얼굴이 더 탈까봐 얼굴을 가리곤 했다. 여기선 얼굴을 가리지 않았다. 태양이 따가운 더운 날씨였으나 불쾌하지 않은 날씨가 신기했다. 멀리선 파란 하늘과 잘 어울리는 약한 블루색 빌딩들이 섰고, 아래는 천연 하얀색 요트들로 가득찼다. 내 주위에는 금발, 은발의 캐나다인들이 내 앞의 평화로운 광경을 보며 대화를 나누고 있다. 이 세상천지 처음보는 이국적이고 멋진 풍경에 압도당하여 나는 약간 긴장했다. 가까운 곳으로부터 감성적이며 파워있는 여 가수의 올드 팝이 부드럽고 은은하게 들렸다. 그 아늑한 음색에 나는 긴장이 저절로 풀렸고 내 까만 얼굴을 태양으로부터 보호해야겠다는 생각도 잊었다. 내 평생 외국 영.. 더보기
캐나다 여행일지 메모, Canadian 일단 간략하게 쓰고 나중에 제대로 올릴 예정. 에드먼튼의 생활은 지루했다. 켈거리, 벤프, 제스퍼, 에드먼튼의 2박3일 여행 루트는 환상적이었지만 에드먼튼은 조금 지루했다. 어느 캐나다인이 놀러왔을때 내가 에드먼튼이 조금 지루하다며 좋은데 좀 추천해달라고 했더니 이 한마디에 모두가 뿜었다. "airport~" 공항 가서 다른곳으로 가라는 것이다. 다른 캐나다인은 내가 가지고간 여행책자에 에드먼튼 안내 페이지가 2페이지나 된다며 익살스럽게 놀라는 시늉을 했다. 이렇게 관광지로서의 에드먼튼은 조금 지루하다. 그러나 내가 벤쿠버, 켈거리를 가봐서 느낀것은, 만약 내가 캐나다에 정착한다면 에드먼튼에서 시작하고 싶다. 그만큼 에드먼튼은 평화롭고 아름다우면서도 큰 쇼핑몰도 있고 생활하기 좋을것 같았다. 내가 큰 맘.. 더보기
캐나다 여행일지 메모, 외국인과의 대화, WEC, 성공한 한국인 일단 대충 글과 사진 올림, 나중 제대로된 기행문을 위한 기록 1. 외국인과의 하루, UFC관람, 굴욕1 2박3일간의 록키 여정을 끝내고 돌아왔다. 엄니랑 동생은 집에가고 나는 마크네 집에서 하루 같이 지내기로 했다. 마크랑 이런저런 이야기를 콩글리쉬로 많이 했다. 특히 마크도 개발자라 관련 얘기를 많이했다. 마크는 MS계열 개발자로 관련 기술을 보여주는데, 비주얼스튜디어2010 정말 좋다. 이클립스보다 좋고 xcode하고는 비슷한 것 같다. 루비앤 레일스와 비슷한 MVC 프레임워크도 구경했다. MS계열 기술도 좋은것 같다. 마크가 xbox 360 게임을 보여주는데 이건 현실인지 영화인지 게임인지 구분이 안간다. 특히 MASS Effect2 인가 하는 게임 최고. 다음날 마크가 UFC 정확히는 미들급 리.. 더보기
캐나다 여행일지 메모, 켈거리 벤프 제스퍼 일단 아이폰으로 대충올림 새벽 한국 아르헨티나 비보를 보고 우울하게 출발. 코스를 보니 켈거리, 벤프국립공원, 제스퍼공원 이박삼일 코스라고 한다. 동생 남자친구 마크차로 엄니 나 넷이 출발했다. 에드먼튼 남쪽 3시간만에 켈거리 도착 비가 왔다. 일단 차이나 레스토랑에서 식사. 특별한 방식으로 식사함. 비가와서 한국의 남산타워라고 하는 켈거리 타워만 구경. 회전하는 레스토랑에서 켈거리 시내 감상. 벤프로 출발. 드디어 록키 산맥 발견. 일반 산들인데 꼭대기는 눈으로 덮였다. 벤프 시내 보고 정말 감동. 집들이 캐나다 자연처럼 아름답다. 인간의 건축물이 자연처럼 아름답게 지어졌다는것에 감동. 묵을 호텔안의 아름다움에 감탄. 무드가 있어 특히 젋은 여성들이 좋아할것 같음. 다음날 드디어 록키산맥 곤돌라 타고 .. 더보기
캐나다 여행일지 메모, 3일째 일단 아이폰으로 대충 올림, 3일째 시차적응이 계속안되 새벽에 잠들었다. 겨우 아침 일어나 씻지도 않고 동생 출근길 따라갔다. 동생을 따라간 이유는 교통수단 이용법을 배우기 위해서다. 돌아와서 정신없이 취침. 두시에 엄니랑 의사당으로 출발. 시차적응 문제로 시간 손실이 심하다. 버스타고 전철로 도착 이국적인 풍경을 즐김. 다음 박물관을 가려고 했으나 알고보니 멀어서 포기 그래도 do you know get here? 하며 행인들에게 많이 물어보는 연습함. 또한 캐나다의 예쁜집 구경 많이함. 어제는 엄니 쫓아가는 어린이 오늘은 혼자서도 버스와 전철을 탈줄아는 초등학생으로 업그레이드 된것같아 기분이 좋았다. 그러나 생각외로 볼거리가 없어 감흥이 없다. 문득 제일 행복했던 제주도 자전거일주를 생각하니 박물관등.. 더보기
캐나다 여행일지 메모, 둘째날 둘째날, 일단 아이폰으로 대충 올림. 시차적응이 안되 잠을 못잤다. 낮 열두시가 되서야 일어났다. 정신차리고 2주 먼저 와계신 엄니 따라 south gate란 쇼핑몰로 걸어갔다. 쇼핑몰로 걸어가는 길에 보이는 집들은 예쁜 주택형에 정원이 딸려있다. 한국에 비하면 엄청 넓은 용적률을 자랑란다. 공간적인 면에서 여유가 넘친다. 에드먼튼이 지방 시골도시 같았는데 사우스게이트 쇼핑몰 규모를 보고 놀람 여기 내가아는 아가씨들이 무척 좋아할것 같다. 쇼핑거리 풍성. 애플샵도 발견 처음 아이패드도 만져보다. 얘기 들은것 보다는 가볍다. 이 쇼핑몰이 한국 백화점과 틀린점은 여러층이 아니라 일이층으로만 구성 대신 엄청 넓다. 엄니 따라 다시 돌아옴. 돌아오는길에 넓은 정원에 예쁜 주택들을 보며 나도 이런집과 차를 얻고 .. 더보기
캐나다 여행일지 메모, 첫째날 아이폰으로 대략 적고 찍은 여행일지 첫째날 캐나다 여행 준비 완료까지 많은 시간이 소요 하나의 대형백에 들어가서 다행. 인천공항 미래스럽고 눈부시게 좋다. 이륙할때 그 느낌처럼 짜릿한 느낌은 드물것이다. 창문밖의 풍경이 아름답다. 비행기가 흔들린다 이 거대한 기계가 먼거리를 평온하게 가는 것이 그저 신기하다. 비행기 안 한없이 지루하다. 착륙전 보이는 벤쿠버의 모습은 거대빌딩의 웅장한 도시가 아니라 아기자기하고 그림같은 모습. 입국심사 통역이 없어 고생함 연습한 문장 거의 못써먹음. 벤쿠버 날씨 밝으나 공기가 참. 어떤 여행이든 여행 도착지까지는 고생이 심함을 느낌. 영어 못하는 답답함 빼고는 이질감을 아직 못느낌 예전에 여동생 지인들을 만나봐서 그런듯. 여기서 월드컵을 볼수 있을까 걱정함. 벤쿠버 공항.. 더보기
조금 더 객체지향적인 개발단계 - 수필 객체지향 옛날 간단한 사다리 게임 짜면서 취미생활 삼아 프로그램을 짜곤 했다. 그때는 단순히 언어 문법에 대한 지식과 로직 구현 능력만 있으면 프로그램을 구현할 수 있다고 생각했다. 그래서 프로그래머를 하면, 내가 하고 재미있어 하는 일 편하게 하면서 일하겠구나 라고 생각하곤 했다. 하지만 막상 프로그래머가 되어 보니, 프로그램 짜는 일은, 정확하게 말해 하나의 프로젝트는, 인간의 사회 생활 갖가지 요소가 동원되어 뭉친 복잡한 실타래와 같았다. 고도의 업무분석 능력, 커뮤니케이션 능력, 일정 관리 능력, 인력 관리 능력이 요구되었다. 어느 고참 개발자의 얘기를 들어보면 고급 관리자가 되면 정치싸움에도 능숙해야 한다고 했다. 나도 실제로 프로젝트를 경험해보니 실제 프로그램 구현 능력도 중요했지만, 업무담당자와의 커.. 더보기
수영은 하늘을 나는 방법이다. 수영 배운지 3개월을 채워가도 나는 물에 뜨지 못했다. 물에서 나의 몸은 불구의 몸이었다. 포기하기 직전 그야말로 갑자기 내몸이 공중부양 했다. 공중부양한 내몸이 앞으로 나아갔다. 겨우 15미터 가는데 성공하고 일어섰더니 폐가 헐떡였다. 나는 감격에 차서 이렇게 말했다. "수영은.. 하늘을 나는 방법이구나." 만약 우리 사는 세상이 무중력 상태가 되고, 공기의 밀도가 물의 밀도와 같다면 우리 사람들은 어떻게 이동할까 생각한적이 있다. 결국 수영 영법의 변형으로 이동할것이라고 생각했다. 지구의 공기가 사람의 스트로크로 잡아채지 못해서 그렇지 만약 공기의 움직임을 사람이 조절할 수 있다면 우리 사람은 마치 수영하듯 하늘을 날 수 있을 것이라 상상했다. 그래서 수영은 사람이 하늘을 나는 방법이다. 수영실력에 .. 더보기
아키텍처와 아키텍트 - 수필 객체지향 아키텍처란 단어는 산처럼 웅장하게 느껴지지만, 산속의 구름처럼 애매모호하다. 다른 객체지향 관련 용어처럼 어려운 용어로 우리를 불편하게 한다. 아키텍처의 시야는 ‘신’과 같다는 단서로부터 출발한다. 신은 위에서 아래를 내려다 보며 사람과 사물을 관찰한다. 그럴듯한 용어로 top-down view 라고 부른다. 아키텍처는 신이 사람사는 세상을 정밀하게 관찰한 결과물과 비슷하다. 아키텍처는 top-down view 관점에서 시스템의 구성 요소와 구성 요소들 사이의 연결관계를 분석한 기술적인 명세서이며 공학적인 청사진이다. 나는 나중에 내가 만들 아키텍처를 훌륭하게 만들기 위해 신의 눈을 갖기를 바랐다. 아키텍트란 단어는 고도의 전문가라는 이미지를 풍기지만, 이름만 화려하지 않을까라는 느낌도 준적이 있다. 이.. 더보기
객체와 컴포넌트 - 수필 객체지향 객체란 실체로 존재하는 대상/개념이며 고유명사이다. 객체는 세상에 유일하게 존재하는 모든 것들~이라고 정의했다. 나는 객체만 알면 되는 줄 알았다. 그런데 컴포넌트란 용어와 기술에 대해서도 알아야 했다. ‘CBD(컴포넌트 기반 개발) 개발 방법론’을 공부할때 나는 컴포넌트와 객체의 차이에 대해 햇갈려 했다. 객체와 컴포넌트에는 비슷한 개념이 들어있다. 오히려 객체와 컴포넌트에 비슷한 개념이 녹아서 햇갈려 했던 것 같다. 하지만 이 둘의 차이점도 명확하다. 컴포넌트의 정의는 독립적으로 배포되는 단위로 조립/교환이 가능한 응집도가 높은 소프트웨어 산출물이라고 한다. 컴포넌트는 좀 더 명확한 물리적인 결과물이다. 컴포넌트가 사람이 눈으로 확인할 수 있는 결과물이라면 객체는 사람이 눈으로 확인할 수 없는 작은 .. 더보기
UML로 객체지향 세계를 그리다. - 수필 객체지향 사람은 소통한다. 살기위해 소통하고 얻기위해 소통한다. 사람들이 얼굴보고 소통할때는 말뿐만 아니라 손짓, 발짓, 표정 그리고 알수 없는 미묘한 감성까지 힙을 합쳐 소통 한다. 그래서 사람들이 얼굴보고 소통할때는 자신이 전하고자 하는 뜻을 대부분 누수없이 전달한다. 그러나 과학 기술 영역에서는 소통의 어긋남이 조금이라도 발생하면 전체가 어긋날 수 있다. 섬세한 기록이 요구되는 과학 기술 영역에서 사람의 언어는 불완전한 소통 수단으로 전락한다. 그래서 과학 기술 영역에서는 사람의 불완전한 언어를 보완할 간결하고 명확한 언어를 쓴다. 수학은 간결함과 명확함으로 상징되는 과학의 언어이다. 수학은 인류의 발전을 우주로 이끌어 올린 로켓 엔진과 같은 힘을 주었다. 사실 수학은 나에게 어려움의 상징이긴 하지만 결국 .. 더보기
상속과 구성 - 수필 객체지향 시골의 아이들은 어렸을때 물가에서 놀면서 형들이 약간만 알려주면, 저절로 헤엄치기를 배운다. 누가 정석으로 가르쳐 준것도 아닌데 잘도 헤엄친다. 상속은 시골 아이들의 야생 헤엄치기와 같다. 객체지향에 대해 약간의 지식만 익히고 사용할 줄 알면 상속을 습관처럼 저절로 쓰기 때문이다. 아이들의 야생 헤엄치기는 물가에서 놀기는 좋다. 그러나 수영 전문가가 볼때는 비효율적인 동작의 조합으로 조잡해 보인다. 만약 아이들이 물가에서 놀기위해 헤엄치기를 한다면 모르지만 좀더 전문적으로 수영을 하고 수영 대회도 나가고 짝사랑하는 영희에게 멋진 폼을 보여줄라면 지금의 헤엄치기는 문제가 있다. 상속은 복잡하지 않은 프로그램에서 대충 사용하기는 좋다. 그러나 객체지향 전문가가 볼때 상속을 무작정 사용하면 비효율적인 코딩이 .. 더보기
상속과 폴리모피즘 - 수필 객체지향 객체지향 대부분의 장점은 상속과 폴리모피즘으로부터 출발한다. C등의 절차지향 개념을 공부한 사람이 처음 상속과 폴리모피즘 개념을 배울때도, 난생 처음 프로그래밍을 배우는 사람도, 상속과 폴리모피즘 개념을 이해하는데 어려움을 표시한다. 그러다가 결국 나는 절차지향이 좋아~하며 다시 익숙한 방식의 프로그래밍으로 돌아가거나, 상속과 폴리모피즘 개념을 이해하지 않은체 객체지향 언어지만 절차지향적으로 프로그래밍을 하곤 한다. 그러나 상속과 폴리모피즘은 마치 대한민국 젊은 남자의 군대생활 처럼 반드시 거쳐야 하고 반드시 이해해야 하는 과정이다. 상속은, 스승과 제자사이와 비슷하다. 스승은 제자에게 자신의 모든 기술을 전수한다. 제자는 스승의 기술을 고스란히 체득한다. 또는 스승의 기술을 완전히 습득하기 전까지는 스.. 더보기
캡슐화와 정보은닉 - 수필 객체지향 캡슐화란 용어는 용어의 뜻을 이해하는것도 두루뭉실하지만 그 쓰임새도 애매모호하다. 나는 몇년 경력이 되어서도 캡슐화란, 객체의 속성을 private로 만들어 이것을 get/set 메소드로 호출하는 방법으로만 이해했다. 그런데 저 객체지향 캡슐화 이론과는 다르게 실제 프로그래밍에서는 객체의 속성을 public으로 만들어 직접 호출하는것과의 차이점을 느끼지 못했다. 오히려 private로 선언하면 클라이언트에서 저 속성을 가져올때 get/set을 쓰느라 코드 보기가 더 지저분해서 좋게 생각하지 않았다. [삽화] 캡슐화는 객체지향 개발의 중요한 장점중에 하나이지만, 나는 상속과 구성 폴리모피즘의 장점은 이해하면서 유독 캡슐화의 장점을 이해하지 못했다. 캡슐화의 정의와 캡슐화가 왜 좋은지 따로 공부해야 했다. .. 더보기
오버로딩과 오버라이딩 - 수필 객체지향 오버로딩은 마치 맥가이버칼의 부속품과 같다. 같은 몸통(메소드 이름)에서 꺼내는 위치만 바꾸면(인자값) 다양한 기능이 발견된다. 오버로딩은 같은 이름의 메소드의 인자값(=시그네처)를 다르게 주어 개별적으로 개발자 입맛에 맞게 호출할 수 있는 방법이다. 내 경험으로 오버로딩은 생성자 호출에서 특히 많이 쓰인다. 처음 객체를 생성할때 오버로딩된 다양한 생성자들의 용도를 파악하여, 써야 되는 상황에 알맞게 해당 객체를 사용할 수 있다. - 생성자 오버로딩 예제-병아리 부화 클래스 public static void main( String[] args ) throws Exception { ….. Chick chick1 = new Chick(); // 1 Chick chick2 = new Chick(“먹이”); /.. 더보기
인터페이스 - 수필 객체지향 인터페이스(Interface)는 산의 맑은 공기와 같다. 등산할때는 항상 맑은 공기를 마실 수 있지만, 맑은 공기의 고마움은 쉽게 인식하지 못한다. 등산을 마치고 도시속에 찌든 공기를 마시고 기침을 콜록일 때서야 그 고마움을 깨닫곤 한다. 인터페이스는 바다의 해삼과 같다. 해삼은 인간에게 가장 이로운 영양을 주는 해산물로, 해녀가 깊은 바닷속에 잠수해야 겨우 몇마리 건져올리는 해산물이다. 인터페이스는 산의 맑은 공기처럼 늘 객체지향 개발자와 함께 하는 존재이며, 무의식중에 쓰이는 존재이지만, 인터페이스의 고마움을 쉽게 인식하지 못한다. 개발을 마치고 어지럽기만한 코드를 디버깅 하다가 인터페이스 형식으로 리팩토링 해서야 그 고마움을 깨닫곤 한다. 인터페이스는 바다의 해삼처럼 객체지향 요소 중에서 개발자에게.. 더보기
객체지향을 이롭게 하는 5가지 특징, 수필 객체지향 + 객체지향 생태계 우리는 객체지향 자연 속에 있다. 객체는 나무이며 애플리케이션은 숲이다. 낮은 해충(결합도)과 높은 영양(응집도)으로 유명한 객체지향 지역에 나무를 심고 울창한 숲을 기대한다. 땅은 객체지향 그 자체이다. 클래스 씨앗을 땅에 심는다. 씨앗이 생성자 통해 발아되어 객체가 되었다. 나무의 형태가 갖춰졌다. 속성은 줄기와 같다. 속성은 나무를 지탱하고 그 존재를 지키고 세상에 알리는 나무의 중심이다. 메소드는 가지와 잎과 꽃과 열매와 같다. 울창한 가지와 잎으로서 나무 자신과 산과 지구와 생물을 지켜주면서 자신의 존재를 뽐낸다. 이 나무들이 모이고 커져서 모든 생물을 이롭게 하는 거대하고 우람한 숲이 될 것이었다. 객체는 나무와 같아야하고 어플리케이션은 숲과 같아야 한다. + 객체지향을 이.. 더보기
속성, 메소드, 생성자 - 수필객체지향 + 속성 속성을 찾는 일은, 보이지는 않지만 생물이 생존하는데 꼭 필요한 적혈구등의 요소를 현미경으로 관찰하는 생물학자와 같아야 한다. 속성은 객체 고유의 특징을 정의 할 수 있는 단어로 드러낸 것이다. 예를 들어 자동차에는 ‘움직일때의 빠르기’라는 속성을 속에 품고 있다. 만약 자동차를 객체로 모델링 한다면 기본적으로 ‘움직일때의 빠르기’라는 속성이 스며들어 있기 때문에 이 속성을 정의 할 수 있는 단어로 밖으로 드러내야 할 것이다. ‘움직일때의 빠르기’는 ‘속도’ 라는 단어로 정의 된다. 그래서 자동차 객체 모델링을 통해 ‘속도’라는 속성이 문서나 프로그램을 통해 드러나게 될 것이다. 객체의 속성을 찾는 일은 객체 안에 숨겨진 고유 특징을 찾아내는 일이기 때문에, 그 객체에 대해 잘 알고 있어야 한다.. 더보기
책쓰기 중간 결과물 일단 블로그에 최대한 올리기로 제 블로그 오랜 구독자시라면 제가 작년 봄,여름에 객체지향을 주제로 책쓰기를 열심히 했다는 것을 아실 겁니다. 사실 한창 열심히 했을때 고무적이었습니다. 출판사에서 연락도 오고 미팅도 가졌습니다. 보이지 않는 실체였던 내 상상속의 책이 실제로 출판될것 같았죠. 그러나 블로그가 아마추어적이라면 책은 투자 및 돈이라는 요소가 들어가기 때문에 그야말로 프로의 집필 능력을 보여줘야 했습니다. 사실 책집필의 난이도 보다는 취직 후 '열혈 글쓰기 정신'이 사라진것이 문제였습니다. 투잡의 정신으로 계속 책쓰기를 해야 하는데 퇴근만 하면 만사 귀찮아 자기 바쁩니다. 그동안 계속 책쓰기를 이어가야 겠다는 생각은 하는데 실천이 잘 되지 않고 있습니다. 하지만 작년 초여름 그렇게 열심히 한 결과물을 묻혀두기에는 아깝다는 생.. 더보기