자바 언어의 기원
자바 언어의 경우 최초 시작은 Oak이라는 언어로 시작했습니다.
메인 팀원은 Bill Joy, Patrick Naughton, Mike Sheridan, James Gosling (지금의 자바가 있게 하신 분입니다.) 4명입니다.
처음 시작은 가정용 전자기구들을 통제하기 위한 언어로 시작을 했으나 상용화가
되지 못했습니다. 사장될 뻔한 Oak언어는 인터넷을 통해 다시 살아나게 되었습니다.
1995년 5월 23일 SunWorld Announced를 통해서 자바가 최초 공개되었습니다.
최초로 공개된 자바는 인터넷 화면상에서 움직이는 캐릭터(이름이 잘 기억 안납니다 ㅡ.ㅜ)
를 보여줌으로써 사람들의 관심을 끌었습니다.
자바 언어의 특징
1. 객체지향적
2. C++언어를 확장시키고 개선시킴
3. Multi-threading : 하나의 프로세스 내에는 여러개의 쓰레드라고 불리는
처리 단위가 존재합니다. Multi-Threading의 경우 여러개의 쓰레드가 상호작용
하면서 동시에 처리되는 것을 일컬어 말합니다.
이에 반해 Multi-Tasking의 경우 한 번에 여러개의 CPU에서 여러개의 프로세스를
처리하는 것을 말합니다. 우리가 흔히 알고 있는 OS의 Multi-Tasking은 엄밀히 말해
Multi-Threading이라고 말하는 것이 맞습니다.
4. Security(보안) : 자바 언어의 경우 C++언어와는 다르게 메모리와 주소 관리를 하지
않습니다. C++언어의 경우 포인터가 존재해 메모리와 주소를 직접적으로 관리를 할 수가
있습니다. 이는 다른 사람이 해당 포인터의 주소를 알 경우 변경이 가능해 해킹의 위험이
있습니다. 하지만 자바 언어는 주소를 JVM(자바 버추얼머신)이 관리하면 사용자가 알 수가
없습니다. 그리고 변경이 가능하지 않기 때문에 보안성이 C++보다 더 강화되었습니다.
5. APIs(pre-written code) : 우리가 원하는 코드를 만들어서 API로 저장해서
사용할 수 있습니다. 이미 SUN에서 만들어 둔 API를 사용할 수도 있으며 필요할 경우 직접 만들어서 사용할 수 있습니다. 한 번 만들어 둔 것은 어디에서든 사용이 가능해서 편리합니다.
6. Write Once, Run Anywhere : 내가 작성한 것을 어디에서든 사용이 가능합니다.
내가 만들어 둔 프로그램은 어떤 플랫폼(운영환경이라고 생각하시면 됩니다)도 사용할 수 있습니다.
※ 애플릿과 어플리케이션
Application : OS상에서 실행되는 것을 말함.
Applet : Web Browser에서 실행되는 것을 말함
Programs : 애플릿과 어플리케이션을 합해서 일컬음.
※ Compile 과 Interpreted의 차이
간단히 말해서 Compile의 경우 한 종류의 컴퓨터에서 사용이 가능하도록 만드는 것을
말하며 Interpreted의 경우 어떤 종류든지 사용이 가능하도록 만드는 것을 말합니다.
※ 자바의 놀라운 기능 (How Java Technology Solves the Communication Problems) => 뭐라고 해야할지 몰라서 ㅋ
1. 컴파일(Complie) 과 인터프리트(Interprete)를 지원가능함.
2. 컴파일시에는 속도가 느리지만 어떤 OS에서도 실행이 가능함.
3. 컴파일을 할 경우 소스 코드는 bytecode로 저장됨.
4. JVM은 bytecode를 Interprete 해서 사용 가능하게 만들어 줌.
5. 모든 OS에서 JVM을 사용가능함.
※ 헷갈리는 용어 정리
§ Java Virtual Machine (JVM)
§ Java Runtime Environments (JRE)
§ Application Programming Interface (API)
§ The JDK(Java Developer's Kit) - 옛날 이름
§ Java2, Java 2 Platform,J2 SDK - 현재 사용되고 있는 이름
※ JVM < JRE < J2 SDK
J2 SDK가 가장 포괄적입니다.
첫댓글 ^_______^ 잘봤습니다~ 요약된 정리강좌 네요~ ^^
롱이님 여기서 오래 사시네요 ^^ 앞으로 잘 부탁드려요. 읽어보시고 문제가 있으면 언제든지 태클환영입니다. ㅋㅋ
^_____________^;; 눼~
프린트 해서 다른것이랑 같이 보면 엄청 좋은자료일듯하네요 요약 감사해요~^^