[강좌] namespace
ITWeb/개발일반 2007. 4. 3. 18:38ajax 가 보편화 되면서 javascript 에 대한 oop 개발 방법이 많이 도입되고 있는데요.
그냥 공부도 할겸 client application 에 관심이 많은 지라 javascript 강좌를 개설 했습니다.
뭐 우선 내가 좋아라 하는 거나 만들고 있는 것 부터 시작을 할까 합니다.
그 첫번째가 namespace 인데요.
http://www.mozilla.org/js/language/js20/core/namespaces.html
If a namespace is defined as a member of a class, then the namespace must be declared static
.
번역을 하자면.. (참고로 저는 영어 그닥 잘하지 못합니다.. ^^;)
클래스 맴버로 namespace 가 선언되어 있으면 선언된 namespace 는 반듯이 static 으로 선언 되어 진다.
라는 이야기 입니다.
예를 통해서 확인해 보죠..
http://www.junetool.com/splv/namespace.html
- web.js 코드
/*
namespace 를 등록하는 이유는 javascript 의 OOP 개발 방법을 적용하기 위한 방법중 하나이다.
*/
// global class (package)
var web = web || {};
// name space function
web.namespace = function ( sNS ) {
var aNS = sNS.split(".");
var oTopClass = web;
var i=0;
for ( i=0; i<aNS.length; i++ ) {
oTopClass[aNS[i]] = oTopClass[aNS[i]] || {};
}
}
-- namespace.html 코드
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title>javascript::namespace</title>
</head>
<script src="web.js"></script>
<script>
web.util = {
temp:"web.util"
}
web.util.string = {
temp:"web.util.string"
}
</script>
<body>
<script>
web.namespace("WEB.util.string");
alert(web.util.temp + "\n" + web.util.string.temp);
</script>
</body>
</html>
요기까지 허접 설명 이였구요.
좀 다듬어진걸로 해서 서버에 올리고 공유 하지요.
참 요즘 표준화에도 관심이 많습니다.
표준화에 대해서도 시간이 되는 데로 욜심히 올려 보도록 하겠습니다.