Offcanvas

Java

최적의 AI 개발 언어 6가지와 새로 부상하는 2가지

인공 지능(Artificial Intelligence, AI)는 애플리케이션 개발자에게 무한한 가능성을 제공한다. 머신러닝 또는 딥 러닝을 활용해 훨씬 더 정확한 사용자 프로필, 개인 맞춤 설정, 추천을 만들거나 더 스마트한 검색, 음성 인터페이스 또는 지능형 비서를 구현하거나 그 외의 다양한 방법으로 앱을 개선할 수 있다. 심지어 예전에는 생각지도 못했던, 보고 듣고 상황에 반응하는 애플리케이션을 만들 수도 있다.   AI를 온전히 활용하기 위해서는 어떤 프로그래밍 언어를 배워야 할까? 물론 좋은 머신러닝, 딥 러닝 라이브러리가 풍부한 언어가 좋다. 또한 우수한 런타임 성능, 충실한 툴 지원, 대규모 프로그래머 커뮤니티, 건강한 지원 패키지 생태계도 필요하다. 요구사항이 많지만 괜찮은 선택지 역시 풍부하다.  AI 개발을 위한 6가지 최적의 프로그래밍 언어와, 이 목록에는 들지 못했지만 살펴볼 만한 2가지 언어를 소개한다. 이 가운데에는 인기 상승 중인 언어도 있고 하락세인 언어도 있고 딥 러닝 아키텍처와 애플리케이션의 역사에 관심이 있는 경우에만 알면 되는 언어도 있다. 이제부터 각각의 장단점을 살펴보자. 파이썬(Python) 선두는 여전히 파이썬이다. 사실 다른 언어가 이 자리를 뺏기도 쉽지 않다. 파이썬에도 나름의 골치 아픈 문제는 있지만 AI 작업을 한다면 어느 시점에는 거의 무조건 파이썬을 사용하게 된다. 또한 파이썬의 투박한 부분들도 그동안 어느정도 개선됐다. 2020년을 목전에 둔 지금, 주요 라이브러리 대부분이 파이썬 3.x를 지원하고 파이썬 2.x에 대한 지원을 속속 중단하고 있음을 감안하면 파이썬 2.x냐, 파이썬 3.x냐의 논란은 거의 무의미하다. 즉, 모든 새로운 언어 기능을 마침내 본격적으로 활용할 수 있게 됐다. 모든 솔루션이 각자 다른 방법으로 조금씩 문제가 있는 악몽 같은 파이썬의 패키징은 여전하지만 95%의 상황에서는 별다른 걱정 없이 아나콘다(Anaconda)를 사용할 수 있다. 그럼에도 파...

자바 LUA Julia 줄리아 Python SWIFT 딥러닝 머신러닝 스위프트 Java C++ 파이썬 프로그래밍 인공지능 자바스크립트 루아

2019.11.25

