이번주에는 자바 강의를 듣고 알고리즘 문제를 풀었다.
자바가 무엇인지부터 시작해서, JVM, 기본 문법, 객체지향에 대해 공부했다.
항해99 온보딩주차 때부터 자바 공부를 조금씩 했었어서 이번에는 공부했던 내용을 복습하는 느낌이었다.
정리했었던 내용은 내 블로그를 참고하면 좋을 것 같다.
https://eastlight0418.tistory.com/category/Java
'Java' 카테고리의 글 목록
기술 블로그
eastlight0418.tistory.com
처음 자바에 대해 접했던 것은 고등학교때 친구가 코딩하고 있을 때 옆에서 구경했었던 것이었다.
코드를 써서 프로그램을 만들어내는 것이 재미있어 보여서 나도 프로그래밍 공부를 시작했었다.
자바를 시작하기 전에는 다들 어렵다고 해서 걱정되었었다.
막상 해보니 생각보단 더 어려웠었던 것 같다.
자바라는 언어는 객체지향 프로그래밍 언어로써, 상속, 캡슐화, 다형성, 추상화가 잘 적용된 순수한 객체지향이라는 평가를 받는다.
더 자세한 내용은 위 블로그에 정리하였다.
사실 자바는 운영체제에 독립적이라고는 하는데, JVM은 운영체제에 종속적이라고 한다.
나는 이부분에서 과연 자바가 운영체제에 독립적인 것이 맞는 건가 하는 생각이 들었다.
JVM이 자바를 실행하기 위한 가상 기계라고 할 수 있는데, 자바의 코드는 JVM을 거치고나서 OS도 거치고나서 하드웨어로 전달된다. 이 부분에서 해당 OS에서 실행 가능한 JVM이 필요한데, 이 부분에서 자바가 운영체제에 독립적이라고? 하는 모순적인게 아닌가라는 것이 내 생각이다.
또, 처음 자바를 접한 것이 고등학교때 친구가 하던 것을 봤었던 것이라고 했다.
그 친구에게 자바에 대해 설명을 들었을 때는, 대략적인 느낌으로 "자바는 객체자향 프로그래밍 언어야"라고 들었었던 것이 기억이 난다.
그 친구는 나에게
"키보드의 여러 타자를 눌렀을 때 입력되는 내용은 다르지만 내용을 입력한다는 것 자체는 같은 기능이잖아? 그것을 하나하나 일일히 다 만들어야 할까? 하나만 만들고 다 가져다 붙여서 하나로 다 쓸 수 있게 하면 되는거잖아, 그게 객체지향이라는 거야"
라고 설명했다. 당시에는 대충 그렇구나 하고 넘어갔었는데, 지금와서 자바에 대해 공부하면서부터 그 말이 확 와닿고 있다.
아무튼 그렇게 이번주는 항해에서 준 강의의 3주차 내용, 객체지향 프로그래밍까지 공부하고나서 알고리즘 문제들을 풀었다.
자바 공부에 대해서 내가 부족하다는 것을 느껴서 스터디도 시작했다.
항해99 주특기 주차에 들어가기 전에 자바를 어느정도 다룰 수 있게 되는 것을 목표로 하고 있다.
사실 자바를 하면서 객체지향에 대해 모른다는 것은 모순적이다라는 생각을 갖고 객체지향에 대해 더 공부하자라는 생각으로 스터디를 시작했는데, 기왕 하는거 스프링을 배우기 전에 자바를 어느정도 다룰 수 있게끔 성장하자라는 목표로 확장하게 되었다.
알고리즘 문제들을 금요일, 토요일동안 프로그래머스 1단계를 한 40개 정도 푼 것 같다.
풀다가 막혀서 삽질 한 것을 해결한 과정을 TIL로 써봤다.
https://eastlight0418.tistory.com/category/TIL
'TIL' 카테고리의 글 목록
기술 블로그
eastlight0418.tistory.com
앞으로 특별한 일이 없다면 매일
공부한 내용을 가지고, 어려웠던 부분에 대해 TIL을 써볼 생각이다.
알고리즘 문제들을 풀면서 느낀 것인데, 자료구조에 대한 공부를 할 필요성을 느꼈다.
그래서 다음주는 자료구조를 공부하고, 항해에서 준 자바 강의 나머지를 공부할 예정이다.
그리고 알고리즘 문제를 난이도를 좀 높여서 풀게 될 것 같은데,,
일단 해봐야 알 것 같다..
'WIL' 카테고리의 다른 글
WIL - 20230514(미니 프로젝트 WeLuvWine 회고) (0) | 2023.05.15 |
---|---|
WIL - 20230508 (0) | 2023.05.08 |
WIL - 20230430 (0) | 2023.05.01 |
WIL - 20230423 (0) | 2023.04.24 |
WIL - 20230416 (1) | 2023.04.17 |