재밌다! 근데 이건 배운 적이 없는데?
어느덧 졸업을 앞둔 컴퓨터공학도가 되어버렸다. 학교에 다니면서 교내 공모전, 개발 동아리, 캡스톤 디자인 프로젝트 등을 위해 안드로이드, 스프링 등 다양하게 개발을 해봤다. 엄청난 프로젝트는 아니었지만 개발을 하면서 첫 번째로 느낀 건 개발이란 건 재밌구나! 였고 두 번째로는 이런 건 배운 적이 없는데? 였다. 학교에서 자바, 자료구조, 알고리즘 등은 배웠어도 실제 개발을 해본 적이 없는 나에게 버전 관리, 프레임워크 등은 흥미로운 숙제 거리로 다가왔다.
지금 알고 있는 걸 그때도 알았더라면...
학부생으로서 프로젝트를 진행하면서 늘 느꼈던 게 지난 프로젝트가 부끄럽다는 거였다. 당시에는 이것저것 공부하면서 잘 만들었다고 생각했지만, 다음 프로젝트가 되면 저번 프로젝트는 테스트 코드도 없었고... git log도 엉망이었고... 디자인 패턴도 없었고... 많은 아쉬움이 생겨났다. 그래서 졸업을 앞둔 지금 포트폴리오 겸 플레이스토어 출시를 목적으로 지금까지 공부한 여러가지를 전부 적용해서 안드로이드 프로젝트를 진행하려 한다.
SQL Interpreter 안드로이드 어플리케이션
이번 프로젝트의 목표는 SQL 파일을 안드로이드에서 실행시켜주는 어플리케이션으로 정했다. 구현 자체야 오프라인만으로 가능하고 SQLite를 사용하면 간단할 듯하지만 간단하기만 해서야 이 프로젝트의 의미가 없다. 이전 프로젝트에서의 부족함에 대한 일종의 설욕전과 동시에 성장을 증명하기 위해서는 과감해질 필요가 있다.
조금 더 욕심을 담아서... Greedy
CI/CD, Git 브랜치 관리, 트러블 슈팅 과정 등도 세세하게 기록할 예정이다. 다만 포트폴리오에 올리려면 무엇보다 추가적인 기능이 필요하다. 구체화 포스팅에서 다루겠지만 SQL 키워드 하이라이트, 더미 데이터 생성, 고유 명령어 구현 등 여러 가지 계획이 있다. 3rd party 라이브러리를 이용하거나 직접 라이브러리를 만들어보는 것도 좋은 경험이 될 것 같다.
공부를 했으면 티를 내야지
마지막 프로젝트였던 캡스톤 디자인 이후로 많은 공부를 했다. 제일 큰 변화는 개발 언어를 자바에서 코틀린으로 바꿨고, 이번 프로젝트도 코틀린으로 개발할 예정이다. 그뿐만 아니라 SOLID, 안드로이드 개발 패턴, Compose, GitHub Actions 등 다양하게 연습해왔다. 물론 공부한 내용 중 1인 규모의 작은 프로젝트에 굳이 필요없는 것들도 많다. 하지만 이번 프로젝트의 목표가 성장과 증명을 포함한만큼 어깨에 힘을 잔뜩 들여서 만들어보도록 하겠다.
SQLI 프로젝트의 GitHub Repository가 궁금하다면? 클릭