이클립스 폰트(Verdana) 바꾸기

Observer Pattern이란?

한 객체의 상태가 바뀌면 그 객체에 의존하는 다른 객체들한테 연락이 가고 자동으로 내용이 갱신되는 방식으로 일대다(one-to-many) 의존성을 정의


아래는 WeatherData가 Subject 객체이며 CurrentConditionDisplay 및 HeatIndexDisplay가 Observer 객체이다. Display 방식도 변화할 수 있기 때문에 Interface로 뺐다. WeatherStation 클래스에서 Subejct 및 Observer 객체를 연동한다.



Strategy Pattern이란?

알고리즘군을 정의하고 각각을 캡슐화하여 교환해서 사용할 수 있도록 한다. 스트래티지를 활용하면 알고리즘을 사용하는 클라이언트와는 독립적으로 알고리즘을 변경할 수 있다.


아래는 Duck 클라이언트가 캡슐화된 FlyBehavior와 QuackBehavior 알고리즘군을 갖는 클래스 다이어그램이다.



기존 코드에서 다이어그램을 생성해내는 이클립스 플러그인을 찾았다.


eUML2가 유명한거 같은데 이클립스 Kepler를 지원하지 않았다.


그래서 겨우 찾은게 ObjectAid!! 잘 동작한다.

Kepler에선 JAVA8을 적용하기 위해 패치가 필요하다.

아래 링크에 패치하는 방법이 설명되어 있다.

JDT/Eclipse Java 8 Support For Kepler


잘 적용되었는지 Java8 부터 지원하는 람다식(Lambda Expression)을 포함한 코드로 테스트해봅시다.

import java.util.Arrays;
import java.util.List;


public class Test {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		List  list = Arrays.asList ( "Groovy", "Java", "Scala");
		list.sort((s1, s2) -> s1.length() - s2.length());
		list.forEach(s -> System.out.println (s));
	}
}



libcurl.dll 다운로드 사이트

libcurl을 검색한 후에 'Download libcurl.dll (all versions) only' 링크를 통해 dll만 다운 받아서 SSL 폴더 내의 dll을 C:\Windows\SysWOW64 폴더에 복사


액티비티 다이어그램, 시퀀스 다이어그램이 무엇인지 잘 알고 사용하면 유용하겠다.

회사에서 SW하는 많은 사람들이 다이어그램을 그리지만 100% 제대로 알고 그리는 사람은 거의 없는 듯.

아래는 다이어그램에 대해 잘 설명된 페이지.


다이어그램 설명

외국어로 영어를 배우는 데는 두 가지 잘못된 믿음이 있습니다.

하나는 영어를 몇 주만에 배울 수 있다고 하는 것이고

다른 하나는, 어른이 되면 언어를 배울 수 없다고 하는 것입니다.

이 두 가지 생각은 완전히 잘못된 것입니다.

사실 영어를 배우는데 가장 효율적인, 마법과 같은 연습방법은 없습니다.

(영어를 쉽고 빠르게 배울 수 있는 방법은 없습니다.)

단지 실제 대화하는 것과 같은 방법이어야 한다는 것의 경우 배우는 사람에게 너무 어렵거나 생소해서는 안 된다는 것입니다.

(배우는 사람에게 친숙한 주제로 공부하는 것이 좋습니다.)

사실 굉장히 단순하게 들립니다. 하지만 그게 그리 만만하지는 않습니다.

(세상에 쉬운 건 없다는...)


수영을 잘 하기 위해 전공서적을 공부하는 사람은 없습니다.

(수영에 대한 이론만 주구장창 공부하는게 아니죠)

jump into the pool! 그냥 물 속에 뛰어들면 됩니다.

(실제로 물 속에 들어가 몸으로 해봐야 실력이 늘어납니다.)

영어도 그렇습니다.

(책만 봐서는 안 됩니다. 많이 듣고 많이 말해봐야 합니다.)


이클립스에 SVN 플러그인 설치

Ubuntu에 LAMP 설치

+ Recent posts