포트폴리오/[IoT 기반 피지컬 AI 교육일지]

[ 안드로이드 미니 프로젝트 ] #1 바이브코딩 뼈대 구축 및 인증 시스템 (38일차 기록)

개발자혜콩 2026. 4. 21. 16:22
"유행 일타강사: 부모-자녀 세대 소통을 돕는 트렌드 커뮤니티 앱"

 

프로젝트 소개

"유행 일타강사" 는 급변하는 신조어와 트렌드로 인해 자녀와 소통이 어려운 부모님을 위한 안드로이드 앱이다.

에듀윌 조사에 따르면 성인 10명 중 8명이 신조어 때문에 세대 간 대화에 어려움을 겪고 있다고 한다.

"두쫀쿠", "느좋", "가나디" 같은 표현은 자녀에게는 당연하지만 부모에게는 외계어나 다름없다.

이 앱은 두 가지 방향으로 문제를 해결한다.

  • 일타강사 모드 (트렌드 사전): 유행어와 핫한 간식 정보를 눈높이에 맞춰 모아놓고, 단순히 뜻만 알려주는 게 아니라 "아이들과 대화할 때 이렇게 써보세요!" 같은 실전 꿀팁까지 제공
  • 부모님 전용 커뮤니티: 회원가입 후 전용 게시판에서 유행어 질문, 자녀와의 소통 에피소드, 꿀팁 등을 자유롭게 공유

기술 스택: Java, Android Studio, Room DB (SQLite), MVVM 아키텍처, SharedPreferences

개발 기간: 3/31 ~ 4/3

(설계 0.5일 + 바이브코딩 1일 + 직접 코딩 1일 + 마무리 정리 0.5일)


1. 오늘 한 것

① 프로젝트 세팅 및 MVVM 아키텍처 설계 (바이브코딩 활용)

  • AI를 활용하여 안드로이드 앱의 전체 구조를 스캐폴딩함.
  • 4계층 구조: UI ➔ ViewModel ➔ Repository ➔ DataSource (Room DB + 정적 JSON)
  • AuthViewModel, PostViewModel, TrendViewModel 등으로 역할을 철저히 분리하여 뼈대를 잡음.

② Room DB 기반 로그인/회원가입 구현

  • LoginActivity: SharedPreferences를 이용한 자동 로그인 체크 구현.
  • SignupActivity: 닉네임, 이메일, 자녀 나이대(ChipGroup 다중 선택) 입력 기능 구성.
  • 보안: 입력받은 비밀번호는 SHA-256 해시 처리 후 DB에 저장하도록 구현.
  • 데이터 흐름: AuthViewModel이 백그라운드 스레드에서 DB를 조회하고, 결과를 LiveData로 전달하면 UI(Activity)는 단순히 이를 관찰(observe())만 하도록 설계.

③ 홈 화면 레이아웃 구성

  • 인기 트렌드를 보여주는 가로 스크롤 카드 구현 (LinearLayoutManager.HORIZONTAL).
  • 카드를 클릭하면 TrendTipBottomSheet가 올라와 상세 꿀팁을 제공하도록 연결.

2. 문제 / 헷갈린 점

① 한 번에 쏟아지는 코드와 '블랙박스화'

  • 상황: AI가 MVVM 패턴과 Room DB 조합의 방대한 보일러플레이트 코드를 순식간에 짜주었으나, 전체 구조를 온전히 내 것으로 파악하기 어려웠음.
  • 해결: 타이핑 시간은 압도적으로 줄었지만, 코드가 '왜 이렇게 짜여졌는지' 완벽히 이해하기 전에 다음 기능 구현으로 넘어가는 느낌을 받음. 이 부분은 추후 직접 코딩을 통해 메워야 할 공백임을 인지함.

3. 오늘 배운 핵심

  • AI의 진가는 초기 아키텍처 설계에 있다: Entity, Dao, Database, Repository, ViewModel까지 이어지는 방대한 구조를 AI가 한 번에 잡아주어 프로젝트 세팅의 피로도를 극적으로 낮췄다.
  • 데이터는 ViewModel이, UI는 Activity가: 철저한 MVVM 구조를 적용하니, 화면이 회전되거나 재시작되어도 LiveData 덕분에 데이터 유실 없이 깔끔하게 화면이 유지됨을 확인했다.

4. 다음 목표

  • 바이브코딩을 이어가며 앱의 핵심 기능인 '트렌드 사전'과 '커뮤니티 피드' 완성하기.
  • 필터링, 검색, 바텀 시트 등 복잡한 UI 요소를 AI를 통해 어떻게 빠르고 세련되게 구현할 수 있는지 실험하기.