[dW] 다시 보는 자바스크립트의 역사
Posted at 2008/10/28 11:23// Posted in 나만의 작업/dW
1회(2008년9월): 다시 보는 자바스크립트의 역사
하루종일 자바스크립트하고 노는데, 늘~ 알수없는 녀석이 어떻게 살아왔나 익히 들어와서 대충 알고있긴 하지만, 이렇게 정리되어 있어 한번 쭈욱 읽고나니 조금 더 묘한 느낌(지금 째즈음악을 듣고 있어서 그런가...)이 납니다.
역사 얘기도 나오고 자바스크립트의 특징도 살짝 나오고,, 지금은 비록 모습이 많이 없지만, 프로토타입 기반 객체지향 개념을 내세운 자바스크립트, 아이오(Io) 언어에 의해 계승되고 있다는 셀프(self)언어를 꺼내며 프로포타입 기반의 객체지향과 클래스 기반의 객체지향에 대해서도 살짝 나오고 있습니다.
하루종일 자바스크립트하고 노는데, 늘~ 알수없는 녀석이 어떻게 살아왔나 익히 들어와서 대충 알고있긴 하지만, 이렇게 정리되어 있어 한번 쭈욱 읽고나니 조금 더 묘한 느낌(지금 째즈음악을 듣고 있어서 그런가...)이 납니다.
역사 얘기도 나오고 자바스크립트의 특징도 살짝 나오고,, 지금은 비록 모습이 많이 없지만, 프로토타입 기반 객체지향 개념을 내세운 자바스크립트, 아이오(Io) 언어에 의해 계승되고 있다는 셀프(self)언어를 꺼내며 프로포타입 기반의 객체지향과 클래스 기반의 객체지향에 대해서도 살짝 나오고 있습니다.
'나만의 작업 > dW' 카테고리의 다른 글
| [dW] 아파치 더비를 이용한 오프라인 Ajax (0) | 2008/11/13 |
|---|---|
| 디벨로퍼웍스 늦가을 행사 “개발자들의 수다” 행사를 하는군요. (2) | 2008/11/05 |
| [dW] 자바스크립트 개발 툴킷(JSDT) 살펴보기 (2) | 2008/10/30 |
| [dW] 자바로 만든 자바스크립트 엔진, 리노 (4) | 2008/10/29 |
| [dW] 다시 보는 자바스크립트의 역사 (2) | 2008/10/28 |
| [dW] RESTful한 웹 서비스 만들기 (2) | 2008/09/29 |
| [dW] XML을 사용하는 좋은 습관 열가지 (4) | 2008/09/24 |
| [dW] Ajax와 자바 개발을 간단하게 시리즈~ (4) | 2008/09/23 |
| [dW] Groovy 유창하게 쓰기 (2) | 2008/08/06 |
-
seattle2008/10/28 12:51 [Edit/Del] [Reply]얕보다 큰코 다치게하는 자바스크립트군요 으흐흐
-
2008/10/29 10:27 [Edit/Del]
버리야요즘엔 얕보긴 힘들죠.. 큰 프로그램도 만드는 언어인데~
-
[dW] Ajax와 자바 개발을 간단하게 시리즈~
Posted at 2008/09/23 12:49// Posted in 나만의 작업/dWdW에서 3주동안 시리즈로 올라오는 글 중 웹개발에 도움되는 글이 있군요.
Ajax와 자바 개발을 간단하게, Part 1
JSP 태그 파일로 자바스크립트 코드 동적으로 생성하기 내용인데
HTML과 URL 인코딩 함수 - 유틸리티 함수가 유용하군요~
Ajax와 자바 개발을 간단하게, Part 2
JSTL과 JSP 태그 파일을 사용하여 커스터마이징이 가능한 웹 컴포넌트를 만들기
Ajax와 자바 개발을 간단하게, Part 3
자바스크립트와 JSP 태그 파일을 사용하여 사용자 친화적이고 웹 폼에 안전한 검증 기능을 구현하기
사용자가 웹 브라우저에 입력한 값을 자바스크립트로 검사하는 valid 같은 특정 기능에 얽매이지 않고 더 일반적인 함수를 만들 수 있는 코드가 있군요.
저같이 수련이 많이 필요한 사람에겐~ 배울게 많군요...
'나만의 작업 > dW' 카테고리의 다른 글
| [dW] 자바로 만든 자바스크립트 엔진, 리노 (4) | 2008/10/29 |
|---|---|
| [dW] 다시 보는 자바스크립트의 역사 (2) | 2008/10/28 |
| [dW] RESTful한 웹 서비스 만들기 (2) | 2008/09/29 |
| [dW] XML을 사용하는 좋은 습관 열가지 (4) | 2008/09/24 |
| [dW] Ajax와 자바 개발을 간단하게 시리즈~ (4) | 2008/09/23 |
| [dW] Groovy 유창하게 쓰기 (2) | 2008/08/06 |
| [dW] 유닉스 팁: 열 가지 더 좋은 유닉스 습관 (2) | 2008/08/01 |
| [dW] Ajax 성능 도구 (0) | 2008/08/01 |
| [dW] 아파치 메이븐 2 시작하기 (4) | 2008/07/11 |
-
-
2008/09/24 10:31 [Edit/Del]열공은... 매일 마음속 다짐으로^^
늘 변함없이 들러주시는 seattle님이 더 멋진데요!ㅋㅋ
잘 계시죠?ㅎㅎ 여기서 안부묻기..ㅎㅎ
-
-
[dW] 동적인 언어를 동적으로 호출하기, Part 1: 자바 스크립팅 API (한글)
Posted at 2008/04/30 10:35// Posted in 분류없음
Java SE 6에 추가된 패키지중에 자바 코드에서 스크립팅 언어를 런타임 시에 호출하도록 도와주는 javax.script 패키지가 있다. 그렇구나!
동적인 언어를 동적으로 호출하기, Part 1: 자바 스크립팅 API (한글)
이 문서에서 코드를 다운로드 받아서 실행해보면 쉽게 이해가 된다. 내부는 잘은..모르겠지만,
이 패키지는 다른 스크립트 언어로 작성된 것을 공통 API를 사용하여 호출될 수 있도록 하는 class와 interface를 제공하기에 인터페이스를 통해 JVM안에서 스크립팅 코드를 작성할 수 있고 실행할 수 있다.
스크립팅 패키지를 사용할 수 있는 경우는
중요 클래스와 인터페이스
ScriptEngineManager(Class) : 스크립트 엔진을 간접적으로 찾고 생성
스크립트-엔진 매니저들이 인스턴스화 되면, 등록된 모든 javax.script.ScriptEngineFactory 구현을 classpath에서 찾는다.
ScriptEngine(Interface) : 코드에선 ScriptEngine 인스턴스를 사용하여 스크립트를 실행하는데 스크립팅 코드와 기반 언어 인터프리터 또는 코드를 실행하는 컴파일러 사이의 중개자로서 작동한다.
ScriptEngine의 인스턴스를 이용하여 Java 메소드 안에서 JavaScript나 Ruby의 function 코드를 정의할 수도 있고 function을 통해 수행된 결과를 eval함수를 통해 출력창에 뿌릴수도 있다.
또, 스크립팅 코드에서 자바 메소드를 호출할 수도 있다.
Java Scripting Programmer's Guide
http://java.sun.com/javase/6/docs/technotes/guides/scripting/programmer_guide/index.html
Script Engines in this project (so far!)
https://scripting.dev.java.net/
동적인 언어를 동적으로 호출하기, Part 1: 자바 스크립팅 API (한글)
이 문서에서 코드를 다운로드 받아서 실행해보면 쉽게 이해가 된다. 내부는 잘은..모르겠지만,
이 패키지는 다른 스크립트 언어로 작성된 것을 공통 API를 사용하여 호출될 수 있도록 하는 class와 interface를 제공하기에 인터페이스를 통해 JVM안에서 스크립팅 코드를 작성할 수 있고 실행할 수 있다.
스크립팅 패키지를 사용할 수 있는 경우는
- 완벽한 규칙 엔진에 의존하지 않고, 자바 언어보다 단순한 언어로 비즈니스 규칙을 작성한다.
- 플러그인 아키텍처를 생성하여 사용자들이 즉석에서 애플리케이션을 커스터마이징 할 수 있도록 한다.
- 기존 스크립트를 텍스트 파일들을 처리하거나 변형하는 스크립트 같은 자바 애플리케이션에 통합시킨다.
- 프로퍼티 파일 대신 완전한 프로그래밍 언어를 사용하여 애플리케이션의 런타임 작동을 외부에서 설정한다.
- 도메인 스팩의 언어를 자바 애플리케이션에 추가한다.
- 스크립팅 언어를 사용하면서, 자바 애플리케이션을 프로토타이핑 한다.
- 스크립팅 언어로 애플리케이션 테스트 코드를 작성한다.
중요 클래스와 인터페이스
import javax.script.*;
public class EvalScript {
public static void main(String[] args) throws Exception {
// create a script engine manager
ScriptEngineManager factory = new ScriptEngineManager();
// create a JavaScript engine
ScriptEngine engine = factory.getEngineByName("JavaScript");
// evaluate JavaScript code from String
engine.eval("print('Hello, World')");
}
}
ScriptEngineManager(Class) : 스크립트 엔진을 간접적으로 찾고 생성
스크립트-엔진 매니저들이 인스턴스화 되면, 등록된 모든 javax.script.ScriptEngineFactory 구현을 classpath에서 찾는다.
ScriptEngine(Interface) : 코드에선 ScriptEngine 인스턴스를 사용하여 스크립트를 실행하는데 스크립팅 코드와 기반 언어 인터프리터 또는 코드를 실행하는 컴파일러 사이의 중개자로서 작동한다.
ScriptEngine의 인스턴스를 이용하여 Java 메소드 안에서 JavaScript나 Ruby의 function 코드를 정의할 수도 있고 function을 통해 수행된 결과를 eval함수를 통해 출력창에 뿌릴수도 있다.
또, 스크립팅 코드에서 자바 메소드를 호출할 수도 있다.
Java Scripting Programmer's Guide
http://java.sun.com/javase/6/docs/technotes/guides/scripting/programmer_guide/index.html
Script Engines in this project (so far!)
https://scripting.dev.java.net/
XML to JSON
Posted at 2007/11/24 00:30// Posted in 나만의 작업예전에 만들어놓은 XML파일을 JSON 형식으로도 만들어주기 위해
XML을 JSON으로 바꾸는 작업을 하다가,
XML을 흔히 JSON으로 많이 바꾸지 않나,, 그러면 뭔가 툴이 있지 않을까?
하고 구글신께 여쭈어보니,
아주 깔끔한 Javascript parser가 있습니다.
Thomas Frank 분이 만드신거 같은데,
블로그에 가보니 아주 편리하게 XML을 넣으면 JSON으로 바꾸어 결과를 보여줍니다.
Javascript를 다운로드 할 수 도 있습니다.
GNU 에 의한 free software입니다. 소스를 받아보니 170줄의 코딩이 있더군요
제가 간단한 XML을 넣어본 결과 JSON으로 잘 변환해줍니다.
하지만, depth가 깊은 XML은 테스트 안해봐서 잘은 모르겠지만,
당분간은 유용할 듯 합니다~
부록으로 JSON Editor도 있습니다.
'나만의 작업' 카테고리의 다른 글
| 윈도우용 launcy (0) | 2008/08/31 |
|---|---|
| hello! blogger 대한민국 블로거 컨퍼런스 참가신청 (6) | 2008/03/05 |
| J2EE의 소프트웨어 디자인 원칙 (8) | 2008/01/17 |
| 티스토리에서 Syntaxhighlighter를 이용하기 (12) | 2007/12/04 |
| XML to JSON (6) | 2007/11/24 |
| 구글꺼야? SearchMash (16) | 2007/10/30 |
| 5회 스프링 프레임웍 사용자 모임에 다녀왔습니다. (10) | 2007/10/28 |
| Google Developer Night에 다녀와서,, (14) | 2007/10/17 |
| 다음(Daum) 검색창에서 "@버리"를 쳐보세요 (16) | 2007/10/11 |


