목표
앞으로 개발 공부를 어떻게 진행할지 고민을 해보고, 방향성을 잡아본다. 약 100일간의 기간 동안 어떤 공부를 할 수 있을지 로드맵을 작성해본다.
고등학교는 제쳐두고 대학생활 동안 나는 확실히 공부잘하는 학생은 아니었다. 단지 운이 좋아서 유학을 가고 대학을 졸업했을뿐 성적이 좋아서 눈에 띄는 스타일은 아니였다. 그렇기 때문에 공부를 그닥 막 엄청 잘하지는 않지만 그렇다고 막 엄청 못하지는 않은 평범함보다 살짝 높은 학생이였던 것 같다.
그러다 보니 나름 상위권 (그 분야에서 잘하는 사람들)을 따라하는 능력은 엄청 좋은 것 같았다. 뭐랄까 카피닌자같은 느낌이랄까.
그림을 그리면 그림을 보는데로 곧잘 따라서 복사하듯 그리고 책을 보면 책도 곧잘 비슷하게 복사를 해서 내용을 암기하거나 쓰는건 잘하였다. 다만 문제는 무엇인가 없는 상태에서는 새로운것을 만들어 내라고 하면 살짝 문제점에 봉착하고 마는 그런 스타일이랄까.
그러다보니 이번에 개발 블로그를 3월달 부터 꾸준히 써오면서 기초적인 앱들에 대해서라던지 기본적인 개념들에 대해서는 대부분 공부하면서 적고 복습을 했다. 물론 모든 내용을 보지 않고 그냥 암기만으로 술술술 말하는 경지는 아니지만, 관련된 내용은 이제 사용할 수 있을 정도이다. 하지만 그뿐, 결국 내용을 다시 복사해서 서술하는 정도가 대부분이다.
그래서 앞으로의 개발 공부를 어떻게 할지 한번 다시 개발 전략을 잡고 진행을 해보려고 한다.
기본과 기초를 이제 막 끝낸 '개'(발)린이로써 갑자기 모든 코드를 한달만에 촤라락 완성한다는것은 안될 말이요 불가능에 가깝다. 아 물론 지금 회사는 마케터였던 나를 개발로 갑자기 이끌더니 UI까지 하게 하여 모든것을 다 하는 올라운더가 되도록 성장하게 해주었다만... 그래도 뭔가 깊이가 없다.
자, 그럼 깊이가 있는 사람의 커리큘럼을 보는 것은 어떨까? 내가 잘 모르니까 일단 '잘!'하는 사람의 생각을 읽어보면 된다. 다시 카피닌자의 기질이 발동되는 순간이다.
유튜브에서 유명한 코딩파파, 코딩쉐프, 그리고 코드팩토리 님들의 내용을 보니 거의 이러한 형태로 전개가 된다.
- 환경 구축
- 다트 문법
- OOP (Object Oriented Programming)
- Flutter Introduction
- Widget
- Projects
- Whole life cycle - Project application
- 마무리
보아하니, 환경 구축 부터 Widget 정도까지는 어느 정도 이해를 하고 있는 듯 하다. 아직까지 정확하게 '교수'처럼 설명해봐! 라고 한다면 버벅일지는 모르지만 동네형이 가르쳐주는 수준은 된다. 아마..도? 🥲
그렇다면 이제 프로젝트를 해야되는 상황인데, 계산기라던가 뭐... 일정관리 앱이라던가 혹은 채팅앱 같은거는 만들거나 기존에 있던걸 분석하고 수정해보면서 해볼껀 해봤다.
자, 그럼 코드 팩토리 님의 강의 내용을 한번 볼까?
- 블로그 웹 앱: 콜백, 웹뷰, 안드로이드와 iOS 네이티브 설정
- 전자액자: 위젯 생명주기, 타이머
- 만난지 며칠 U&I: setState(), showCupertinoDialog() 함수
- 디지털 주사위: 가속도계, 자이로스코프, Sensor_Plus 패키지
- 동영상 플레이어: iOS 시뮬레이터 화면 회전, 안드로이드 에뮬레이터 화면 회전, 시간변환, String 패딩
- 영상 통화: 카메라 플러그인, WebRTC, 내비게이션
- 오늘도 출첵: Geolocator 플러그인
- 포토 스티커: GestureDetector와 제스처
- 코팩튜브 (아무래도 유튜브인듯 하다): HTTP, REST API, JSON
- 실제 배포버전
- 일정관리앱 만들기
- 데이터베이스: SQL, SQLite, 드리프트 플러그인, Dismissible 위젯
- 서버연동하기: 상태관리 캐시와 Optimistic response
- 파이어베이스 연동하기: 파이어베이스, 파이어스토어
- 광고 및 배포하기: 구글 애드몹
이제 보니 안해본 것들이 엄청 많다. 여기서 하나를 선택해서 진행해보는 것도 좋을 듯 한데, 무엇을 해보는것이 좋을까.
그럼 일단 가장 먼저 시작해볼 것 부터 한번 보자.
1. 만난지 며칠
2. 동영상 플레이어
3. 오늘도 출첵
4. 유튜브 클론
해당 프로젝트를 진행함에 있어서 가장 먼저 생각해볼 것들은 다음과 같다.
1. 준비하기
2. 레이아웃 구상
3. 구현하기
4. 테스트하기
만들어보고 난다음 코드팩토리님의 책이나 완성된 코드들을 보고 나와의 차이점을 비교해보는 식으로 공부해보아야겠다.
자 그럼 한번 시작해보자.
'단순 개발 공부' 카테고리의 다른 글
[공부] 코드 나누는 방법 (1) | 2023.06.11 |
---|---|
[개인앱] 진전상황 (0) | 2023.06.07 |
[공부] 디버깅이란? (0) | 2023.06.01 |