[flower] 도형을 복사 하는데 굉장히 비효율적으로 동작하고 있었네요..
도형 객체를 복사하는 루틴을 "prototype pattern"을 적용하고 있는데, 원래 복사 하는 코드에 비효율적인 부분이 있었습니다. DFigure라고 하는 추상 클래스는 화살표가 아닌 도형을 나타내는데요.. (단말, 처리, 분기도형 등등이 이에 해당합니다.) 여기에는 이 도형이 화살표로 연결되었을 경우 연결된 도형을 알고 있습니다. 또한, 자신에게 들어오거나, 자신으로 부터 나가는 화살표도 알고 있습니다.(알고 있 다는 표현을 한 이유는 정확하게 composition인지, aggregation인지하는 개념에 아 직 익숙하지 않아서 입니다.) 그런데 복사를 할때 자신 도형에 연결된 도형은 복사 하지 않아야 합니다. 그 이유는 그렇게 하기로 정했기 때문이죠..(다른 비슷한 프로그램들도 그렇게 하더 군..
2010.01.19
no image
Netbeans에서 assert 구문을 사용하기
Flower프로젝트를 마무리하고 개인적으로 리펙토링을 진행하고 있습니다.(코드를 작성하면서 해야 하지만.. 그래도 안하는 것 보단 낫다고 생각해서 하고 있습니다.) 오늘은 prototype patter을 이용하여 clone함수를 구현하기 위해 생성자를 추가 하였습니다. 여기에 assert구문을 넣어 주고 싶어서 넣었는데 netbeans에서는 assert를 바로 지원하지는 않더군요.. assert는 jdk 1.4이후부터 지원이 되었다고 하기 때문에 하위 호환성을 유지 하기 위해 실행 할때 옵션을 통해 사용여부를 지정해야 하더라구요.. 그에 대한 것은 알게 되었는데(구글링하면 쉽게 나옵니다.) 정작 netbeans에서 쓰려고 하니까 어떻게 해야 할 지 한참 찾았습니다. 프로젝트 속성에 들어가서 Run이라는 ..
2010.01.18
no image
[책이야기] 패턴 그리고 객체지향적 코딩의 법칙
작년 2학기 디자인 패턴 관련된 수업을 들으면서 설계에 대한 생각을 많이 하게 되었습니다. 그래서 지금까지도 그와 관련되서 관심이 많고, 또 공부도 해보고 싶은 생각입니다. 하지만 다른 것도 해야 하는 것이 많아서 GOF의 책을 보기에는 부담이 되더라구요.. 그리고 개략적인 내용은 알고 있어서 시간이 아깝기도 했습니다. 그래서 무심고 얇고 쉽게 읽을 수 있을 것 같아 보여서 선택한 책이 이 책인데요... 굉장히 내용이 괜찮은 것 같습니다. 구체적인 예와 그에 따른 정리가 잘 되어 있어서 쉽게 이해 할 수 있는 것 같네요.. 특히, 추상팩토리와 팩토리 패턴의 차이점을 알게 되었는 것이 참 좋았습니다.ㅋ 평소에 둘 간의 차이를 잘 몰랐었는데 이책의 예제가 그 둘의 차이점을 아는데 많은 도움이 되었습니다.
2010.01.11
[Java] jar파일에 이미지를 넣을때 주의 하세요..
오늘 프로젝트를 정리 하면서 이미지를 jar안에 넣는 작업을 했습니다. netbeans에서 프로젝트를 하고 있었으므로 jar파일 만드는 것은 알아서 해주지만, 이미지를 넣기 위해서 .class파일들이 모여 있는 곳에 이미지를 옮기고 코드를 수정했습니다. 하지만!!! 동작을 하지 않는 것입니다.. jar파일에 있는 리소스를 가져 오기 위해서 ClassLoader의 getResource 메소드를 사용해야 합니다. 기존에 직접 파일의 경로로 가서 파일을 직접 읽어 왔던 코드를 jar파일에 있는 것을 classloader를 통해 읽어 오는 코드로 변경했는데 동작을 하지 않아서 고생을 하고 원인을 찾아 해매 두시간을 헤매고 있었습니다. 결국 일일이 어디서 문제가 있는지 디버깅 코드를 넣어 가면서 테스트를 하는데 ..
2010.01.05
[Flower] Demo video
This is demo videos. If you cannot watch the video clearly, please download the demo files and play it.
2010.01.04
[C++이야기] Pointers and Contants
우리가 보통 포인터를 사용할때는 두가지가 관계가 있다. 하나는, 포인터 자신이고, 다른 하나는 포인팅 되는 오브젝트 이다. 그럼 포인터에 const키워드를 붙이면 어느 것이 상수화 될까? 답은 const키 워드를 붙이는 위치에 따라서 결정되는 것이다. 기준은 * 이다. *앞에 const키워드를 붙이면(prefixing) 포인팅 되는 오브젝트가 상수화 되는 것이고, * 뒤에 const키워드를 붙이면(postfixing) 포인터가 상수화 되는 것이다. 예를 들어보도록 한다. void f1(char* p){ char s[] = "Gorm"; const char* pc = s; //pointer to constant pc[3] = 'g'; // error: pc points to constant pc = p; ..
2010.01.03
no image
[무적의 솔로부대] 첫 버전이 나왔습니다.
어찌 어찌 해서 무적의 솔로부대를 완료 했습니다. 총 2개의 스테이지가 제공 되고 있습니다. 
2009.12.31
[책이야기] Head first Html & Css 다 읽었습니다.
확실히!! HTML이 무엇인지 알게 되었습니다. 그렇다고 HTML의 고수가 된건 아닙니다. head first 시리즈가 좋은 이유는 기본 개념을 잘 정리 할 수 있게 도와 주는 것 같습니다. 구현할때 필요한 레퍼런스로는 부족하지만 초보자가 특정 주제에 대한 컨셉을 잡는데는 충분한 책인 것 같습니다. 다음으로 php, jsp를 고민하고 있는데 php는 새로 접하는 것이고, jsp는 잠깐 해봤고, 자바기반이라 익숙할 것 같네요..ㅋ 아무튼 년말에 책을 딱 마춰서 끝내서 기분이 좋습니다... 그런데...html은 배웠는데 홈페이지는 어떻게 만들지...ㅠㅠ 홈페이지에 무얼 만들지 생각을 안해놔서 .. .막막하네요..ㅋㅋ
2009.12.31
[Flower]코드리뷰를 했습니다.와우~~
코드리뷰를 오늘 했네요.. 운영자형에게 시연을 하는데 사소한 버그가 있어서 부끄러웠지만 큰 문제 없이 코드리뷰는 진행되었고, 나름 잘된 것 같습니다. 원래는 팀원 각자가 자신의 코드를 보여주고 시연을 해야 하는데, GUI파트를 담당한 제가 어찌하다보니까 다 해버리게 되었네요..ㅋㅋ 과제 완료는 계획보다 늦어졌지만, 프로젝트 일정 자체는 일정되로 진행 되어서 만족하고 있습니다. 마무리하는 차원에서 완료 세미나와 보고서를 써야 하는데 귀차니즘이 또 다가 오고 있네요~~ 도와주세요~~~
2009.12.28