전화를 받는 고객 서비스 상담원.
이미지 크레디트: 주식 보기/주식 보기/게티 이미지 보기
Adobe Flash 및 기타 최신 웹 기술이 존재하기 전에 사이트 소유자는 Java를 사용하여 매력적인 대화형 웹 사이트를 만들었습니다. Flash와 마찬가지로 Java 프로그램은 영화를 재생하고 고품질 그래픽을 생성하며 데스크탑 앱과 유사한 복잡한 애플리케이션을 지원합니다. 배후에서 실행되는 JVM(Java Virtual Machine Interpreter)을 사용하면 이러한 이점을 누릴 수 있지만 주목할만한 단점이 있습니다.
자바 가상 머신의 구조
Java라는 용어에는 여러 가지 의미가 있습니다. 개발자가 응용 프로그램을 만드는 데 사용하는 프로그래밍 언어, Application Programmer's Interface 사양 또는 Java Virtual Machine 사양을 참조할 수 있습니다. 애플릿이라고도 하는 Java 프로그램이 있는 웹 페이지를 방문하면 브라우저는 Java 코드를 해석하고 애플릿을 실행하는 Java Virtual Machine을 활성화합니다. 실제 컴퓨팅 머신과 마찬가지로 JVM은 명령을 처리하고 메모리 영역을 관리합니다.
오늘의 비디오
장점: Java는 보호 영역에서 실행됩니다.
웹 페이지에 파일을 삭제하거나 개인 문서를 검사할 수 있는 기능이 있다면 어떤 일이 일어날지 상상해 보십시오. Java 애플릿은 일반 HTML 코드가 수행할 수 없는 유용한 작업을 수행할 수 있지만 Java는 Java Virtual Machine 내에서 격리 실행됩니다. JVM은 위험한 사이트의 레니게이드 애플릿이 하드 드라이브와 같은 시스템 리소스에 액세스할 수 없도록 합니다.
단점: 사이버 범죄자가 Java 가상 머신을 악용할 수 있음
JVM이 애플릿의 동작을 제한하지만 공격자가 Java 플랫폼의 약점을 악용하는 것은 여전히 가능합니다. 예를 들어, 2013년 초에 Microsoft는 원격 코드 실행을 사용하여 컴퓨터를 감염시키도록 설계된 애플릿의 세 가지 예를 보았습니다. Java 개발자 Oracle, 애플릿 기본 보안을 설정하여 사용자를 더 안전하게 유지하는 업데이트 출시 수준을 "높음"으로 설정합니다. 이 설정은 서명되지 않은 애플릿이 운영. Microsoft가 언급한 것처럼 "보안 취약점을 악용하는 대다수의 애플릿은 서명되지 않았습니다." 디지털 애플릿의 서명을 통해 누가 그것을 생성했는지 알 수 있고 생성자 이후에 아무도 애플릿을 수정하지 않았는지 확인할 수 있습니다. 서명했다.
장점: 하나의 크기는 모두 적합합니다.
"교차 플랫폼"은 다양한 유형의 하드웨어에서 성공적으로 실행되는 프로그램의 기능을 나타냅니다. Java는 크로스 플랫폼이기 때문에 개발자는 모든 PC, Mac, 휴대폰 및 JVM이 있는 기타 장치에서 실행되는 하나의 코드를 작성할 수 있습니다. Java는 항상 브라우저에서 실행할 필요는 없습니다. 일반 프로그램과 마찬가지로 데스크탑에서 실행되는 Java 앱을 다운로드할 수 있습니다.
단점: 일부 조립이 필요할 수 있음
아무도 컴퓨터에 Java Runtime Environment를 설치한 적이 없다면 Java를 사용할 수 없습니다. Java 버전 확인 웹 페이지를 방문하여 지침에 따라 최신 버전이 없는 경우 다운로드 및 설치합니다. 설치 시간이 길지 않지만 몇 가지 문제가 발생할 수 있으므로 설치 작업에 도움이 필요한 경우 Java 문제 해결 페이지를 참조하십시오.
추가 이점
자세한 수준에서 Java Virtual Machines는 JIT(Just-In-Time) 컴파일러를 사용하여 Java 코드를 일반 응용 프로그램만큼 빠르게 실행되는 저수준 기계 언어로 변환합니다. 브라우저는 이 컴파일된 코드를 캐시할 수 있으므로 나중에 다시 다운로드하거나 컴파일 단계를 거치지 않고도 재사용할 수 있습니다.