인공 지능(Artificial Intelligence, AI)는 애플리케이션 개발자에게 무한한 가능성을 제공한다. 머신러닝 또는 딥 러닝을 활용해 훨씬 더 정확한 사용자 프로필, 개인 맞춤 설정, 추천을 만들거나 더 스마트한 검색, 음성 인터페이스 또는 지능형 비서를 구현하거나 그 외의 다양한 방법으로 앱을 개선할 수 있다. 심지어 예전에는 생각지도 못했던, 보고 듣고 상황에 반응하는 애플리케이션을 만들 수도 있다.   AI를 온전히 활용하기 위해서는 어떤 프로그래밍 언어를 배워야 할까? 물론 좋은 머신러닝, 딥 러닝 라이브러리가 풍부한 언어가 좋다. 또한 우수한 런타임 성능, 충실한 툴 지원, 대규모 프로그래머 커뮤니티, 건강한 지원 패키지 생태계도 필요하다. 요구사항이 많지만 괜찮은 선택지 역시 풍부하다.  AI 개발을 위한 6가지 최적의 프로그래밍 언어와, 이 목록에는 들지 못했지만 살펴볼 만한 2가지 언어를 소개한다. 이 가운데에는 인기 상승 중인 언어도 있고 하락세인 언어도 있고 딥 러닝 아키텍처와 애플리케이션의 역사에 관심이 있는 경우에만 알면 되는 언어도 있다. 이제부터 각각의 장단점을 살펴보자. 파이썬(Python) 선두는 여전히 파이썬이다. 사실 다른 언어가 이 자리를 뺏기도 쉽지 않다. 파이썬에도 나름의 골치 아픈 문제는 있지만 AI 작업을 한다면 어느 시점에는 거의 무조건 파이썬을 사용하게 된다. 또한 파이썬의 투박한 부분들도 그동안 어느정도 개선됐다. 2020년을 목전에 둔 지금, 주요 라이브러리 대부분이 파이썬 3.x를 지원하고 파이썬 2.x에 대한 지원을 속속 중단하고 있음을 감안하면 파이썬 2.x냐, 파이썬 3.x냐의 논란은 거의 무의미하다. 즉, 모든 새로운 언어 기능을 마침내 본격적으로 활용할 수 있게 됐다. 모든 솔루션이 각자 다른 방법으로 조금씩 문제가 있는 악몽 같은 파이썬의 패키징은 여전하지만 95%의 상황에서는 별다른 걱정 없이 아나콘다(Anaconda)를 사용할 수 있다. 그럼에도 파...

2019.11.25

지금도 앞으로도 개발의 핵심··· '자바 가상머신(JVM)'의 이해

자바 가상 머신(Java Virtual Machine, JVM)은 시스템 메모리를 관리하면서 자바 기반 애플리케이션을 위해 이식 가능한 실행 환경을 제공한다. JVM은 다른 프로그램을 실행시키는 것이 목적인 프로그램이다. 방어적 코딩(Coding Kung Fu)의 가장 훌륭한 예 가운데 하나이기도 한 간단한 아이디어이기도 하다. JVM은 당시에도 상황을 뒤집어 놓았고 지금까지도 프로그래밍 혁신을 지원하고 있다. JVM의 용도와 정의 JVM에는 2가지 기본 기능이 있다. 자바 프로그램이 어느 기기, 또는 어느 운영체제 상에서도 실행될 수 있게 하는 것("한 번 작성해, 어디에서나 실행한다"는 유명한 원칙이다)과 프로그램 메모리를 관리하고 최적화하는 것이다. 1995년 자바가 공개 되었을 때, 모든 컴퓨터 프로그램은 특정 운영체제에 맞게 작성되었으며, 프로그램 메모리는 소프트웨어 개발자가 관리했었다. 그래서 JVM은 놀라움이었다. 그림. JVM에 대한 상위 레벨 뷰 Credit: JavaWorld/ IDG JVM에 대한 기술적인 정의를 하는 것은 유용하며, 소프트웨어 개발자들의 일반적인 정의도 있다. JVM에 대한 정의는 다음과 같이 나눌 수 있다. - 기술적 정의: JVM은 코드를 실행하고 해당 코드에 대해 런타임 환경을 제공하는 소프트웨어 프로그램에 대한 사양(Specification)이다. - 일반적 정의: JVM은 자바 프로그램을 실행하는 방법이다. JVM의 설정을 구성한 다음 설정사항에 따라 실행 중에 프로그램 리소스를 관리한다. 개발자들이 JVM에 대해 말하고 있다면, 대개는 어떤 기기 상에서 실행되고 있는 프로세스, 특히 자바 앱에 대한 리소스를 대표하고 통제하는 서버를 지칭한다. 이 맥락에서의 JVM은 이런 작업들을 수행하는 프로그램 구축을 위한 요구조건들을 정의하는 JVM 사양과는 다른 것이다. 누가 JVM을 개발하며 유지보수하는가 JVM은 널리 배포되어 있고, 많이 사용되고 있으며...

Java JVM Java Virtual Machine

2018.09.21

