나는 처음에 자바 혐오자였다
C/C++처럼 메모리 주소를 직접 컨트롤 할 수 있는 부분에서 변태같이 메달렸고
C게열이 좋았음 지금은 자바함
안드로이드 개발하는데 안드로이드 스튜디오 개발환경 권장 8~16GB인데 4GB에서 작업하다가
펑 터진적 많아서 씹극혐하고 있음 지금 자바를 하고있지만 안드로이드는 극혐함
어쨋든간에 서론 때려치우고 본론으로 들어가면 나무위키 읽고 소감 써봄
처음에 자바를 javac 로 접하고 날코딩하고 IDE인 이클립스로 가겠지
나 또한 그런 커리큘럼을 타고 c언어 기본기가 있었기에 자바를 빠르게 습득할 수 있었음
근데 자바 처음 배운사람들의 문제는 java로 절차지향 코딩을 한다는게 문제임
클래스가 단순히 구조체의 확장판이라고 생각하고 사용함(내가 그랬음)
자바 책 한 5번정도 정독하고나면 객체지향의 특성들이 보인단 말이지
인터페이스, 상속, 다형성, 예외처리, 직렬화, 추상클래스 등등
객체지향 특성좀 알게되면 아 나 이제 자바좀 하는구나
객체지향좀 하는구나 자만에 빠지게됨
사실 좆도 없는데 말이야
그러다가 자바로 뭘 할 수 있나? 찾아보니깐
웹/앱 밖에 없다는거야 앱은 극혐이라서 웹으로 입문하기 시작했지
jsp/servlet을 하라네 그래서 했지
하면서 딱히 뭐 객체지향특성을 사용하는건 알겠는데
왜 이걸 쓰는지 이점을 몸에 와닿지도 않음
그냥 예외처리하고 상속해서 쓰는구나 이정도?
그냥 쓰면 이런 부분에서 좋구나 하고 넘어감
MVC model2 들어가면 아 개발자랑 디자이너 역할분담해야되는구나
그렇구나 이러고 넘어가고 결국 최종 목적지인 spring에 도달하게됨
spirng에 입문하게 되면 난해한 용어들이 처음부터 나타나게 된다
inversion of Control(역전의 제어)
Dependency Injection(의존성 주입)
Plain Old Java Object(POJO)
Aspect Oriented Programming(AOP)
Separation of Concerns(관심사 분리)
...
존나 멘붕오지만 꾸역꾸역 하다보면 느끼게 된다
확실하게 확장성과 유연성에 대한 이점이 몸에 와닿는다
이게 객체의 진정한 아름다움이구나
추상화라는게 이런것이구나...
IoC/DI 개념 자체가
리팩토링이랑 객체지향설계 핵심에 맞춰진 프로그래밍 모델이다 보니
어쩔 수 없이 리팩토링이랑 객체지향설계 디자인패턴을 공부하게 됨
이거 공부하면서 점점 객체지향의 근본을 알아가기 시작하지
고급프로그래머가 되는거 같은 기분과 국비충 지잡충과 다르다는
우월감에 빠지게 된다.
차별화된 기분이랄까...?
근데 할게 존나 많아요
나무위키 말대로 진짜 자바를 제대로 공부하면 학습량이 산더미임
java, ide, 메이븐, Git, JDBC, Spring JDBC, Mybatis framework
리팩토링, TDD, 디자인패턴, html, css, js, jquery, jsp/servlet
orm, jpa, hibernate 등등
어찌됬든 내가 스프링 프레임워크를 빠는 이유는
객체의 근본적인 아름다움을 느낄 수 있음에 있다
그런 아름다움을 느끼려면 스프링을 시작하라!
python도 해보고
gpgpu한다고 cuda 플랫폼도 써보고
c#도 해보고
c++도 해보고
c도 해봤는데
나한테 맞는건 java계열 웹개발이더라고
그래서 나는 웹땔감이 되기로 마음 먹었다
끝
아재 스프링 몇 써요?
개발환경은 3.8인디 공부는 토비스프링3.1 봅니다
그런데 그런거 몇년 안에 배울 수 있는거 아닌가?
쉽진 않겟지만
그리고 말한 것 중에 JAVA 배우면서 알 수 있는것도 많지 않나요?
그렇게 제네럴 리스트가 되어가는거징 ㅇㅇ
국비충들은 단기로 6개월만에 하던데 제대로 하려면 더 오래 걸리지 자바 15년차 개발자도 아직도 배울게 많다고 얘기하는데
근데 EJB 경험 안 해본 땔감들이 대부분일텐데 이제 와서 경량화의 장점이라고 POJO 가르쳐대면 솔직히 안 와닿는 거 같음 다른 언어들이 워낙 가벼워서
EJB 경험해보면 스프링이 더 빡세게 와닿을 거라고 생각함 근데 경험 없이도 와닿음 ㄹㅇ
근데 ORM베이스로 DDD하면서 TDD도 체계적으로 하는 회사가 한국에 존재할 수가 있어여? 쿠팡이 그렇다는 전설만 들었는데 횽은 그렇게 하고 계시는 거?
ㄴㄴ 저는 단순히 대학생입니더, ORM 베이스로 하라는건 "박재성"님이 미래를 위해 대비하라고 해서 언급한거 뿐임돠
아 글쿤여...
이래서 존경한다
inversion of Control(역전의 제어) -> inversion of Control(제어의 역전)
ㅊㅊ