| [ WWW ] in KIDS 글 쓴 이(By): seasons (오히려전법) 날 짜 (Date): 1996년08월29일(목) 23시50분48초 KDT 제 목(Title): WWW 강좌 10 : Java 배우기 (24) A.Fun.A.Day(400) WWW 강좌 10 : Java 배우기 (24) ----------------------------------------------- < 자바 백서 > 계속 3.3 견고성(Robust) 자바언어는 다양한 방법을 통해, 견고하고, 높은 신뢰성을 가지며, 보안성이 있는 소프트웨어를 개발하려고 한다. 자바언어는 처음에는 가능한 문제를 검사 하고, 나중에 동적(실행시)인 검사와 에러의 경향이 있는 상황을 제거하는데 많은 중점을 두었다. ⊙ 엄격한 컴파일시 검사 자바컴파일러는 프로그램이 서비스되기 전에 구문에 관계되는 에러를 조기에 잡아내기 위해 확장되고(Extensive) 엄중한 컴파일시 검사를 한다. (C++ 같은) 전형적인 언어의 장점중 하나는 확장된 컴파일시 검사가 버그를 빨리 발견할 수 있게 한다는 것이다. 불행히도, C++은 상대적으로 느슨한, 이러한 C에서의 검사에 있던 많은 구멍을 상속받았다.(주요한 이슈는 메쏘드/프로시져 선언이다). 자바언어는 선언을 필요로 하지만, C스타일의 함축적인 선언은 지원 하지 않는다. 다수의 엄중한 컴파일시 검사는 실행시로, 실행시 계속적인 검사로, 더 큰 융통 성을 제공하는 쪽으로 넘겨졌다. 링커(Linker)는 버전별로 어긋난 문제를 보호하기 위해 Type System을 이해하고, 컴파일러에 의해 수행된 많은 Type 검사를 한다. 단 하나의 가장 큰 자바언어와 C와 C++과의 차이는 자바언어의 메모리 모델은 메 모리를 겹쳐 써서 데이터를 날리게 되는 가능성의 제거이다. 포인터 연산을 대신하 여, 자바는 인터프리터가 배열과 문자열 첨자를 검사할 수 있음을 의미하는 진짜 배열이 있다. 추가로, 프로그래머는 형변환을 통해 포인터로 임의적인 정수를 변 환하는 코드는 만들 수 없다. 쓰레기 수집은 프로그래머의 일을 광범위하게 쉽게 만들었다. 메모리관리의 무 거운 짐은 프로그래머의 어깨에서 벗어 던졌고, 메모리할당 에러는 바람과 함께 사 라졌다. 자바언어가 소프트웨어의 질적인 보증 문제를 완전하게 제거했다고 하지 않는 다면, 전반적인 클래스의 프로그래밍 에러의 제거가 신중하게 테스트와 질의 보증을 쉽게 할 것이다. ⊙주요한 이익 빠르고거칠것없는 프로토타입(Fast and Fearless Prototyping) LISP, TCL, SmallTalk와 같은 매우 동적인 언어는 원형(Prototype)을 만드 는데 가끔 쓰인다. 이런 관점에서 그들의 성공에 대한 논리적인 이유중의 하나는 매 우 견고하다는 것이다 - 메모리를 해제하거나 붕괴하는데 걱정할 필요가 없는 것이 다. 프로그래머는 메모리가 혼란스러워도 걱정할 필요가 없기 때문에 자바언어에서 프로그래밍을 할 때 메모리 다루는 것을 상대적으로 두려워하지 않는다. LISP, TCL, SmallTalk같은 언어가 원형화에 적합한 생각되어지는 또 다른 이유는 미리 결정을 내릴 필요가 없기 때문이다 - 이들 언어는 구문 적으로 풍부하다. 자바언어는 명백한 선택을 하게 만드는 정확하게 반대적인 특성을 가지고 있다. 이런 선택을 하게되면 많은 도움이 된다 - 메쏘드 호출을 작성했는데, 무엇인가 잘못되었다면, 컴파일시에 잘못을 알 수 있다. 메쏘드 호출에러에 대해 걱정할 필요 가 없다. 3.4 요약 구조 중립적이며 이식 가능한 프로그래밍 언어인 자바언어는 이질적인 네트워 크 기반의 컴퓨팅 플랫폼에서 응용프로그램을 분배하는 문제의 매력적이고 간결한 해답을 제공한다. 추가로, 자바언어하의 간결성과 견고함은 사용자들이 높은 수준 의 확신을 가질 수 있는 더 질(Quality)이 좋고 신뢰할 수 있는 응용프로그램을 만 든다. -- ___o ___o ___o ___o ___o __ \\ __ __ \\ __ __ \\ __ __ \\ __ __ \\ __ (*)/ (*) (*)/ (*) (*)/ (*) (*)/ (*) (*)/ (*) +---------------------------------------------------------------------------+ | Won Geun Baek E-Mail: wgbaek@pharaoh.telecom.samsung.co.kr | | Samsung Electronics co. TEL : 02-405-1376 (7:00-18:00 Korea) | +---------------------------------------------------------------------------+ |