[JAVA Tips] Intro

Sierra·2022년 11월 22일
0

JAVA Tips

목록 보기
1/3
post-thumbnail

Intro

학부 시절에는 Java 의 문법에 대해 어느정도 알고 있다고 생각했지만, 쓰면 쓸 수록 Java는 새롭게 느껴지는 건 어쩔 수 없다. 사실 백엔드 개발자라는 진로를 위해서는 Java는 전공 필수 마냥 공부해야 한다. Javascript나 Python 으로 서버를 개발하는 경우도 많지만, 결국 Java를 이해하고 있어야 수 많은 기존 프로젝트들을 이해할 수 있다.

물론 최근 들어서는 Kotlin으로 Spring 프로젝트를 하는 경우도 많아졌다. Kotlin의 빌드 속도가 최근 상당히 빨라짐에 따라 언젠간 Java를 대체할 것이라고 보는 사람들이 아주 많다. 하지만 Java 가 파이가 줄더라도 사라질 가능성은 크지 않다고 본다. 이유는 신뢰성 때문이라고 본다. 그 오랜 시간동안 많은 사람들이 선택한 만큼 레퍼런스 할 자료도 많고 JVM의 속도 문제는 더이상 큰 의미는 없다 생각한다. 10년 전에 비해서도 현재 컴퓨터의 성능은 비약적으로 상승했다. 당장 i5 CPU가 10년 전에는 4코어였고 많은 사람들이 환호했었다. (대충 아이비브릿지에서 하스웰 시절 이야기다. GTA 5 가 아니라 GTA 4도 사양 높다고 하던 시절...) 이제는 RAM 이 8GB가 달려있으면 저사양 소리를 들을 때가 되었다. 물론 개발 용도로 말이다...도커 돌리려면 16은 달려있어야 하니까...

사실 작년 이맘때 까지는 C++를 공부했다. 인공지능과 영상처리 쪽에 좀 더 관심이 많았고 백엔드를 하려고 했어도 게임 서버 개발 쪽에 관심이 있었으니까. 현실을 깨닫고 (그 진로가 나쁘단 게 아니라 내 능력이....좀 더 빠르게 일을 시작하자는 생각도 물론 컸다.) 웹으로 진로를 바꾼 후에는 Java를 아주 열심히 공부해야 했다. 학부 시절에 거의 대부분을 쓴 언어긴 하지만 한때 영상처리 분야나 게임서버를 해 보고 싶었던 때에 Java공부에 공백이 생겼었다. 올해 들어서 많이 까먹은 상태로 일을 시작하다보니 새로 알게 된 것도 많았고 제대로 정리해야겠다는 생각이 들었다.

Contents

기본적인 문법에 대해 따로 언급하지는 않으려고 한다. Java의 고급 문법들 위주로 포스팅 해 나갈 생각이고 주로 참고하는 서적은 아래와 같다.

  • Java의 정석
    • 학부 시절에 혼자 보던 책이고 최근 다시 읽어보았다. 역시 매번 복습 할 때마다 새로운 게 보인다더니...책을 읽을 수록 새롭다. 정말 명저니까 읽어보길 바란다.
  • Effective Java 3/E
    • 실무에서 읽게 된 책이다. 기초에서 벗어나고자 싶어서 읽게 되었다.

포스팅하게 될 내용은 아래와 같다. 더 추가될 지 모르겠지만 일단은 이 정도로만 계획 해 두었다.
1. 다시 정리하는 Java 객체지향
2. 컬렉션
3. 제네릭
4. 예외처리
5. 쓰레드
6. 람다와 스트림

우선은 이 정도로 계획 해 두었다. 책을 보고 공부한 내용을 내 경험을 버무려 정리 할 예정이다.

Outro

아무리 Java의 점유율이 떨어진다 한 들, 다른 언어들이라고 해서 문제점이 없는 것은 아니라고 생각한다. 그리고 항상 새로운 코드만 만들어 낼 수는 없다. Kotlin에 대한 스터디 또한 계속 진행하고는 있지만, 결국 Java를 제대로 이해해야지만 다른 언어도 제대로 이해할 수 있다는 생각이 자꾸 들어서, 요즘 들어서 너무 고착화 된 지식들로 인해 갈피를 못 찾는 것 같단 생각이 들었다. 그래서 다시 초심으로 돌아간단 생각으로 시리즈를 시작하였다. 곧 첫번째 포스팅으로 돌아오겠다.

profile
블로그 이전합니다 : https://swj-techblog.vercel.app/

0개의 댓글