자바 가상 머신(Java Virtual Machine, JVM)은 시스템 메모리를 관리하면서 자바 기반 애플리케이션을 위해 이식 가능한 실행 환경을 제공한다. JVM은 다른 프로그램을 실행시키는 것이 목적인 프로그램이다. 방어적 코딩(Coding Kung Fu)의 가장 훌륭한 예 가운데 하나이기도 한 간단한 아이디어이기도 하다. JVM은 당시에도 상황을 뒤집어 놓았고 지금까지도 프로그래밍 혁신을 지원하고 있다. JVM의 용도와 정의 JVM에는 2가지 기본 기능이 있다. 자바 프로그램이 어느 기기, 또는 어느 운영체제 상에서도 실행될 수 있게 하는 것("한 번 작성해, 어디에서나 실행한다"는 유명한 원칙이다)과 프로그램 메모리를 관리하고 최적화하는 것이다. 1995년 자바가 공개 되었을 때, 모든 컴퓨터 프로그램은 특정 운영체제에 맞게 작성되었으며, 프로그램 메모리는 소프트웨어 개발자가 관리했었다. 그래서 JVM은 놀라움이었다. 그림. JVM에 대한 상위 레벨 뷰 Credit: JavaWorld/ IDG JVM에 대한 기술적인 정의를 하는 것은 유용하며, 소프트웨어 개발자들의 일반적인 정의도 있다. JVM에 대한 정의는 다음과 같이 나눌 수 있다. - 기술적 정의: JVM은 코드를 실행하고 해당 코드에 대해 런타임 환경을 제공하는 소프트웨어 프로그램에 대한 사양(Specification)이다. - 일반적 정의: JVM은 자바 프로그램을 실행하는 방법이다. JVM의 설정을 구성한 다음 설정사항에 따라 실행 중에 프로그램 리소스를 관리한다. 개발자들이 JVM에 대해 말하고 있다면, 대개는 어떤 기기 상에서 실행되고 있는 프로세스, 특히 자바 앱에 대한 리소스를 대표하고 통제하는 서버를 지칭한다. 이 맥락에서의 JVM은 이런 작업들을 수행하는 프로그램 구축을 위한 요구조건들을 정의하는 JVM 사양과는 다른 것이다. 누가 JVM을 개발하며 유지보수하는가 JVM은 널리 배포되어 있고, 많이 사용되고 있으며...

2018.09.21

자바 프로그래밍의 핵심··· 'JDK'의 이해와 설치방법

자바 개발 키트(Java Development Kit, JDK)는 자바 애플리케이션을 구축하기 위한 핵심 플랫폼 구성요소다. 이 중심에는 자바 컴파일러(Compiler)가 있다. Credit: Nic McPhee (CC BY-SA 2.0) JDK는 자바 가상 머신(Java Virtual Machine, JVM), 그리고 자바 런타임 환경(Java Runtime Environment, JRE)과 함께 자바 프로그래밍에 사용되는 3대 핵심 기술 패키지 가운데 하나다. 이 3가지 기술이 어떻게 연결되어 있는지, 또한 어떻게 다른지 구별하는 것이 중요하다. - JVM은 프로그램을 실행하는 자바 플랫폼 구성요소다. - JRE는 JVM을 생성하는 디스크 상의 부분이다. - JDK는 개발자들이 JVM과 JRE에 의해 실행되고 구동될 수 있는 자바 프로그램을 생성할 수 있게 해준다. 자바를 처음 접하는 개발자는 JDK와 JRE를 혼동하는 경우가 종종 있다. 다른 점은 JDK가 자바 기반 소프트웨어를 개발하기 위한 도구들로 이뤄진 패키지인 반면, JRE는 자바 코드를 실행하기 위한 도구들로 구성된 패키지라는 점이다. JRE는 단지 자바 프로그램을 구동하기 위한 독립형 구성요소로써 사용될 수도 있지만, 동시에 JDK의 일부이기도 하다. 자바 프로그램을 구동하는 것이 자바 프로그램 개발의 일환이기 때문에 JDK는 JRE를 필요로 한다. 다음 그림은 JDK가 자바 애플리케이션 개발 라이프사이클에서 어디에 속하는 지를 보여준다. Credit: Matthew Tyson DK에 대한 기술적 정의와 일반적 정의는 다음과 같다. - 기술적 정의: JDK는 컴파일러와 클래스 라이브러리(Class Library)를 포함하는, 자바 플랫폼 사양서의 구현이다. - 일반적인 정의: JDK는 개발자가 자바 기반 애플리케이션 개발을 위해 다운로드하는 소프트웨어 패키지다. JDK와 자바 컴파일러 모든 JDK는 자바 애플리케이션 구동에 이...

