본문 바로가기

OOP 의 원칙들 (Object-Orientied Programming Principles) OO 언어가 절차(Procedual) 언어와 다른 이유는 모듈성(Modularity)을 전면으로 내세웠느냐 아니냐의 차이라고 본다. 보통은 이 모듈의 최소 단위로 클래스(Class) 를 이야기 한다. 따라서, 클래스가 얼마만큼 잘 만들어지느냐, 그리고 그로 인해 클래스의 묶음체인 패키지(Package)혹은 컴포넌트(component)가 정제되어 있느냐가 OO 프로그램의 질(quality)을 판가름 한다. 이 퀄러티를 평가하고 유지하는 데에 있어서 기준이 되는 원칙이 몇 개 있는데, 그걸 OO 원칙(OO Principle) 이라고 부른다. 그럼, OO 원칙에는 어떤 것들이 있는지 살펴보도록 하자. OOP 4대 기본 원칙 (Object Oriented Programming Basic Principle) 추상.. 더보기
자바기술 지원 표준 (Java Endorsed Standards) 자바에 포함되어 있는 기술인데, 1. 자바 표준 협의체인 JCP( Java Community Process )에서 정한 기술이 아닌 경우, 혹은 2. 해당 기술이 신기술인지라 새롭게 업데이트 되었을때에 플렛폼에 해당하는 기술로 업데이트가 필요가 생길 수 있는 기술일 경우 JAVA 에서는 두 가지 케이스를 각각 1. 자바기술 지원 표준 (Java Endorsed Standards) 과 2. 독립형 기술 (Standalone Technologies) 이라고 부른다. 그리고 이런 기술들의 변화를 빠르게 지원하기 위해, 해당 기술을 새롭게 구현한 내용(클래스나 인터페이스를 구현한 내용 )으로 덮어씌울 수 있도록 여지를 남겨 두었다. 이걸 Endorsed Standards Override Mechanism (지원.. 더보기
생일 역설 (Birthday Paradox) 누구를 만났는데, 공교롭게도 생일이 같은 사람인 경우가 있습니다. 참, 신기합니다. 전, 생일이 특이한데 1월1일 입니다. 그리고 저랑 생일이 같은 사람을 1명 알고 있습니다. 여자분인데, 처음에 생일이 서로 같은걸 알고는 '아! 운명인가 보다!' 라는 생각은 안했습니다.. (..뭔소린지?-_-) 처음엔 굉장히 신기했는데, 생각해 보면 1년은 365일인지라 쉽게 생가각해서 우리나라 인구를 천 만명쯤 확 줄여서 3650만명이라고 보면, 생일 같은 사람이 대략 10만명은 있는건데요, 이러면 좀 느낌이 다르죠. 어쨌든, 그래도 생일이 같은 사람을 주변에서 보는건 흔한 건 아닌것 같습니다. 확률을 따져 보겠습니다. 제 옆에 한 사람이 있습니다. 그럼 저랑 생일이 같을 확률은 1/365 입니다. 다시 말해 365.. 더보기
간편한 Subversion server 툴 visualsvn server 팀내에서 간소히 사용할 SCM 툴로 subversion 을 물망에 놓고 tigris.org 사이트에서 다운 받으려고 보니, 아래와 같은 VisualSVN server 라는 툴이 링크중에 있더군요. 놀랍게도 apache + subversion server + 관리콘솔 까지 한 방에 해결되더군요. https 도 지원하고, 게다가 사용법은 얼마나 쉽던지요. http://www.visualsvn.com/ 그리고 무료입니다. 그런데 클라이언트들(subclipse, tortoise)과 연동 테스트를 마쳐보고, 신나서 팀 서버에 설치하려고 보니 설치가 안되더군요. 이유는? 서버가 windows 2000 server 버전인겁니다. 위 툴은 2003부터 지원... -_-;; 인스톨시작전에 체크해서 설치를 막아버립니다. .. 더보기
약장사? 책장사? 오늘 한 일. --> 약(=책) 팔았음. (-,-);;; 속으로 좀 찔리고 있음. (???) ... .. 아래 글은 사내 팀 게시판에 올린 글로 팀원들 책 읽게 하기 위함이 목적인지라, 책 소개에 다소 약(...)을 쳤습니다. 따라서 부분에 따라 실제 책 내용이 소개(...)와 다를 수도 있음을 미리 밝힙니다. 참고로, 이미지 출처는 강컴입니다. ------------------------------------------------------ 안녕하세요? 도서 담당입니다. 아래와 같은 도서를 구매할 예정입니다. 총 5 권 입니다. 단순 기술서는 배제하였습니다. 그럼, 좋은 책과 함께, 충전의 시간을 가지셨으면 합니다. [요구사항 관련] 사용자 스토리: 고객 중심의 요구사항 기법 전반적인 주제는 '소프트웨.. 더보기
개인적인 편견 하나 IT 업계에서 만 지내다 보니 다른 업계는 어떨지 모르겠자만, 어쨌든 개인적으로 갖고 있는 편견 중 하나인... 회의를 많이(혹은 오래) 하는 관리자의 특징! - 회의 주제에 대한 소신이나 자신이 없다. - 회의를 통해 해당 주제를 배우려는 경향이 있다. - 단어 자체와 대화의 논리력에 집중한다. - 권한 위임은 최소화 하고 책임 위임은 최대화 한다. - 즉흥적인 아이디어가 많다. - 가능성보다 결함에 대해 이야기한다. - 결론을 쉽게 내지 않는다. - 바쁘거나 한가한 이유는 회의가 많거나 적어서이다. - '브레인 스토밍'이라는 말을 좋아한다. - '기술'은 중요한 게 아니라고 믿는다. . . . 뭐, 다 장단점은 있는거겠죠? 더보기
썬테크 블로그는 "테크 블로그" 인가? 어디에 있긴 있는데 내가 잘 모르걸 수도 있지만, 어쨌든 외국 사이트에서만 보던, 특정 주제에 대해 다양한 시각을 보여주는 메타블로그를 우리나라 버전으론 아직 못 봤었다. 그 와중에 한국 썬에서 테크 블로그(http://www.sdnkorea.com) 라는 것을 만들었다는 것에 나름 기대를 했었다. 하지만, 현재 모습은 어떠한가? 썬테크 블로그는 "테크 블로그" 인가? 아니면, 그저 여러명의 블로거들의 글이 포스팅 되는 단순 RSS 리더인가? 현재 썬테크 블로그엔 그냥 개개인 신변잡기들의 내용이 우후죽순으로 올라오고 있다. 심지어는 글도 없는 단지 "썬블로그 가입" 만 들어있는 글까지... 썬의 의도가 무언지 모르겠다. 혹시 내가 잘못 생각하고 있었던 건지도 모르겠다. ..... 몇 개 더 캡쳐했다가 혹.. 더보기
Maven + m2eclipse 설치 하기 Maven + m2eclipse 설치 하기 Maven 설치하기 메이븐 사이트(maven.apache.org) 접속 압축파일을 적당한 폴더에 푼다. PATH에 환경 변수로 JAVA_HOME과 M2_HOME 을 잡아준다. 그 다음엔 PATH 에 %M2_HOME%\bin 을 추가 cmd 창에서 mvn -version 을 통해 확인한다. 이제 테스트 프로젝트를 한 번 만들어 보자. 적당한 디렉터리로 이동. (참고로 전 d:\development 로 이동했습니다) http://maven.apache.org/guides/mini/guide-creating-archetypes.html 프로젝트 생성 명령어의 축약형은 위와 같습니다. 전, 제 마음대로 아래와 같이 타이핑 하였습니다. mvn archetype:creat.. 더보기
Maven 학습 중 Maven 이라는 툴에 대해서 보고 있다. 징글징글하게 많은 툴과 라이브러리들이 난무하는 자바진영에서 그래도 어느정도 영향력을 발휘하고 있는 Tool 인 것 같아, 보게 되었다. 아직 학습중이지만, 뭐하는데 쓰는 거냐? 에 대해 간략히 이야기 한다면 build tool + project management tool 라고 할 수 있겠다. Project Management Tool 이라고 하니까 뭔가 대단해 보일 수 도 있지만, Focus 는 소스와 라이브러리 관리 + 단위테스트에 한정되어 있다. 프로젝트 소스를 Main 소스, Rsource, Test 의 3가지 커다란 카테고리로 나누고, 소스 빌드에 필요한 의존성이 있는 라이브러리들을 관린해 준다. 그 핵심에는 POM(Project Object Model.. 더보기
이상한 경쟁 이상한 경쟁. * 고등학생이라고 가정하고 읽습니다 * 공부하다보면 우연히 혹은 노력으로 알게 되는 내용이 있다. 그리고 왠지 시험에 나올 것 같은데, 옆 짝꿍, 혹은 나와 경쟁관계에 있는 녀석은 '이걸 알까?' 싶은 내용일 때가 있다. 그러면 어떻게 하나? 대부분이 취하는 방법은 혼자만 알고 끝내는거다. 그런데 그 방식에는 중요한 것이 빠져있다. 옆 짝꿍과 경쟁하는데 경쟁의 목적이 반에서 1등이라면 말이 된다. 하지만, 그게 전국의 고3들과 경쟁하는 수능이라면 참 우스운 거다. 우선 내가 아는 지식이 정말 맞는지에 대한 최소한의 검증도 어렵고, 혹은 그것보다 더 나은 방법을 상대방, 혹은 반에 누군가가 알고 있을 수도 있기 때문이다. 거의 쉽지는 않겠지만, 반에서 1등과 2등, 그리고 혹은 그 외 등수들.. 더보기