요즘 코틀린 공부를 한답시고,
코틀린 공식사이트에서 doc의 concepts부분을 해석하고 있었다.
(아직 다 보지도 못했는데, 갑자기 이런 글을 쓰고 싶어졌다.)
이렇게 공부하니 시간이 생각보다 오래 걸리고 있는데,
‘어떻게 해야 공부를 잘할까’를 생각하게 되었다.
그래서 내가 해 온 공부에 대해서,
개인적인 견해로 정리 해보고자한다.
일기, 에세이라고 본다는 느낌으로 봐주었으면 한다.
=============================================
우선,
개발자로서 공부를 해야 하는데,
‘공학’이란 무엇인가에 대해서 한 번 생각해 볼 수 있겠다.
우리는 안드로이드 관련 공부를 하여,
어플리케이션이라는 제품을 만들어야하기 때문이다.
// 공학의 본질 :
(대학생 시절에 타과 교수님이 하신 말씀인데,
내 머릿속에서 약간 변형 되었을 수 도 있다.)
공학의 본질은
제품을 만드는 것,
유용한 제품이나 쓸만 한 것을 만든다.
but,
자본주의에 살고 있기 때문에,
공학으로 제품을 만들어 -> 판매 -> 수익을 얻어야한다.
(회사에서 필요한 공학의 본질이다.)
여기서,
‘그냥 공부’를 하게 되면 문제점? 딜레마?가 있는데
// 공부의 문제점
- 그냥 공부를 하게 되는 것. 내 머릿속에만 있다.
-> 어디 써먹어야지! 공학의 본질을 찾자! 제품을 만들어야해.
까먹음, 잊어버리게 된다.
-> 공부하면 뭐하나! 며칠 지나면 머리에 남는 게 없는데!
( 내가 이 글을 쓴 핵심?! )
// 그래서 어떻게 공부를 해야할까?
- 공부 후, 내 프로젝트에 적용하기
-> 뭔가를 만들어야함. 이것이 공학의 본질.
공자님의 ‘학이시습지 불역열호’가 떠오른다.
- 까먹게 되니까 블로그에 정리. or
까먹는거 감안하고, 그냥 밥 먹듯이 해서 체득하기
- ‘공부를 오랫동안 잡고 할 필요가 있을까?’ 라는 생각도 든다.
실무에서 개발하듯이 프로젝트 잡고, 짧게 공부하여 바로 적용이 필요할 때도 있는 것 같다.
훈련은 전투다 각개 전투!
개발은 실전이다, 바로 공부!
공부 후, 개발이냐
개발하며 공부냐
닭이 먼저일까
달걀이 먼저일까
이제 지금 하던 코틀린 개념 공부가 끝나면,
포트폴리오가 될 프로젝트를 잡고, 저렇게 공부를 할 듯한데,
그래도 베이스가 있어야 할 수 있으니, 저런 고민이 든다.
그리고 이렇게 글을 써보니, 생각이 명확하게 정리되는데,
토이프로젝트를 안하고 있던 게, 내 문제인거 같다.
=============================================
// 그래서 여러 공부 방법들이 있는데 뭐가 최선일까
=>
결론적으로 공부법에 정답이 없다.
본인에게 맞는 방법을 찾기 위해서, 다 해볼 필요성이 있다.
해 본 공부법들에 대해서, 개인적으로 장단점을 적어보았다.
(여기서 추가적으로 강의 만들기, 토이 프로젝트 만들기, 스터디그룹 만들기 등등.. 더 있을 수 있겠다.)
(추천 순으로 나열하였음)
- 기본서(도서)
장점: 처음 입문했을 때, 공부할 순서나 내용이 정리가 잘 되어있기 때문에 좋다.
단점:
첫 부분만 너덜거리고 있게 된다.
한번 읽고 다시는 안 보게 된다.
책장 장식용으로 사용 될 경우가 농후함.
+ 예제를 실습해야함. (눈으로 읽으면, 이해했다고 착각하기 좋음 -> 바로 까먹음)
+ 책을 한번이라도 완독 하는게 좋음.
- 구글 코드랩 (텍스트 설명 + practice)
장점: 처음 적응하는데 시간이 걸리지만, 최신 코틀린 코드랩은 좋음. 실습을 같이하기 때문에 코드 이해하기 좋음(이해 안 되는 상용구 코드도 많던데, 그런건 이해 하기 힘들다). 디버깅이나 테스트코드 짜는 것과 같은 기본서에서 빼먹을 수 있는 기본적이면서도 중요한 것들을 가르쳐줌. 구글, 젯브레인 선생님들에게 배울 수 있는 좋은 교육자료이다.
단점:
개념 설명이 실습할 정도로만 되어있어서 추가적인 공부를 하면 좋음.
설명이 이해가 안 되는 것도 많았다.
최신 코틀린 코드랩은 좋으나, 조금 오래된 코드랩인 자바나, deprecated된 advance부분이나, 컴포즈 pathway 코드랩의 뒷부분의 개념은 이해하기 어려웠음.
- 공식 사이트 정독
장점: 블로그에 정리된 글과 달리, 더 정확한 개념을 이해할 수 있다. (하지만 블로그가 더 쉽게 설명하거나 나을 수도 있다.)
단점: 영어가 안 되면 힘들고, 개발 공부보다는 영어공부가 좀 되는 것 같은 느낌이 든다. 설명이 이해 안 될 때가 많다.
- 내가 블로그 쓰기
장점: 내가 공부 했던 거, 정리하면서 복습
단점:
시간이 오래 걸림.
이미 검색하면 다 나오는 정보들에 대해서, ‘내가 또 포스팅 해둘 필요가 있을까?’라는 생각 때문에 안하게 됨.
내가 포스팅 했던 건 기억 안 나고, 다른 사람이 쓴 글 보고 있을 수도 있겠다.
- 다른 사람 블로그 보기
장점: 딱 필요한 부분만 골라 볼 수 있음. 공부가 아닌, 개발 중에는 블로그가 최고
단점: 단, 내용의 퀄리티가 떨어진다거나, 신뢰할 수 없음.
- 인터넷 강의(인강, 유튜브)
장점: 진도가 잘나간다?
단점:
인강 선생님 혼자 열심히 복습하고 계신다.
나는 한 귀로 듣고, 한 귀로 나간다. (동영상이 그냥 잘 흘러간다)
+ 본인이 실습을 추가해서 해야함
- 국비교육 (6개월)
장점: 매일 출석하여, 스스로 공부를 못해도 공부하게 만들어준다. 같은 처지의 취준생들과 만나서 공부 할 수 있다(???)
단점:
커리큘럼 잘보고 들어가야함. (안드로이드가 커리큘럼에 있어서 들었는데, 웹개발이 메인이었고, 웹 개발자가 될 뻔 했다.)
인강 단점과 유사하게 강사님이 강의하며 복습하시고, 내 머릿속에 안 들어오고 있을 가능성이 높음.
강의 시간 자체가 많아서 개인 공부 할 시간이 적음.
개발 외의 적성? 인성? 교육 시간 같은 게 있었다.
전공자는 강의 내용이 쉬울 수 도 있지만, 진도가 워낙 많아서 체득할 수 없고,
비전공자는 그냥 처음부터(for문.. if문..) 힘들 가능성이 매우 높다.
결론은 추가적으로 독학을 안하게 되면 독이고, 평소에도 스스로 공부를 하게끔 연습을 계속해야함.
- 부트캠프?
안해봤음. 돈없음.
=========================================
// 공부 잘하는 법? (나도 못하지만, 적어는 보았다.)
- 멘탈 & 체력관리 -> 기본중의 기본.
- 공부할 시간 & 돈의 여유(용돈)가 필요함
시간은 알아서 만들어야한다. 나 같은 경우에는 백수라서 공부할 수 있는 시간을 계산해보니, 하루에 10~12시간정도 굴릴 수 있겠지만 사실상 6~8시간 하고 있는 것도 버겁다.
-> 그래서 매일 하는 게, 중요하다. 비록 시간이 적더라도.
‘시작이 반이다‘가 아니라, 시작이 9할인 것 같다.
책 뭐 살까요? -> 그냥 네이버 도서 최상위에 뜨는거 사서 바로 하자.
인강 뭐 볼까요? -> 그냥 유튜브나 인프런 같은 곳 가서 사람들이 많이 본 거 보자.
연봉이 이 정도면 될까요? -> 그냥 공부해서 다른 곳으로 이직하면서 연봉 올리자.
그냥 시작하자 그냥 공부하자.!
어느 유튜버는 용돈이 부족하면, 직무 관련한 알바나 인턴을 하라고 하던데,
취준생이면 개발 쪽에서 알바를 찾기는 쉽지 않을테고,
결국은 학생 때 개발 공부를 해두면 좋다? + 진로가 정확하고 빠르게 결정 되는 게, 중요한 것 같다.
- 공부할 환경 통제
집에서는 항시 TV가 켜져 있고, 트로트 노래가 나오고 있기 때문에 공부를 할 수가 없다.
-> 노이즈 캔슬링 헤드셋을 사봤지만 역부족이다, 여름이라 헤드셋 쓰기는 덥고
스터디카페, 카페 -> 돈도 들고, 노트북 사용이나 충전이 용이하지 못함.
항시 노트북이 필요해서, 도서관으로 출근.
도서관 사물함도 받아놓고 휴대용모니터, 충전기 다 놓고 다니면서 공부하고 있다.
- TODO 리스트 작성
이것이 눈에 안보이게 되면,
마치 인터넷 즐겨찾기에 ‘나중에 봐야지‘하고 넣은 블로그가 되어버린다.
쉽게 계속 보이는 곳에 TODO를 작성해야한다.
나는
노트북에는 윈도우의 앱인 ‘스티커 메모’와
휴대폰 메인 화면에 ‘삼성 노트 앱의 위젯’으로 TODO를 작성해둔다.
하루에 그날 해야 할 1~3가지 할 일(공부할 분량 등)을 정해놓고,
그냥하자.
하지만,
개발 일정 마냥, 내 공부일정도 밀리고 있는 중이다.........
'기타 프로그램관련' 카테고리의 다른 글
구글 결제프로필이 정지 되었을 때. (10) | 2022.09.29 |
---|---|
안드로이드 개발자 코딩용 노트북 사양 추천 (0) | 2022.09.07 |
gitbash 사용 중, fatal: pathspec '.' did not match any files (0) | 2022.04.15 |
안드로이드, 좋은 질문을 하는 방법 (카카오톡 오픈 채팅방에서) (0) | 2022.04.12 |
(해석 미완성..) Apache License 2.0 전문 해석해보자 (0) | 2022.04.04 |