자바 Java JDK Java Development Kit

2018.09.19

자바 개발 키트(Java Development Kit, JDK)는 자바 애플리케이션을 구축하기 위한 핵심 플랫폼 구성요소다. 이 중심에는 자바 컴파일러(Compiler)가 있다. Credit: Nic McPhee (CC BY-SA 2.0) JDK는 자바 가상 머신(Java Virtual Machine, JVM), 그리고 자바 런타임 환경(Java Runtime Environment, JRE)과 함께 자바 프로그래밍에 사용되는 3대 핵심 기술 패키지 가운데 하나다. 이 3가지 기술이 어떻게 연결되어 있는지, 또한 어떻게 다른지 구별하는 것이 중요하다. - JVM은 프로그램을 실행하는 자바 플랫폼 구성요소다. - JRE는 JVM을 생성하는 디스크 상의 부분이다. - JDK는 개발자들이 JVM과 JRE에 의해 실행되고 구동될 수 있는 자바 프로그램을 생성할 수 있게 해준다. 자바를 처음 접하는 개발자는 JDK와 JRE를 혼동하는 경우가 종종 있다. 다른 점은 JDK가 자바 기반 소프트웨어를 개발하기 위한 도구들로 이뤄진 패키지인 반면, JRE는 자바 코드를 실행하기 위한 도구들로 구성된 패키지라는 점이다. JRE는 단지 자바 프로그램을 구동하기 위한 독립형 구성요소로써 사용될 수도 있지만, 동시에 JDK의 일부이기도 하다. 자바 프로그램을 구동하는 것이 자바 프로그램 개발의 일환이기 때문에 JDK는 JRE를 필요로 한다. 다음 그림은 JDK가 자바 애플리케이션 개발 라이프사이클에서 어디에 속하는 지를 보여준다. Credit: Matthew Tyson DK에 대한 기술적 정의와 일반적 정의는 다음과 같다. - 기술적 정의: JDK는 컴파일러와 클래스 라이브러리(Class Library)를 포함하는, 자바 플랫폼 사양서의 구현이다. - 일반적인 정의: JDK는 개발자가 자바 기반 애플리케이션 개발을 위해 다운로드하는 소프트웨어 패키지다. JDK와 자바 컴파일러 모든 JDK는 자바 애플리케이션 구동에 이...

2018.09.19

오라클, 더 이상 자바 EE를 이끌 생각 없다

오라클은 엔터프라이즈 자바를 다른 누군가가 이끌어가길 바라고 있다. 아파치(Apache)와 이클립스(Eclipse)가 자바 EE를 인수할 가능성이 높다. Credit: Getty Images Bank 오라클은 엔터프라이즈 자바 개발에서 리더십을 내려놓기를 원하며 이를 맡아줄 오픈소스 재단을 찾고 있다. 오라클은 곧 출시될 자바 EE(Enterprise Edition) 8이 플랫폼 개발 방법을 재고할 수 있는 기회를 제공한다고 발표했다. 개발은 커뮤니티의 참여로 오픈소스를 통해 이뤄지지만, 현재 오라클 주도의 프로세스는 전혀 민첩하지 않고 유연하지도, 개방적이지도 않다. 오라클은 이번 성명서를 통해 "자바 EE 기술을 오픈소스 재단에게 맡기는 것이 바로 다음 단계일 수 있으며, 이것이 민첩한 프로세스를 채택하고 유연한 라이선싱을 구현하며 거버넌스 프로세스를 변화시킬 수 있다고 믿는다"고 밝혔다. 과거 자바의 아버지로 알려진 제임스 고슬링은 오라클에게 자바를 무료로 제공할 것을 촉구했으며, 심지어 그는 이런 움직임을 촉구하는 티셔츠를 내놓기도 했다. 오라클은 오픈소스 커뮤니티, 라이선스 사용자, 후보 재단들에게 자바 EE를 떠넘기려는 계획이다. 비록 오라클은 가능성있는 후보자들의 이름은 지정하지 않았지만, 아파치 소프트웨어 재단(Apache Software Foundation)과 이클립스 재단(Eclipse Foundation)이 그 역할을 맡을 가능성이 높다. 이미 오라클은 오픈오피스(OpenOffice) 생산성 제품군과 넷빈즈(NetBeans) IDE를 아파치에게, 허드슨(Hudson) 통합 서버를 이클립스에게 기증했다. 자바와 마찬가지로 오픈오피스, 넷빈즈, 허드슨 이 세 가지 기술은 오라클이 2010년 썬마이크로시스템즈를 인수하면서 같이 인수한 것이다. 이클립스 전무 마이크 밀린코비치는 "이클립스를 선택하면 자바 EE를 사용할 준비가 된 것이다"며, "우리는 자바 E...

