미리보기
기본 정보

안녕하세요! 확장성과 테스트 용이성을 고려한 MVVM 아키텍처 기반 앱 개발을 지향합니다.
자기소개
저는 MVVM 패턴을 활용하여 디자인된 UI를 실제 앱으로 구현하는 개발자입니다.
앱 개발에서 가장 중요한 것은 사용자에게 필요한 기능을 효과적으로 제공하는 것뿐만 아니라, 유지보수가 용이한 구조로 개발하는 것이라고 생각합니다. 이를 위해 Flutter와 Riverpod을 활용하여 MVVM 패턴을 적용하며, 확장성과 유지보수성이 뛰어난 앱을 개발하고 있습니다.
디자인을 개발로 연결하는 방법
디자인 도구를 통해 제작된 UI/UX 디자인을 Flutter 위젯을 활용하여 실제 앱으로 구현합니다.
디자인을 최대한 반영하면서도 사용자 경험을 고려한 개발을 지향합니다.
아키텍처 패턴 적용 (MVVM)
View, ViewModel, Model을 분리하여 깔끔한 코드 구조를 유지하고, 기능 추가 및 수정이 용이한 구조로 개발합니다. 이를 통해 확장성과 유지보수성을 극대화하며, 높은 품질의 앱을 제공합니다.
📌 포트폴리오에서 더 자세한 개발 과정과 적용 기술을 확인하실 수 있습니다.
기술 스택
Flutter, dart
프로젝트
Modern Todo
개인
2024.10. ~ 2025.01.
더 상세한 내용이 기록되어 있는, 첨부된 파일 [Modern Todo]를 살펴주시길 바랍니다.
이전 [METROME_ONLY_TEMPO]에서 느꼈던 부족한 점인
앱의 디자인과 MVVM 패턴을 추가적인 학습을 한 후에 다시 도전하였습니다.
[주요 기능]
1. 메인 화면 및 내비게이션
• 메인 화면에는 날짜와 요일이 크게 표시되어 있으며, 카테고리 탭으로 All, Todo, Routine, settings가 존재합니다.
• 화면 우측 하단의 + 버튼을 통해 새로운 일정을 추가할 수 있습니다.
• 캘린더 아이콘이 있어 날짜별 일정을 달력 형태로 확인 할 수 있습니다.
2. 일정 추가 및 수정 기능
• 일정을 추가하거나 수정할 때, Date & Time, Title, 카테고리 (Todo 또는 Routine), Notes, 색상 선택 등 다양한 옵션을 설정할 수 있습니다.
• 등록된 일정은 메인 화면에 카드 형태로 나타나며, 제목과 메모 내용을 간략히 볼 수 있도록 설계되었습니다.
3. 직관적이고 친화적인 UI
• 탭과 화면 전환이 깔끔하며, 색상과 레이아웃으로 카테고리 및 일정 관리를 명확하게 구분하여 직관성을 높였습니다.
• FAB (Floating Action Button)를 활용하여 일정 추가 기능을 쉽게 접근할 수 있게 했습니다.
4. 일정 확인 (Calendar 뷰)
• 월간 캘린더 형태의 화면에서 특정 날짜를 선택하면, 해당 날짜에 등록된 일정을 확인할 수 있습니다.
• Upcoming 섹션에서는 곧 다가올 일정을 미리 안내하여 사용자의 편의성을 높였습니다.
5. MVVM 환경 및 로컬 데이터베이스(Hive) 구현
• MVVM(Model-View-ViewModel) 패턴을 적용하여 UI(View)와 비즈니스 로직(ViewModel)을 명확히 분리했습니다.
• 상태관리는 Riverpod을 활용해 ViewModel을 효율적으로 관리하고, 재사용성과 유지보수성을 향상시켰습니다.
• 로컬 데이터베이스로는 가볍고 빠른 NoSQL 저장소인 Hive를 도입하여, 사용자의 일정 데이터를 기기 내에서 손쉽게 저장 및 관리할 수 있도록 하였습니다.
• Hive를 통해 앱이 종료되거나 재실행되어도 일정 및 사용자의 설정이 유지되는 기능을 구현하여, 오프라인 환경에서도 안정적인 앱 사용성을 제공하도록 하였습니다.
[깨달은 점]
운영체제의 문제점으로 흔히 알려진 "데이터 불일치" 문제가 ViewModel 단에서 발생하였습니다.
제가 할 수 있는 방법 중,
ViewModel에서도 RePository의 변경사항이 있을 때마다 구독을 하여 "데이터 불일치" 문제를 해결하였습니다.
METROME_ONLY_TEMPO
개인
2024.02. ~ 2024.04.
ONLY_TEMPO 음악을 연주할 때 정확한 리듬은 필수적입니다.
하지만 기존의 리듬 생성 방식에서는 핸드폰 사운드를 통해 조절해야 하는 번거로움이 있으며, 이로 인해 다른 조작에서 불편함을 느끼는 경우가 많았습니다.
이러한 문제를 해결하기 위해 개발된 앱인 ONLY_TEMPO,
직관적인 인터페이스와 손쉬운 설정 변경을 통해 편리하게 박자를 조절하고 볼륨을 설정할 수 있도록 설계되었습니다.
사용자는 간단한 조작만으로 원하는 리듬을 설정하고, 보다 연주에 집중할 수 있습니다
포트폴리오
교육
강원대학교
대학교(학사) | 컴퓨터공학과
2023.02. ~ 2025.02. | 졸업
강릉원주대학교
대학교(학사) | 소프트웨어학과
2019.02. ~ 2022.02. | 중퇴
자격증
정보처리기사
정보처리산업기사
외국어
영어
일상 회화 가능