단기적인 로드맵

김영진·2021년 8월 23일
1

목적

회사 업무를 소화해내고 앞으로 추가될 사용해보지못한 플러터 기술에 대한 갈망, 백앤드를 해보고싶은 갈망(노드 클론코딩 해보긴했는데 잘못함), 네이티브 지식에 대한 갈망이 있어서 고민이 되었고 고마운분들께 의견을 들어 단기적인 계획을 수립하고자한다.

내용

플러터

부족한 부분
  1. Animation : 유튜브(제임스님의 영상에 다양한 자료들이 있음) 이것저것 따라하면서 공부하기
  2. Method Channel : 사이드프로젝트에 만보기 기능이 들어가는데 이 기능을 사용하면서 뜯어볼 예정
  3. RxDart : 써봐야하는데 쓸일이 없다,, 일단 보류
  4. InheritedWidget : 상태관리 툴 없이 상태관리를 해봐야할것같다. 우선 사이드프로젝트에서 상태관리 툴없이 프로젝트를 진행하고, 필요한경우 적당한 상태관리 툴(riverpod, provider, getX, bloc)등을 리팩토링 하는식으로 사용할 예정
  5. DeepLink : 이번에 회사에서 사용할일이 있을것 같다. 적용하면서 공부하면 될듯.
  6. OOP : SOLID, 디자인패턴 등 서적을 읽으면서 사이드 프로젝트에 리팩토링 하면서 적용해보자. (Clean Architecture)

노드(익스프레스)

고민했던 백앤드 프레임워크 종류
  1. Spring + Kotlin : AOS에서 코틀린을 사용할수 있는 공통점이 있어서, 국내 도미넌스, 엔터프라이즈급이라 대기업 가기 좋을것같음
  2. Node.js : 스프링보다 높은 생산성, CPU연산이 없다는 전제하에 스프링보다 빠른 속도, 스타트업에 잘맞음, (뇌피셜)Dart가 Js로 컴파일 되니까 Js내부구조를 잘 알면 오히려 좋을수도 있겠다.
  3. Ruby on Rails : 힙해보여서, 업비트가 쓴다길래
  4. Django : 인공지능쪽으로의 확장성(파이썬이라는 언어의 강점)
  5. Go : 엄청난 속도, 구글, 구직할때 면접봤던 기업이 사용한다길래,,
결정
  • Node.js로 결정하였다.
  • ROR : 레퍼런스도 없고 성능이 그렇게 좋은것도 아니고 도미넌스가 지배적인것도 아니고 딱히 메리트를 느끼지 못했다.
  • Golang : 코드를 잠깐 봤는데 := 연산자 보는순간 낯설어서 거부감이 있었고, 채용공고를 뒤져봤는데 거의 없다.
  • Django : 인공지능으로의 확장성때문에 고민을 하였으나, 웹개발에는 웹개발에 필요한 프레임웍을 쓰자라는 생각이고 인공지능을 공부할때는 그냥 파이썬을 다시 배워서 사용하자 라는 생각이 있었고, CRUD연산에 강력한 프레임워크로 알고있는데 내가 하려고하는 만보기 사이드프로젝트에서 매우 적합한 프레임워크인지 잘 모르겠고, 웹개발을 이해하는데 좋은 프레임워크는 아니다 라는 의견이 있어서
  • Spring : 내가 앞으로 어떤 삶을 살아갈것인가에 대해 생각해 보았다. 나의 최종 목표는 내가 오너십을 가지고 할수있는 일을 하는것이고, 앤터프라이즈급 보단 스타트업에 내가 추구하는 가치를 더 찾을수 있을거라고 생각이 들었다. 그리고 스프링의 경우 1인작업의 경우 Node보다 생산성이 떨어지고, CPU연산이 많은 경우가 아니면 Node보다 느려서 하지 않기로 결정하였다.
  • Node : 스타트업에 적합한 프레임워크, 생산성, 속도(리얼타임 프로젝트에 FIT한 것으로 알고있다), 낮은 러닝커브 등 나에게 적합한 프레임웤인것 같아 결정하게 되었다.
  • FastAPI : 백앤드계의 초신성, 아직은 배우기 부담스럽다.

Native

Flutter + Node를 활용한 프로젝트가 끝나면 AOS, IOS를 사용하여 똑같은 프로젝트를 구현하는 방식으로 공부를 해보려고 한다.

AOS
  1. 코틀린공부
  2. 안드로이드 컴포넌트사용법
  3. 컴포넌트 특징
  4. 컴포넌트 활용법
  5. 구글에서 제시하는 Modern android development에 따라 개발
IOS
  1. 레이웬더위치 님이 유명하시다고 합니다.
    링크텍스트

알고리즘

일단 보류. 할게 너무 많고, 당장 업무에 적용시키기가 힘들어서 와닿지 않는다. 위에 언급한걸 다 할때쯤 꾸준히 하루에 한개씩 해볼까 싶다.

결론

  1. Node공부
  2. 사이드프로젝트 시작
  3. 네이티브로 다시 구현
  4. 알고리즘 꾸준히
  5. 서적은 간간히 코딩하기 싫을때 읽기

    퇴근후 자투리시간을 활용해서 공부해보자!!
    할거많타.....

+a
하나만 집중하라는 의견이 있는데 여러분들의 의견을 듣고싶습니다,,ㅎ 많은의견 부탁드립니다

profile
2021.05.03) Flutter, BlockChain, Sports, StartUp

0개의 댓글