오라클 자바 Java

2017.08.21

오라클은 엔터프라이즈 자바를 다른 누군가가 이끌어가길 바라고 있다. 아파치(Apache)와 이클립스(Eclipse)가 자바 EE를 인수할 가능성이 높다. Credit: Getty Images Bank 오라클은 엔터프라이즈 자바 개발에서 리더십을 내려놓기를 원하며 이를 맡아줄 오픈소스 재단을 찾고 있다. 오라클은 곧 출시될 자바 EE(Enterprise Edition) 8이 플랫폼 개발 방법을 재고할 수 있는 기회를 제공한다고 발표했다. 개발은 커뮤니티의 참여로 오픈소스를 통해 이뤄지지만, 현재 오라클 주도의 프로세스는 전혀 민첩하지 않고 유연하지도, 개방적이지도 않다. 오라클은 이번 성명서를 통해 "자바 EE 기술을 오픈소스 재단에게 맡기는 것이 바로 다음 단계일 수 있으며, 이것이 민첩한 프로세스를 채택하고 유연한 라이선싱을 구현하며 거버넌스 프로세스를 변화시킬 수 있다고 믿는다"고 밝혔다. 과거 자바의 아버지로 알려진 제임스 고슬링은 오라클에게 자바를 무료로 제공할 것을 촉구했으며, 심지어 그는 이런 움직임을 촉구하는 티셔츠를 내놓기도 했다. 오라클은 오픈소스 커뮤니티, 라이선스 사용자, 후보 재단들에게 자바 EE를 떠넘기려는 계획이다. 비록 오라클은 가능성있는 후보자들의 이름은 지정하지 않았지만, 아파치 소프트웨어 재단(Apache Software Foundation)과 이클립스 재단(Eclipse Foundation)이 그 역할을 맡을 가능성이 높다. 이미 오라클은 오픈오피스(OpenOffice) 생산성 제품군과 넷빈즈(NetBeans) IDE를 아파치에게, 허드슨(Hudson) 통합 서버를 이클립스에게 기증했다. 자바와 마찬가지로 오픈오피스, 넷빈즈, 허드슨 이 세 가지 기술은 오라클이 2010년 썬마이크로시스템즈를 인수하면서 같이 인수한 것이다. 이클립스 전무 마이크 밀린코비치는 "이클립스를 선택하면 자바 EE를 사용할 준비가 된 것이다"며, "우리는 자바 E...

2017.08.21

오라클 조지스 사브가 말하는 '자바의 성공과 실패, 그리고 미래'

