Q: 자바를 배울 필요가 있나요?
프로그래머를 꿈꾸며 공부하는 대학교 신입생들이 자주 물어보는 질문이다.
특히 한국 학생들이 많이 질문하는 내용 중에 하나가 바로 자바에 대한 이야기이다.
미국 학생들은 대학교 이전부터 학교에서 프로그래밍 교육을 받아서인지 아니면 빠른 변화에 대처하는 한국 학생들의 염려와 걱정인지 몰라도 자바 언어에 대한 관심은 한국 학생들이 더 많았다.
자바 언어가 정체되어 있고 앞으로는 자바를 대신하여 파이썬과 같은 대체할 수 있는 편리한 언어가 많기 때문에 프로그래밍 공부를 시작하는 새내기에게는 프로그래밍 언어의 선택이 큰 걱정과 고민으로 와닿는다.
필자는 자바 언어를 자주 쓰는 분야가 아니다 보니, 사실 자바 언어에 대해서 호의적인 생각을 가지고 있진 않다.
필자가 자주 사용하는 언어가 아니다 보니 익숙하지 않은 것도 있고 자바보다 다른 언어로도 충분히 원하는 프로그램 개발이 가능하며 언어적 사용이 훨씬 더 편리하기 때문이다.
이처럼 파이썬과 같이 다양한 분야에 사용이 가능하고 상대적으로 개발이 편리하다 보니 많은 현직 개발자들은 자바와 같은 기존 언어들은 신생 언어나 지속적으로 업데이트되는 언어들로 대체될 것으로 예측한다.
마치 플러터에서 사용하는 다트가 1년 사이에 프로그래밍 언어 순위권이 급격히 상승했듯이 말이다.
그럼에도 불구하고 국내뿐만 아니라 미국 대학교에서 기초 프로그래밍 언어 교육 중 하나로 자바를 가르치고 기관이나 기업에서도 자바 기반 프로그램을 지속적인 개발 및 유지관리가 이루어지고 있다.
필자도 프로그래밍 배우기 시작하는 개발자라면 자바를 알아둬서 나쁠 게 없다고 생각한다.
# 자바를 가르치는 이유?
자바를 가르치는 다양한 이유가 있겠지만 제일 중요한 이유는 자바가 필요하고 사용되기 때문이라고 본다.
자바라는 언어를 기반으로 개발되는 다양한 프로그램과 기존에 개발되어 유지 관리되는 프로그램이 많다.
물론 이론적으로 자바를 사용하지 않고도 같은 프로그램을 효율적으로 개발하고 유지 관리가 더 용이할 수는 있다.
하지만 현실에서는 언어적 효율성이 전체 효율성을 의미하지 않는다.
현재 기업이나 기관에서 기존 자바 언어 기반 툴(Tool)을 활용해서 프로그램 개발 및 유지관리가 이루어진다는 것은 복합적인 요소를 따져 보았을 때 새로운 언어나 새로운 툴(Tool)의 사용을 당장 시급히 전환될 필요가 없다고 판단하기 때문이다.
이 말인즉슨, 프로그래밍 언어적 관점에서는 자바 이외의 언어가 더 효율적인지는 몰라도 전반적인 상황을 고려해보았을 때는 효율성이 다소 떨어지더라도 현재 상태를 유지하는 게 이익이라는 것이다.
물론 추후에 전반적인 효율성이 자바 언어와 자바 언어 기반 툴 사용을 버리는 게 이익이라면 상황은 바뀌겠지만
현재로써는 자바 언어의 사용이 필요하다는 것이다.
# 자바 언어가 필요 없는 분야라면?
사실 자바 언어 자체를 사용하지 않는다면 왜 배워야 하나 싶을 것이다.
특히 한국의 경우 프로그래밍에 대한 공통적이고 전반적인 내용을 배우는 대학교 학부생이라면 더더욱 이런 생각이 들 수 있다.
필자는 미국에서 대학교를 다녔지만, 필자도 1학년 때 같은 생각을 가졌었다. AI 프로그래밍을 중점적으로 공부할 건데 자바 언어가 필요할까?라는 의구심이 들었던 건 사실이다.
하지만 자바 언어는 그저 프로그래밍 언어라는 점을 알아야 한다.
조금 과장스럽고 극단적인 예를 들어 보자면, 프로그래밍을 공부하는 학생이 자신이 일하고 싶은 분야가 실시간 상황을 판단하여 자율 유도 미사일 프로그램을 만드는 분야라고 가정하자.
이 학생이 자신이 가고 싶은 분야에 대한 공부를 위해 채팅 앱 개발을 해보며 시간을 보낼 것이라고 한다면 어떻게 생각하는가?
조금 더 현실적인 예시를 들자면, 필자에게 물어보는 친구들 중에서 자신은 AI 개발자가 되고 싶은데 웹 프로그래밍 공부를 할 것이라고 한다.
그 이유는 "많이들" 하니까 좋은 것 같아서 한다고 한다.
결론은 잘못되었다는 것이다.
자기가 가고 싶은 분야가 정해져 있고 가고 싶은 분야에 대한 공부가 이루어지지도 않은 상태에서 다른 분야에 공부를 하는 것은 잘못되었다.
그렇다면 자바도 공부하면 안 되는 것 아닌가라고 한다면 아니라는 것이다.
자바는 프로그래밍 언어이다.
프로그래밍 언어에서도 공통적으로 많이 사용되는 객체지향 언어(Object Oriented Programming)이다.
자신의 분야가 애매하다면 실무에서 다양하게 사용되는 프로그래밍 언어인 자바를 배우는 것은 좋다고 판단하여 대학생들에게 기초 수업으로 자바 언어를 가르치는 것이다.
또한 자바 언어를 기초 수업 때 배우고 익히면서 프로그래밍 언어에 대한 이해도를 높일 수 있다.
필자의 지도 교수님이 하셨던 말씀이, "하나의 프로그래밍 언어를 완벽히 이해한다면 다른 언어를 배우는 것은 더 쉽다.하지만 여러 개의 언어를 대충 안다면 프로그램 개발을 하기 어렵다."라고 하셨다.
따라서 자바 언어를 배운다는 것은 나쁘지 않다는 것이다.
본인이 가고자 하는 방향이 확실하고 자바 언어가 필요 없을지 언정, 학부생 때 필수 수업으로 자바가 있다면 싫어하지 말라는 것이다.
어차피 해야 한다면 자바 언어를 배워두는 것도 나쁘지 않다.
필자도 기초 자바 수업을 들으면서 불평불만을 가졌지만 돌이켜 본다면 그 당시에 자바 언어를 가지고 연습을 했기 때문에 다른 언어들도 쉽게 이해하고 다룰 수 있게 된 것 같다.
'미국 개발자 > HOOTips' 카테고리의 다른 글
[Q&A] 유학생 컴공 전과 괜찮나요? (0) | 2022.02.10 |
---|---|
[Q&A] 알고리즘 문제를 푸는 것이 실력 향상에 도움이 될까요? (0) | 2022.01.20 |
[HOO's INFO] 신입 개발자가 경력 쌓는 방법: 자격증, Certificate (0) | 2022.01.16 |
[HOO's INFO] 메타버스(Metaverse)란? (0) | 2022.01.05 |
[HOO's INFO] CSV 파일 한글 깨짐 현상 해결하는 법: 엑셀에서 인코딩 바꿔주기 | CSV File | Excel (0) | 2021.12.18 |
댓글