
Java란?컴퓨터 프로그램을 만드는 것을 흔히 프로그래밍이라고 해요. 그렇다고 사람의 언어를 컴퓨터가 이해할 수 있는 것은 아니기 때문에 자바, C, C++, C# 같은 프로그래밍 언어를 사용해서 프로그래밍 언어의 문법에 맞는지 확인하고 컴퓨터가 이해할 수 있는 언어로 번역해야 합니다. 이 작업을 컴파일이라고 하고 컴파일 작업을 하는 프로그램을 컴파일이라고 부릅니다. 자바는 개발환경을 설치하면 컴파일러도 같이 설치됩니다. 가장 많이 사용된 언어는 C, C++였는데 독립적으로 작동하는 보다 안정된 프로그래밍 언어가 필요해져서 새로운 프로그래밍 언어를 개발하기 시작했는데 그 결과가 자바입니다.

자바의 특징은?첫 번째는 플랫폼에 영향을 받지 않고 다양한 환경에서 사용할 수 있어요. 즉, 자바는 플랫폼에 종속되지 않는 프로그램을 개발할 수 있다는 것이군요. Java에서 Example이라고 하는 프로그램을 만들고 컴파일하면 Example.class라고 하는 파일이 생성이 됩니다. 이 파일을 바이트 코드라고 하고, 이 바이트 코드를 실행하려면 OS에 맞는 자바 가상 머신이 필요합니다. 운영 체제에서 직접 실행하는 것이 아니라 가상 머신으로 먼저 실행하고 이 가상 머신이 운영 체제에 맞는 완벽한 실행 파일로 바꿉니다. 즉, class 파일을 만들어 놓으면 플랫폼에 속하지 않고 어떤 환경에서든 실행할 수 있게 됩니다. 그래서 다양한 운영체계가 공존하는 인터넷 환경에서도 사용이 가능한 언어입니다.
두 번째로는 객체지향 프로그래밍 언어이기 때문에 유지보수가 용이하고 확장성이 좋습니다. 자바는 객체 지향 언어입니다. 객체지향 프로그래밍이란 일의 순서대로 프로그래밍을 하는 것이 아니라 여러 객체의 협력을 얻어 프로그램을 구현하는 것을 말합니다. 각 오브젝트 상호관계를 이용하여 프로그래밍함으로써 공통적으로 사용하는 부분을 수정하지 않고도 프로그램에 새로운 기능을 쉽게 추가할 수 있습니다. 그래서 객체 지향 언어로 프로그램을 잘 설계하셔야 유지보수가 쉽고 확장성이 좋습니다.
세 번째는 프로그램이 안정적입니다. 자바는 C나 C++와 같이 포인터를 사용하지 않기 때문에 메모리를 직접 제어할 수 없습니다. 프로그램에서 메모리를 직접 제어하면 오류가 발생할 수 있는데, Java에서는 이러한 작업을 프로그래머가 직접 하지 않고 가비지 콜렉터(Garbage Collector)를 이용하므로 메모리를 효율적이고 안정적으로 관리할 수 있습니다.
가비지 콜렉터(Garbage Collector) : 이름 그대로 쓰레기를 수집하는 기능으로 사용하지 않는 동적 메모리를 주기적으로 수집합니다.

Q: 자바 개발자의 주력 분야는? 자바는 다른 프로그래밍 언어에 비해 개발 가능한 소프트웨어의 범위가 상당히 넓은 편이라고 말씀드릴 수 있습니다. 가장 일반적인 스마트폰 애플리케이션에서 시작하여 네이버와 구글, 다음 등의 홈페이지를 개발하는데 필요한 웹 프로그래밍이나 임베디드 등의 분야에서 활용합니다. 이중에서 채용공고만으로 소개되고 있는 분야는 단연 웹 프로그래밍 분야이지만 자바 웹 프로그래밍 개발자도 같은 개발자가 아니고 분야별로 차이가 커서 어느쪽이나 모집이 어려운 분야에서는 스펙을 더 까다롭게 확인하는 경향이 있습니다.

Q: 자바 개발자 관련 자격증은? 자바개발자 관련 자격증으로는 크게 2종류의 국제자진신고증과 국내자격증으로 나뉘는데, 국내자격증 중 자바개발자로 인정되는 자격증은 정보처리자격증이외에는 없다고 보시면 됩니다. 정보처리자격증은 국가공인자격증으로 자바 개발자 분야뿐만 아니라 다른 분야에서도 취득한 상태라면 취업, 우대, 가산점, 자격부여 등의 분야에서 활용이 가능합니다. 국제자격증은 OCAJP와 OCPJP 자격증이 있으나 숙련된 Java 개발자로서의 기술능력을 검증 증명할 수 있으며, 오라클 제품 사용자의 관련 업무별 전문기술지식 정도를 측정하여 대내외적으로 증명할 수 있습니다. 다만 OCAJP와 OCPJP는 취득을 하든 안 하든 그저 그런 이력서에 자격증 한 줄 정도 더 나오는 자격증이니 참고하시기 바랍니다.

Q: 자바 개발자의 난이도는?Ja va 개발자를 비롯한 IT 분야의 직업군은 진입 장벽이 높은 편이지만, Java 개발자들은 비교적 진입 장벽이 다른 직업군에 비해 낮은 편입니다. 비전공자도 충분히 학습을 하고 취업을 준비한다면 가능한 영역이라고 할 수 있습니다. 하지만주변에서주는도움없이혼자학습을하면난이도가조금있기때문에중간에학습을포기하는경향도상당히많습니다. 물론 학습을 정해진 방법대로 하는 것은 아니지만, 누가 가르쳐주는 것이 시간대 효율적인 부분 자체가 좋은 편인데, 특히 자바개발자를 목표로 취업을 준비하고 있다면 국비지원제도를 활용해서 취업에 성공하는 것이 좋습니다.

마무리와 컨설팅 신청, 오늘은 자바 개발자를 알아보았는데, 자바 개발자도 다양한 직업군이 있으니 참고하시기 바랍니다. 직업군이 다양하게 분포되어 있는 만큼 이에 필요한 지식도 다르다는 점에 유의하시기 바랍니다.이번 포스팅을 보시고 자바 개발자에 대해 궁금한 사항이 있으시면 아래 네이버 폼을 통해 컨설팅 요청글을 남겨주시면 친절한 답변과 함께 제가 직접 답변해드릴 수 있으니 참고해 주시기 바랍니다. 이상으로, 이번 포스팅은 여기서 끝입니다. 감사합니다
IT관련 컨설팅을 위해 상담 참고용 앙케이트를 실시하고 있습니다. ^^ 간단한 인적사항과 관심사를 적어주시면 보다 원활한 상담이 가능합니다. 많은 참여 부탁드립니다~:) *은 필수 항목입니다.naver.me