Project 관리/Maven2013. 2. 15. 09:27

Maven을 프로젝트에 활용하기 위해 문서를 찾다가 꽤나 오래되었으나 개념잡기에 적절한 강좌가 있어 연결해본다.

"자바지기"님 블로그의 글로 2007~2008년에 작성된 오래된 글이지만 처음 시작할때는 도움이 될 것이다.


[자바지기님 Blog 강좌]

Maven 강좌 1 - Maven 설치 및 최초 프로젝트 생성

Maven 강좌 2 - Maven 개요, 잇점, POM 설정 파일 기본

Maven 강좌 3 - Maven 디폴트 디렉토리 구조 및 사용할 수 있는 Goals

Maven 강좌 4 - Maven을 이용하여 Dependency 라이브러리 관리 방법

Maven 강좌 5 - Maven 기반의 Eclipse 프로젝트 생성 및 활용

Maven 강좌 6 - Artifactory를 이용하여 Maven Repository 세팅하기

Maven 강좌 7 - Maven을 이용하여 Appfuse 프로젝트 생성하기

Maven 강좌 8 - Maven 플러그인을 이용하여 Apache Tomcat 서버에 소스 배포하기


자, 다 읽었다면.......

Maven의 공식사이트에서 추가적으로 공부해보자.


Posted by 꼰스
OS/Windows72012. 11. 3. 21:34

Windows7 을 사용하다 보면 큰 아이콘 참 맘에 안들때가 있지요?

 

 

XP 의 빠른실행 모습이 그리워지지 않습니까?

 

 

자 한번 시작해 보시지요...

 

먼저 윈도우 맨 아래 작업표시줄에서 우클릭해봅니다. 아래와 같은 화면이 보이겠죠?

 

 

작업표시줄을 마구마구 바꿀 예정이므로 "작업 표시줄 잠금"을 해제합니다.

그런 이후에 "도구모음" → "새 도구 모음" 을 선택하세요..

아래와 같이 창이 하나 뜹니다.

 

 

아래의 폴더값을 입력하고 "폴더선택" 버튼을 클릭합니다.

%userprofile%\AppData\Roaming\Microsoft\Internet Explorer\Quick Launch

 

 

Quick Launch 가 생긴것 보이시죠???

자! 이제부터 Quick Launch 를 셋팅해볼까요?

 

 

위에서 "텍스트 표시" 해제, "제목 표시" 해제 합니다.

이어서 작업표시줄에서 우클릭하면 아래와 같은 창이 뜨지요?

 

 

그림과 같이 표시하고 확인을 누릅니다.

 

이제부터 마음에 들지 않는 프로그램을 작업표시줄에서 사정없이 제거합니다.

모든 프로그램 제거 후 알맞게 빠른실행 도구박스들을 재배치 하고 작업표시줄을 우클릭하여 "작업표시줄 잠금"을 합니다.

 

 

성공하셨습니까?

맘에드는 윈도우 환경을 갖추니 맘이 참 편합니다... ^^

 

Posted by 꼰스
Web Client/JavaScript2012. 10. 30. 23:19

Javascript로 객체지향을 표현하는게 한계가 있기는 하지만 캡슐화가 가지는 득이 상당하므로 가능한 클래스를 만들어 사용함도 나쁘지 않을듯 합니다. 첨부한 예제에는 private, public, static 을 어떻게 표현해야할지 잘 나와 있습니다.


[ js/MyClass.class.js ]


/**

 * 나만의 클래스 구조를 만들어본다

 * 

 * [참고]내부 변수는 앞에 _ 를 붙여주는 것이 좋다

 */

var MyClass = (function() {

// 생성자

var Class = function(initValue) {

// #################### 생성자 ####################

(function initialize() {

increaseCount();

})();

// #################### 변수 선언 ####################


// public 변수

this.id = null;

// private 변수

var _name = null;

var _initValue = initValue;

// #################### 메쏘드 선언 ####################

// private 메쏘드

var myPrivate = function() {

// private business code here

};

// public 메쏘드

this.getId = function() {

return this.id;

};

this.getName = function() {

return _name;

};

this.setName = function(name) {

_name = name;

};

this.getInitValue = function() {

return _initValue;

};

};

// #################### static 변수 및 메쏘드 ####################

// private static 변수

var totalCount = 0;

// public static 변수

Class.MAX_COUNT = 10;

// private static 메쏘드

var increaseCount = function() {

totalCount++;

};

// public static 메쏘드

Class.getTotalCount = function() {

return totalCount;

};

// #################### 참고사항 ####################

// [참고] prototype을 사용한 public 메쏘드 선언(객체간 공유하는 메쏘드)

Class.prototype = {

getMessage : function() {

return ("My id is " + this.getId() + "!!");

}

};


return Class;

})();



[ MyClassTest.html ]


<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">

<html>

<head>

<title>MyClass.class.js 테스트</title>

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

<script type="text/javascript" src="js/MyClass.class.js"></script>


<script type="text/javascript">

function test() {

var obj1 = new MyClass();

obj1.id = "user1";

obj1.setName("사용자1");

alert("obj1 : " + 

"id=" + obj1.getId() + "\n" + 

"name=" + obj1.getName() + "\n" + 

"count=" + MyClass.getTotalCount() + "\n" +

"message=" + obj1.getMessage() + "\n" +

"");

var obj2 = new MyClass('initValue');

obj2.id = "user2";

obj2.setName("사용자2");

alert("obj2 : " + 

"obj2.getId()=" + obj2.getId() + "\n" + 

"obj2.id=" + obj2.id + "\n" +

"obj2.getName()=" + obj2.getName() + "\n" + 

"obj2.name=" + obj2.name + "\n" +

"MyClass.getTotalCount()=" + MyClass.getTotalCount() + "\n" +

"MyClass.totalCount=" + MyClass.totalCount + "\n" +

"obj2.totalCount=" + obj2.totalCount + "\n" +

"MyClass.MAX_COUNT=" + MyClass.MAX_COUNT + "\n" +

"obj2.MAX_COUNT=" + obj2.MAX_COUNT + "\n" +

"obj2.getMessage()=" + obj2.getMessage() + "\n" +

"obj2.getInitValue()=" + obj2.getInitValue() + "\n" +

"");

}

</script>

</head>

<body>

<input type="button" value="test" onclick="test()"/>

</body>

</html>



자자.. 위와 같은 방법으로 자신만의 라이브러리를 구축한다면 관리하기도 편하고 충돌도 피할 수 있겠죠?

저도 시간 될때마다 유용한 클래스를 하나씩 만들어봐야겠습니다.


'Web Client > JavaScript' 카테고리의 다른 글

javascript 로 만든 Map - JMap  (0) 2011.12.28
Posted by 꼰스