"유행 일타강사: 부모-자녀 세대 소통을 돕는 트렌드 커뮤니티 앱"
프로젝트 소개
"유행 일타강사" 는 급변하는 신조어와 트렌드로 인해 자녀와 소통이 어려운 부모님을 위한 안드로이드 앱이다.
에듀윌 조사에 따르면 성인 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를 통해 어떻게 빠르고 세련되게 구현할 수 있는지 실험하기.
'포트폴리오 > [IoT 기반 피지컬 AI 교육일지]' 카테고리의 다른 글
| [ 안드로이드 미니 프로젝트 ] #3 컴포넌트 직접 구현 및 최종 회고 (40일차 기록) (0) | 2026.04.21 |
|---|---|
| [ 안드로이드 미니 프로젝트 ] #2 바이브코딩 기능 확장 및 AI 컨텍스트 관리 (39일차 기록) (0) | 2026.04.21 |
| [ 안드로이드 AI 활용 ] 바이브 코딩(Vibe Coding) 및 Agent.md 활용 (36~37일차 기록) (0) | 2026.04.21 |
| [ 안드로이드 앱 개발 기초 ] 스레드 제어, Custom View 및 SurfaceView 게임 애니메이션 구현 (35일차 기록) (0) | 2026.04.21 |
| [ 안드로이드 앱 개발 기초 ] UI 이벤트 처리, 화면 전환 및 Handler 타이머 구현 (34일차 기록) (0) | 2026.04.10 |