전체 글22 JAVA의 단점 - 속도문제 1. JAVA의 속도 문제 여기서 잠시 유의할 점은, 느리다는 내용은 대부분 C/C++, Pascal, Fortran 같은 네이티브 바이너리 코드를 만드는 언어와 비교했을 때의 이야기입니다. 자바가 C/C++ 보다 2~3배 느리다고 하지만 다른 고수준 언어들에 비해서는 그리 떨어지지 않습니다. 1.4 버전에서 JIT 컴파일 지원이 돼서 많이 빨라졌습니다. 특히 인터프리터/스크립트 언어는 구조적으로 자바에 비해서도 훨씬 느립니다. 예를 들어 요즘 인기 있는 Python은 C보다 수십 배 느리고, 그나마 빠르다고 하는 JavaScript도 자바에 비해서 2배 정도 느립니다. 또한 속도 관련 문제는 하드웨어의 성능이 점점 좋아지고 메모리 가격이 떨어지면서 희석되고 있습니다. 처음 자바가 나왔을 때인 1995년.. 2020. 11. 29. JAVA의 호환성과 안정성, 가독성 1. JAVA의 호환성 해당 운영체제에 Java Virtual Machine(JVM)을 설치하면 자바로 만든 프로그램은 어떤 컴퓨터에서도 완벽히 똑같이 동작합니다. 가상 머신이 각각의 운영체제에 맞춰서 결과적으로 완벽히 똑같이 돌아갈 수 있도록 제작되기 때문입니다. 가상 머신 없는 운영체제라면 아예 자바 프로그램을 사용하지 못하겠지만, 썬 마이크로시스템즈는 주요 OS용의 가상 머신을 발표하고 있고, IBM, 휴렛팩커드 등의 회사는 직접 자사 운영체제용 JDK/JVM을 제작 발표하며, 이들과 상관없이 독립적으로 특화된 성능 향상 기능을 가진 JVM을 만ㄴ들어서 발표하는 회사도 존재했습니다. 그래서 이 부분은 보통 단점으로 꼽히지 않습니다. 오히려 여러 운영체제에 발 벌리는 업체라면 윈도용, 맥용 등을 따로.. 2020. 11. 28. JAVA의 장점 - 래퍼런스와 생산성 1. 수많은 개발자와 레퍼런스 수많은 개발자와 래퍼런스는 자바가 항상 상위권을 유지할 수 있는 이유입니다. 자바 이외의 타 언어를 전문적으로 사용하는 개발자들도 자바 정도는 할 줄 안다고 할 정도로 배우기 쉽기도 하고 대중적입니다. 대중적인 언어라서 참고 자료나 오픈 소스들이 많고, 그 자료들을 바탕으로 많은 대형 프로젝트들이 진행되기 때문에 안정성도 입증되었다고 볼 수 있습니다. 즉, 안정적인 인력풀을 유지하면서 알려진 위협을 제거하고 운영 노하우가 많은 검증된 언어라는 것이죠. 하지만 검증되었다는건 반대로 말하자면 오래되었다는 뜻이기도 합니다. 최근에는 자바에 대한 개발자들의 불만이 누적된 탓인지 Javascript나 Python 등 다른 언어를 선호하는 경향이 강합니다. 국내에서는 전자정부 표준프레.. 2020. 11. 27. JAVA의 정의와 활용 1. JAVA란? JAVA(이하 자바)란 무엇인가에 대해 먼저 간단하게 알고 넘어가는 게 좋습니다. 자바는 썬에서 1995년 개발된 객체 지향 프로그래밍 언어입니다. 2010년에 오라클이 썬을 인수하면서 자연스럽게 자바의 저작권도 오라클로 넘어가게 되었습니다. 자바는 C#과 성향이 비슷하고, 이름은 비슷한 Javascript와는 다릅니다. 많은 사람들이 착각하는 부분을 짚고 넘어가자면 자바는 정확히 얘기하면 완벽한 객체지향 언어는 아닙니다. 원시(Primitive) 타입은 객체로 취급하지 않기 때문입니다. 정말 모든 것을 객체로 취급하는 언어를 순수 객체지향(Pure object-oriented)으로 지원하는 언어로는 파이썬(Python), 루비(Ruby) 등이 있습니다. 정의에 대한 내용이 길어지면 재.. 2020. 11. 26. 이전 1 2 3 4 다음