자바 스크립트는 프로토 타입 객체를 사용하며 이러한 객체는 클래스의 인스턴스없이 다른 객체에 직접 액세스하는 데 도움이되는 반면 Java는 클래스의 속성이 클래스의 인스턴스를 통해 상속되는 클래스 원칙에 따라 만들어진 언어입니다.
비교 차트
비교 근거 | 자바 | 자바 스크립트 |
---|---|---|
에 의해 개발 된 | 썬 마이크로 시스템즈 | 넷스케이프 |
기본 | 정적으로 입력 된 | 동적으로 입력 된 |
객체 유형 | 클래스 기반 | 프로토 타입 기반 |
객체 캡슐화 | 유효한 | 제공하지 않음 |
네임 스페이스의 존재 | Java에서 사용됩니다. | 네임 스페이스를 포함하지 않습니다. |
멀티 스레딩 | Java는 다중 스레드입니다. | 멀티 스레딩을위한 조항이 없습니다. |
범위 | 블록 수준 | 기능 |
자바의 정의
Java 는 어디에서든 동일한 코드를 사용할 수있는 코드를 생성하려는 목적으로 설계된 범용 객체 지향 프로그래밍 언어입니다. Sun Microsystems 의 James Gosling 은 1990 년대 후반에 Java 개발을 주도했습니다. 이 프로그래밍 언어는 클래스 기반, 객체 지향 및 사람이 읽을 수 있습니다. Java는 컴파일되고 해석됩니다. Java 컴파일러는 소스 코드를 바이트 코드로 변환 한 다음 Java 인터프리터는 java 프로그램이 실행중인 시스템에서 직선적으로 실행되는 기계 코드를 생성합니다. 그것은 믿을만하고, 분산되고, 휴대가 가능합니다. 독립 실행 형 응용 프로그램 또는 웹 기반 응용 프로그램을 개발하는 데 사용할 수 있습니다.
자바의 특징 :
- 컴파일 및 해석 : 처음에는 Java 컴파일러가 소스 코드를 바이트 코드로 변환합니다. 그런 다음 기계가 직선적으로 실행할 수있는 기계 코드가 생성되며 통역사가이를 수행해야합니다.
- 플랫폼 독립적이며 이식 가능 : 한 시스템에서 다른 시스템으로 이동할 수 있습니다. 운영 체제, 시스템 자원 및 프로세서의 수정 사항은 Java 프로그램에 영향을 미치지 않습니다. Java 컴파일러에 의해 생성 된 바이트 코드는 모든 시스템에서 사용될 수 있습니다.
- 객체 지향 (Object Oriented) : 자바는 순수 객체 지향 언어로서 모든 것이 클래스와 객체를 중심으로 이루어집니다.
- 강력하고 안전한 : Java는 바이러스의 위협과 리소스의 오용을 방지합니다. 가비지 콜렉터로 구성되며 예외 처리를 사용하여 오류 및 충돌 위험을 제거합니다.
- 분산 형 : 네트워크에서 응용 프로그램을 만들 수 있으며 데이터와 프로그램을 공유 할 수 있습니다. Java는 또한 인터넷을 통해 원격 객체에 액세스하는 데 사용될 수 있으며 여러 프로그래머가 서로 다른 원격 위치에서 동시에 작업 할 수 있습니다.
- 다중 스레드 및 대화 형 : 여러 스레드를 동시에 처리 할 수있는 다중 스레드 프로그램을 지원합니다.
- 동적 및 확장 성 : 새로운 클래스, 객체, 메소드 및 라이브러리는 아마도 Java에서 동적으로 링크됩니다. C 및 C ++와 같은 언어로 작성된 함수도 지원할 수 있습니다.
- 용이 한 개발 : 코드 재사용으로 개발이 쉬워졌습니다.
- 확장 성 및 성능 : Java 런타임 환경에서 시작 시간을 향상시키고 메모리 소비를 최소화함으로써 확장 성과 성능을 향상시킬 수 있습니다.
자바 스크립트 정의
JavaScript 는 주로 웹 응용 프로그램에 동작 및 상호 작용을 제공하기 위해 설계된 클라이언트 측 스크립팅 언어입니다. 그것은 1995 년에 Netscape 에서 Brendan Eich 가 고안 한 것으로, 처음에는 " Mocha ", " live script "로 알려졌습니다. 그 후 넷스케이프 (현재 모질라)와 썬 마이크로 시스템즈 (현재 오라클) 간의 라이센스 계약으로 인해 "라이브 스크립트"라는 이름이 " 자바 스크립트"로 변환됩니다. 이 언어는 표준화 목적으로 Netscape에 의해 ECMA (European Computer Manufacturers Association) 에 제출되었습니다.
일부 상표의 경우, 표준화 된 버전의 이름은 " ECMA Script "입니다. 그러나 관심과 흥분을 얻으려는 마케팅 전략 때문에 "JavaScript"로 널리 사용되었습니다. 그러나, 그들 사이에 비슷한 것은 없습니다. 브라우저는 JavaScript 코드를 실행하는 데 사용되고 다른 버전은 브라우저 구현과 상호 운용 됩니다.
브라우저뿐만 아니라 Mongo DB, Couch DB와 같은 일부 데이터베이스 는 스크립팅 및 쿼리 언어로 JavaScript를 사용합니다. 브라우저에 의해 해석되는 java와 관련된 명령의 작고 간단한 세트를 포함합니다. 자바 스크립트로 웹 페이지 이벤트를 신속하게 구축 할 수 있습니다. 웹 페이지를 조작하도록 설계 되었기 때문에 Java 또는 C ++와 같은 다른 언어가 개발할 수있는 방식으로 데스크톱 응용 프로그램을 개발할 수는 없습니다.
JavaScript의 기능
- 해석 : 자바 스크립트 코드는 브라우저에서 직접 실행되어 코드를 컴파일하지 않아도됩니다.
- 클라이언트 측 스크립트 언어 : 브라우저를 사용하여 코드를 실행하는 클라이언트 측 스크립팅 언어이며 서버 상호 작용은 필요하지 않습니다. 그러나 최신 버전과 프레임 워크는 서버 쪽 스크립팅도 가능하게합니다.
- 이벤트 기반 : 일부 이벤트 발생시 특정 코드를 실행할 수 있습니다. 이벤트는 모든로드 페이지 또는 양식 등을 제출할 수 있습니다.
- 객체 지향 : JavaScript는 해당 페이지 내의 객체를 조작하여 HTML 페이지를 제어합니다.
Java와 JavaScript의 주요 차이점
- Java는 Sun Microsystems (현 오라클)에서 개발했으며 Netscape (Mozilla 소유)는 JavaScript를 개발했습니다.
- Java는 정적으로 형식화됩니다. 즉, 변수의 유형, 매개 변수 및 오브젝트 멤버가 컴파일 타임에 컴파일러에 알려짐을 의미합니다. 반대로, JavaScript는 변수의 유형이 컴파일러에 알려지지 않고 실행시 변경 될 수있는 동적 유형 지정 입니다.
- Java는 클래스 기반 언어로서 정의 된 클래스가 객체를 호출 함을 나타냅니다. 한편, JavaScript는 프로토 타입에 의존한다는 것은 두 배로 확장되고 확장 될 수있는 일반화 된 객체가 객체의 속성과 메서드를 공유 할 수 있다는 것을 의미합니다.
- Java의 캡슐화 는 JavaScript보다 좋습니다.
- JavaScript는 네임 스페이스를 포함하지 않습니다. 반대로 Java에는 네임 스페이스가 있습니다.
- Java는 여러 프로그램을 동시에 실행할 수있는 다중 스레드를 지원합니다. 반대로, JavaScript는 멀티 스레딩 기능을 지원하지 않습니다.
- 자바의 범위는 컨트롤이 인스턴스 또는 클래스 변수가 아닐 때까지 변수가 범위 밖으로 나가는 블록 기반 입니다. 반대로 JavaScript 함수 기반 스코프는 변수가 선언 된 함수 내에서 액세스 될 수있는 곳에서 사용됩니다.
결론
자바와 자바 스크립트는 구문상의 유사성을 제외하고는 다른 언어이며 본질적으로 별개의 목적으로 설계되었습니다. Java는 데스크탑 또는 모바일 또는 웹 기반 응용 프로그램을 개발하는 데 사용할 수있는 범용 언어입니다. 한편, JavaScript는 특히 웹 기반 응용 프로그램의 동작 및 상호 작용을 디자인하는 데 사용되는 클라이언트 측 스크립팅 언어입니다. Java는 JavaScript보다 복잡하고 엄격합니다. 두 언어 모두 우수한 웹 페이지 이벤트를 생성 할 수 있으며 사용자와 웹 페이지 간의 상호 작용을 제공 할 수 있습니다.