자바(JAVA)는 썬마이크로시스템즈가 개발했지만 2010년 초, 오라클이 썬을 인수한 이후에는 오라클이 자바 플랫폼을 이끌고 있다. 이 기간 동안 오라클은 자바 7과 자바 8을 출시했고, 내년에는 버전 9를 내놓을 계획이다. 인포월드는 최근 오라클 자바 플랫폼 그룹 소프트웨어 개발 부문 부사장인 조지스 사브와 20주년을 맞은 자바의 성공과 실패, 그리고 미래에 대해 논했다. 인포월드: 오라클은 5년 반 동안 자바를 책임지고 있다. 오라클에게 자바 20주년이 갖는 의미는 무엇인가? 사브: 오라클은 자바가 나아갈 길을 정했고 커뮤니티가 계속 적극적으로 활동하면서 기술 발전을 이끌도록 했다. 물론 오라클 스스로도 열렬한 자바 사용자이기도 하다. 20주년을 맞아 지금까지 자바가 이룬 성과에 만족하며 이제 앞으로의 20년을 생각할 때다. 자바의 주요 이정표 인포월드: 20년 자바의 역사에서 가장 중요한 이정표는 무엇인가? 사브: 지금까지 여러 주요 릴리스가 출시되어 왔다. 물론 처음 릴리스되기 전 자바의 향후 역할을 규정하는 비전 단계까지만 해도 자바는 셋톱박스 같은 임베디드 기기에 사용될 기술로 구상됐다. 초창기에는 클래스 라이브러리 등이 빈약했지만 차차 확장됐고, 웹이 처음 부상하는 과정에서 예를 들어 브라우저에서의 자바 활용 등이 인기를 얻게 됐다. 초기 성숙 단계와 이후 라이브러리 확장, 그리고 지금 단계에 이르기까지 가장 대대적인 릴리스는 1.2였다. 그리고 EE(엔터프라이즈 에디션) 등장 역시 중요한 이정표였다. 자바의 발전 방향 인포월드: 자바의 향후 계획은 무엇인가? 자바 8에는 함수형 프로그래밍 기능이 도입됐고, 자바 9에는 모듈성이 구현됐다. 아직 공개되지 않은 자바 로드맵이 있는가? 사브: OpenJDK JEP(JDK Enhancement Proposal) 프로세스 페이지(http://openjdk.java.net/jeps/0)에 현재 논의되는 아이디어를 포함한 모든 제안이 정리되어 있다. 제안된 JE...

오라클 자바 Java 20주년

2015.05.22

자바(JAVA)는 썬마이크로시스템즈가 개발했지만 2010년 초, 오라클이 썬을 인수한 이후에는 오라클이 자바 플랫폼을 이끌고 있다. 이 기간 동안 오라클은 자바 7과 자바 8을 출시했고, 내년에는 버전 9를 내놓을 계획이다. 인포월드는 최근 오라클 자바 플랫폼 그룹 소프트웨어 개발 부문 부사장인 조지스 사브와 20주년을 맞은 자바의 성공과 실패, 그리고 미래에 대해 논했다. 인포월드: 오라클은 5년 반 동안 자바를 책임지고 있다. 오라클에게 자바 20주년이 갖는 의미는 무엇인가? 사브: 오라클은 자바가 나아갈 길을 정했고 커뮤니티가 계속 적극적으로 활동하면서 기술 발전을 이끌도록 했다. 물론 오라클 스스로도 열렬한 자바 사용자이기도 하다. 20주년을 맞아 지금까지 자바가 이룬 성과에 만족하며 이제 앞으로의 20년을 생각할 때다. 자바의 주요 이정표 인포월드: 20년 자바의 역사에서 가장 중요한 이정표는 무엇인가? 사브: 지금까지 여러 주요 릴리스가 출시되어 왔다. 물론 처음 릴리스되기 전 자바의 향후 역할을 규정하는 비전 단계까지만 해도 자바는 셋톱박스 같은 임베디드 기기에 사용될 기술로 구상됐다. 초창기에는 클래스 라이브러리 등이 빈약했지만 차차 확장됐고, 웹이 처음 부상하는 과정에서 예를 들어 브라우저에서의 자바 활용 등이 인기를 얻게 됐다. 초기 성숙 단계와 이후 라이브러리 확장, 그리고 지금 단계에 이르기까지 가장 대대적인 릴리스는 1.2였다. 그리고 EE(엔터프라이즈 에디션) 등장 역시 중요한 이정표였다. 자바의 발전 방향 인포월드: 자바의 향후 계획은 무엇인가? 자바 8에는 함수형 프로그래밍 기능이 도입됐고, 자바 9에는 모듈성이 구현됐다. 아직 공개되지 않은 자바 로드맵이 있는가? 사브: OpenJDK JEP(JDK Enhancement Proposal) 프로세스 페이지(http://openjdk.java.net/jeps/0)에 현재 논의되는 아이디어를 포함한 모든 제안이 정리되어 있다. 제안된 JE...

2015.05.22

20살의 자바, 이상하고 기나긴 탄생과 죽음 그리고 부활

자바(JAVA)의 나이가 벌써 20세다. 앞으로 어떤 삶을 살게 될까? 자바를 만들었던, 그리고 현재 이끌어 가는 이들에게 자바의 탄생과 과정, 그리고 부활의 얘기를 들어봤다. 1995년 5월 23일, 썬마이크로시스템즈(Sun Microsystems)가 4년간 추진한 프로젝트가 결실을 맺었다. 다름 아닌 자바(Java)다. C와 유사한 문법(syntax)의 자바는 코드를 네이티브 플랫폼에 런타임(runtime)으로 컴파일링한 가상 머신을 사용하는 곳이라면 어디에서나 실행시킬 수 있다. 1991년, 제임스 고슬링을 책임자로 썬 엔지니어들로 구성된 소규모 팀이 차세대 디지털 소비자 기기와 컴퓨터용 네트워킹 시스템 및 언어 개발에 나서면서 자바 개발 프로젝트가 시작됐다. 자바는 20년이라는 역사동안 굴곡을 넘나들었다. 자바 사용이 급증했으며, 마이크로소프트와 오랜 소송전에 휩싸였고, 데스크톱을 기반으로 성장했다가 소멸한 적도 있었으며, 서버와 휴대폰으로 옮겨갔다가 스마트폰으로 인해 좌절을 겪었으며, 미국 국토안보부(DHS)로부터는 사용 금지라는 굴욕을 당했다. 그리고 지금은 오라클(Oracle)이라는 우산 아래 르네상스를 맞고 있다. 자바처럼 굴곡을 겪은 프로그래밍 언어가 또 있을까? 썬이 이 프로젝트를 시작했을 때 컴퓨터 산업은 휴대폰과 스테레오 시스템, 철도 등 비컴퓨터 산업과 충돌하는 현상을 일어나고 있었다. 그리고 이런 충돌이 컴퓨터 과학(Computer Science)를 어떤 형태로든 재탄생시키고 있음을 의미했다. 지금은 리퀴드 로보틱스(Liquid Robotics)의 수석 소프트웨어 아키텍트로 재직하고 있는 고슬링은 "네트워킹이 문제였다. 이 회사들은 독자적으로 네트워킹을 설계하고 있었지만, 큰 성과를 이뤄내지 못하고 있었다. 예측 가능한 부분이 많았었다. 우리가 30년 전 시도한 컴퓨터 과학과 관련된 실험을 반복하고 있었다"고 말했다. 소비자 전자제품 산업은 네트워킹을 고려하지 않고...

자바 개발자 Java

2015.04.24

자바(JAVA)의 나이가 벌써 20세다. 앞으로 어떤 삶을 살게 될까? 자바를 만들었던, 그리고 현재 이끌어 가는 이들에게 자바의 탄생과 과정, 그리고 부활의 얘기를 들어봤다. 1995년 5월 23일, 썬마이크로시스템즈(Sun Microsystems)가 4년간 추진한 프로젝트가 결실을 맺었다. 다름 아닌 자바(Java)다. C와 유사한 문법(syntax)의 자바는 코드를 네이티브 플랫폼에 런타임(runtime)으로 컴파일링한 가상 머신을 사용하는 곳이라면 어디에서나 실행시킬 수 있다. 1991년, 제임스 고슬링을 책임자로 썬 엔지니어들로 구성된 소규모 팀이 차세대 디지털 소비자 기기와 컴퓨터용 네트워킹 시스템 및 언어 개발에 나서면서 자바 개발 프로젝트가 시작됐다. 자바는 20년이라는 역사동안 굴곡을 넘나들었다. 자바 사용이 급증했으며, 마이크로소프트와 오랜 소송전에 휩싸였고, 데스크톱을 기반으로 성장했다가 소멸한 적도 있었으며, 서버와 휴대폰으로 옮겨갔다가 스마트폰으로 인해 좌절을 겪었으며, 미국 국토안보부(DHS)로부터는 사용 금지라는 굴욕을 당했다. 그리고 지금은 오라클(Oracle)이라는 우산 아래 르네상스를 맞고 있다. 자바처럼 굴곡을 겪은 프로그래밍 언어가 또 있을까? 썬이 이 프로젝트를 시작했을 때 컴퓨터 산업은 휴대폰과 스테레오 시스템, 철도 등 비컴퓨터 산업과 충돌하는 현상을 일어나고 있었다. 그리고 이런 충돌이 컴퓨터 과학(Computer Science)를 어떤 형태로든 재탄생시키고 있음을 의미했다. 지금은 리퀴드 로보틱스(Liquid Robotics)의 수석 소프트웨어 아키텍트로 재직하고 있는 고슬링은 "네트워킹이 문제였다. 이 회사들은 독자적으로 네트워킹을 설계하고 있었지만, 큰 성과를 이뤄내지 못하고 있었다. 예측 가능한 부분이 많았었다. 우리가 30년 전 시도한 컴퓨터 과학과 관련된 실험을 반복하고 있었다"고 말했다. 소비자 전자제품 산업은 네트워킹을 고려하지 않고...

2015.04.24

자바 EE 7의 11가지 주요 개선점

자바 엔터프라이즈 에디션 최신판이 마침내 나왔다. 많은 기대 속에서 오라클은 어제 자바 EE 7을 공개했고, 이제 자바 엔지니어들은 자바 EE 7 SDK와 오픈 소스 글래스피쉬 4 애플리케이션 서버를 이용할 수 있다. 자바 엔터프라이즈 에디션 7은 HTML5 도입, 간소화된 JMS(Java Message Service), 업데이트된 웹 프로필 등 여러 부분이 개선 또는 조정됐다. 이를 통해 클라우드 측면을 강화한 자바를 위한 기초를 다지고 있다. 가트너 애널리스트 마크 드라이버는 자바 EE 7을 다음 또는 다다음 버전의 자바가 지향하는 '더욱 클라우드 중심적인' 자바를 위한 초석으로 정의했다. 자바 EE 7에 적용된 주요 기능들은 다음과 같다. editor@itworld.co.kr

오라클 Java 자바 EE

2013.06.19

자바 엔터프라이즈 에디션 최신판이 마침내 나왔다. 많은 기대 속에서 오라클은 어제 자바 EE 7을 공개했고, 이제 자바 엔지니어들은 자바 EE 7 SDK와 오픈 소스 글래스피쉬 4 애플리케이션 서버를 이용할 수 있다. 자바 엔터프라이즈 에디션 7은 HTML5 도입, 간소화된 JMS(Java Message Service), 업데이트된 웹 프로필 등 여러 부분이 개선 또는 조정됐다. 이를 통해 클라우드 측면을 강화한 자바를 위한 기초를 다지고 있다. 가트너 애널리스트 마크 드라이버는 자바 EE 7을 다음 또는 다다음 버전의 자바가 지향하는 '더욱 클라우드 중심적인' 자바를 위한 초석으로 정의했다. 자바 EE 7에 적용된 주요 기능들은 다음과 같다. editor@itworld.co.kr

2013.06.19

IDG 설문조사

회사명:한국IDG 제호: ITWorld 주소 : 서울시 중구 세종대로 23, 4층 우)04512
등록번호 : 서울 아00743 등록일자 : 2009년 01월 19일

발행인 : 박형미 편집인 : 박재곤 청소년보호책임자 : 한정규
사업자 등록번호 : 214-87-22467 Tel : 02-558-6950

Copyright © 2022 International Data Group. All rights reserved.

10.4.0.31