Thumbnail
개발 · 프로그래밍 모바일 앱 개발

[Bloc 응용] 실전 앱 만들기 (책 리뷰 앱) : SNS 로그인, Firebase 적용, Bloc 상태 관리, GoRouter 대시보드

(5)
8개의 수강평 ∙  156명의 수강생

66,000원

지식공유자: 개발하는남자
총 57개 수업 (13시간 56분)
수강기한: 
무제한
수료증: 발급
난이도: 
입문
-
초급
-
중급이상
지식공유자 답변이 제공되는 강의입니다
폴더에 추가 공유

중급자를 위해 준비한
[모바일 앱 개발] 강의입니다.

단순 클론코딩이 아닌, 실전 앱을 만들어보며 플러터 상태관리 Bloc을 훈련하는 것이 목적인 강의입니다.

✍️
이런 걸
배워요!
Flutter
Bloc 상태관리
GoRouter를 이용한 라우트 처리
Dio를 활용 Naver Open API 사용
Firebase Database
Firebase SNS 로그인 (Google, Apple)

플러터 Bloc은 실무에 어떻게 쓰냐고요?
이 강의에서 확인해보세요! 🤗

단순 유틸성 앱은 만들 수 있는데...
다양한 기능이 포함된 규모가 있는 서비스 앱은 어떻게 만들 수 있을까 고민하고 계신가요?

단순 따라하기식 클론코딩 NO! Flutter Bloc을 통한 상태관리
Naver Book API를 활용한 책 리뷰 앱 만들기!

이번 강의는?

  • 실무에서 사용할 수 있는 다양한 기능들을 담아 함께 개발하며 학습할 수 있도록 만들었습니다.
  • 단순히 코드 입력하고 따라하는 방식이 아닌 구조 설명 및 flow 등을 설명하여 앱을 만들어가면서 생길 수 있는 궁금한 사항들을 다뤘습니다.
  • Naver open API를 신청하여 활용하는 방법파이어베이스를 활용하여 데이터베이스 인증시스템 및 파일 업로드 등 실전에서 활용할 수 있는 기능들을 학습할 수 있도록 정리되었습니다.

학습 내용 📚

1. 프로젝트 세팅

  • 프로젝트 생성 및 Github 연동
  • 초기 플러터 프로젝트 의존성
  • 기본적 프로젝트 프레임 세팅
    • 폴더 구조 설명 
    • 앱 실행 Flow 설명
    • 기본 route 설정

2. 외부 연동

  • Naver Open API 책 api 신청 및 Post Man을 활용 api 사용
  • 파이어베이스 프로젝트 연동 및 설정
  • Naver Open API 와 파이어베이스 데이터 flow 설명
  • Dio를 통한 Naver Open API 세팅

3. Splash 페이지 / 앱 소개 페이지

  • 앱 실행 시 항상 마주하는 페이지 및 앱 최초 실행 시 앱을 소개하는 페이지를 간단히 만들어봅니다.

4. SNS 로그인 및 회원가입

  • 파이어베이스 SNS 로그인 Google과 Apple을 설정해봅니다.
  • GoRouter를 통해 로그인 및 회원가입 상태에 따라 자동 Routing하는 방법을 학습합니다.
  • 간단한 정보로 회원가입을 진행하지만 프로필 이미지도 입력받아 파일업로드하는 방법도 알아봅니다.

5. 검색

  • 네이버 책 API를 통해 데이터를 받아와 화면을 만들어줍니다. 
  • 네이버 Open API의 Pagination을 살펴보고 페이징 처리를 하는 방법을 학습합니다.

6. 책 상세페이지 및 리뷰 작성 페이지

  • 네이버 책 API를 바탕으로 상세 페이지를 만들어봅니다.
  • 리뷰 정보가 있을 때와 없을 때의 화면을 구성한 다음, 리뷰 작성 기능까지 적용해봅니다.

7. 리뷰 상세페이지

  • 회원 리뷰를 확인할 수 있는 페이지를 만들어봅니다.
  • 다른 사람의 공감을 얻을 수 있도록 좋아요 기능을 적용해봅니다.

8. 회원 페이지 

  • 회원 페이지에서 어떤 작품들을 리뷰했는지 확인할 수 있도록 만들어봅니다.
  • 리뷰 정보가 마음에 드는 회원의 정보를 앞으로도 확인할 수 있도록 즐겨찾기 기능을 통해 팔로우/팔로잉 기능을 구현해봅니다.

9. 홈 화면

  • 최신 리뷰어 정보 / 인기있는 리뷰어 Top 10 정보로 홈 화면을 구성하고 만들어봅니다.
  • PageView를 통해 가로로 나열하는 위젯을 만들어봅니다.

번외편 - 1편

  • 번외편으로 즐겨찾는 리뷰어들의 소식만을 확인할 수 있는 페이지를 만들어볼 것입니다. 
  • 홈화면에서 최신리뷰 TOP10만 볼 수 있던 부분을 더보기 메뉴를 통해 더 많은 리뷰를 최신 순서로 확인할 수 있도록 구성을 합니다. 

번외편 - 2편

  • 리뷰어 페이지에서 마이페이지로 접근할 때 즐겨찾기 메뉴 대신 설정 메뉴를 통해 닉네임, 한줄 소개, 프로필 이미지를 변경할 수 있도록 개선합니다.
  • 로그아웃 버튼을 통해 다른 계정으로도 접근할 수 있도록 개선합니다.

예상 질문 Q&A 💬

Q. 플러터 최신 버전이 호환되나요?

강의 준비 시점에서 플러터 최신 버전 3.10.0 버전으로 작업되었습니다. 메이저 버전이 바뀌지 않는 한 호환에 문제는 없을 것입니다.

Q. 플러터 입문자도 이해할 수 있을까요?

프로젝트 생성부터 폴더 구성, 화면 구성하는 기초적인 부분도 다루긴 하지만 앱 만들기의 핵심이 되는 상태관리 및 API 활용 등에 다루기 때문에 다소 어렵게 느껴지실 수는 있습니다. 하지만 입문자라도 [Bloc 마스터 코스 기초부터 응용까지]의 영상을 통해 학습을 마치셨다면 충분히 이 강의를 통해 실력을 상승시킬 수 있을 것입니다. 단지 입문자라면 한 번 영상 보는 것만으로는 내용이 마스터되지는 않으실 테니 반복해서 학습하시는 것을 추천드립니다. 

Q. 상태 관리를 Bloc으로 선택하신 이유가 있을까요? 

앱 개발에 있어서 상태관리는 필수입니다. 상태관리를 도와주는 라이브러리가 많이 존재합니다. 어떤 걸 사용하더라도 앱은 개발할 수 있습니다. 하지만 Bloc을 통해 강의를 만든 이유는 국내/해외 커뮤니티에서 대규모 프로젝트의 경우 가장 적합한 상태관리로 단연 Bloc을 선택하고 있기 때문입니다. 저 역시 Bloc으로도, Getx으로도 프로젝트를 진행해 보았지만 유지보수 측면에서 Bloc에 장점이 많았습니다. 하여 이번 강의에서는 Bloc을 선택하였고 무료강의 [Bloc 마스터 코스 기초부터 응용까지]도 Bloc 기반으로 제작하였습니다. Bloc을 실전으로 응용해보면서 직접 Bloc을 활용하게 하여 더욱 학습에 도움이 되고자 선택한 이유도 있습니다. 

Q. Bloc을 잘 몰라도 이번 강의를 통해 배울 수 있나요?

이번 강의는 Bloc 사용에 익숙해지기 위한 목적의 프로젝트입니다. 하여 Bloc에 대한 설명은 생략합니다. 반드시 Bloc을 학습하시고 시청하는 것을 권장드리며, 제가 오픈한 무료강의 [Bloc 마스터 코스 기초부터 응용까지]를 바탕으로 학습하시는 것을 추천드립니다. 

Q. 번외편은 무엇인가요?

번외편은 기존 계획했던 기능이 아니었지만 강의를 준비하면서 번외편의 기능까지 포함하여 공부하면 수강하시는 분들에게 도움이 될 것 같아 추가할 영상들입니다. 즉, 번외편은 추후 업데이트되는 수업 영상이 되겠습니다. 이 강의를 수강하시면 추가 비용 없이 업데이트되는 수업 역시 학습하실 수 있습니다.  

Q. 사용된 소스는 제공되나요?

앱을 만들기 위해 디자인 리소스 및 완성된 풀소스 역시 제공됩니다. 풀소스만으로 소스 분석하셔도 도움이 되겠지만, 아무래도 처음부터 함께 만들어가면서 학습하면 좀 더 이해가 될 것입니다.  

이런 분들께 추천드려요!

🎓
학습 대상은
누구일까요?
간단한 앱 정도는 만들어봤지만 실전 앱을 만드는 데 도움이 필요하신 분들
Bloc 상태관리를 실전 앱에서 어떻게 활용하는지 배우고 싶으신 분들
1인 개발자로 앱을 서비스 하고 싶으신 분들
[플러터 상태관리] Bloc 마스터 코스 기초부터 응용까지! 강의를 학습하신 분들
📚
선수 지식,
필요할까요?
[플러터 상태관리] Bloc 마스터 코스 기초부터 응용까지! 무료 강의 학습 후 수강해주세요. (기초 Bloc 사용법에 대해서는 다루지 않습니다.)

안녕하세요
개발하는남자 입니다.
개발하는남자의 썸네일

프로필

블로그 : 개발하는남자 블로그

유튜브 : 개발하는남자 유튜브

깃허브 : 개발하는남자 깃허브

소개

개발을 즐기는 사람이 되고 싶은 개발자.

안녕하세요 개발하는남자 개남입니다. 

 

 

커리큘럼 총 57 개 ˙ 13시간 56분의 수업
이 강의는 영상, 수업 노트, 첨부 파일이 제공됩니다. 미리보기를 통해 콘텐츠를 확인해보세요.
섹션 0. 강의 소개
섹션 1. 프로젝트 세팅
프로젝트 생성 02:53
git 세팅 및 github 연동 04:15
초기 라이브러리 세팅 및 리소스 세팅 03:10
프로젝트 폴더 구성 방법 미리보기 04:30 프로젝트 기본 Route 세팅방법 미리보기 17:46
섹션 2. 외부 연동
네이버 어플리케이션 등록 및 도서 API 사용하여 데이터 확인하기 미리보기 08:16 파이어베이스 프로젝트 연동 미리보기 04:44
외부 연동 Flow 전략 정리 03:39
네이버 API 사용을 위한 프로젝트 사전 개발 39:01
파이어베이스 사용을 위한 프로젝트 사전 세팅 03:47
섹션 3. 스플레시 페이지 및 앱 소개 페이지
스플레시 화면 퍼블리싱 및 공통 폰트 위젯 만들기 18:15
스플레시 데이터 로드 및 인증 체크 프로세스 개발 16:16
앱 소개페이지 퍼블리싱 및 개발 13:39
초기 페이지 연결하기 06:23
섹션 4. 인증 프로세스 (상 - 개발및 세팅)
Firebase SNS 인증 Flow 설명 02:56
로그인 페이지 퍼블리싱 15:10
SNS로그인 프로세스 개발 [구글 / apple 로그인] 45:52
섹션 5. 인증 프로세스 (하 - 인증후 redirect 처리)
BlocListener를 통해 화면을 route 처리 하는 방법 08:07
GoRouter에서 redirect 하는 방법 09:51
섹션 6. 회원가입 페이지
회원가입 페이지 퍼블리싱 17:20
회원가입 프로필 이미지 상태관리 11:53
닉네임, 한줄 소개 상태관리 05:18
프로필이미지 업로드 기능 개발 46:24
회원정보 데이터베이스 저장 개발 12:20
회원가입후 redirect 처리 06:40
섹션 7. 메인 페이지 전반전
홈 상단 프로필 영역 개발 07:10
검색 텍스트 필드 버튼 만들기 12:31
검색 페이지 route 처리 05:08
섹션 8. 검색 페이지
검색 페이지 퍼블리싱 07:29
검색 페이지 기능 구현 23:17
페이징 처리 19:21
페이지 갱신 문제 해결 02:09
섹션 9. 상세 페이지 & 리뷰 작성 페이지
상세 페이지 퍼블리싱 27:29
리뷰 등록 페이지 퍼블리싱 17:22
리뷰 등록페이지 기능 연결하기 17:40
리뷰 정보 데이터 설계 설명 03:27
리뷰 데이터 저장 - 상편 ( insert 편 ) 34:36
리뷰 데이터 저장 - 하편 ( update 편 ) 21:22
리뷰 저장후처리 개발 09:38
상세 페이지 기능 구현 20:14
상세페이지 reload 개발 04:47
섹션 10. 리뷰 상세 페이지
리뷰 상세 페이지 퍼블리싱 25:11
리뷰 상세 페이지 데이터 파싱 17:23
리뷰 상세 공감 기능 개발 13:18
섹션 11. 리뷰어 페이지
리뷰어 페이지 사용자 프로필 퍼블리싱 14:56
사용자 정보처리 기능 구현 13:44
사용자 리뷰 목록 조회 기능 구현 20:56
즐겨찾기(Follow/Follwing) 기능 구현 33:12
섹션 12. 홈 페이지
최근 작성 리뷰 Top10 퍼블리싱 22:40
최근 작성 리뷰 Top10 기능 구현 15:16
Top 10 리뷰어 퍼블리싱 14:44
Top 10 리뷰어 기능 구현 29:12
메인 홈 refresh 기능 구현 04:38
섹션 13. 마무리
마무리 인사 01:10
섹션 14. 부록 1 & 2
홈화면 overflow 문제 해결 방법 07:20
리뷰 슬라이더 직접 만들기 미리보기 34:05
강의 게시일 : 2023년 06월 21일 (마지막 업데이트일 : 2023년 08월 21일)
수강평 총 8개
수강생분들이 직접 작성하신 수강평입니다.
5
8개의 수강평
5점
4점
3점
2점
1점
VIEW 추천 순 최신 순 높은 평점 순 낮은 평점 순 평점 순 높은 평점 순 낮은 평점 순
일월 thumbnail
5
강의 진짜 미쳤어요 !! 제가 서버를 사용한 앱 개발은 처음인데 서버와 앱 간의 흐름이 대충 어떤지 알게 되었구요. 플러터하면 상태 관리가 막막했는데 무료로 상태관리에 대한 강의도 들을 수 있어서 학습에 큰 도움이 되었습니다. 처음에 따라 치면서 이해 안 됐던 부분이 중간 중간마다 이해가 되면서 재밌었어용 ~! 이제껏 들었던 인프런 강의 중에 최고입니다. 나중에 추가로 업로드될 부분도 기대되네요!
2023-09-24
지식공유자 개발하는남자
너무 좋은 수강평 감사합니다 ^^ 개인적으로 일들이 많이 있다보니 강의 업데이트가 조금씩 딜레이되고 있습니다. 빨리 정리 해서 업데이트 하도록 노력하겠습니다 ~! 감사합니다 ~!
2023-09-25
pc.doomco thumbnail
5
플러터에 관심이많은 학생입니다 잘보고 수강평 잘남길게요~
2023-10-07
지식공유자 개발하는남자
감사합니다 ~! 이 강의가 pc.doomco님께 도움이 되었으면 좋겠습니다 ^^ 평 남겨주셔서 감사합니다 ~!
2023-10-07
열심히 thumbnail
5
우선.... 너무 감사드린다고 말씀드리고싶습니다.. 1. 현재 회사에서 앱개발자 없이 상태관리를 setStatus 로만 상태관리를 진행되어있어서 매일 오류에 직면하고 있는 와중에 상태관리를 개발하는남자님의 무료강의를 들으면서 모든 setStatus 를 bloc 으로 현재 리팩토링겸 진행중이고 많은 도움이 되었습니다 ㅠㅠ. 2. 강의에서 goRouter 를 사용해보고 나서 goRoter 의 핵심을 족집게 강의로 알려주십니다! ( 회사에선 AutoRouter 를 사용하고있는데 goRouter 가훨씬..좋은것 같습니다 ㅠㅠ ) 3. 그리고 모델생성할때 frezzed 대신 JsonSearlizable 사용하는게 코드 유연성도 좋고 정말 좋은것 같습니다!! *** 결론 : 이 강의 하나면 정말 실무에서도 큰 문제없이 해결할수 있습니다..!!! 그리구 질문&답변이 엄청 빠르게 해주셔서 금방금방해결되어서 좋았습니다~
2023-11-25
지식공유자 개발하는남자
닉네임처럼 열심히해주셔서 감사합니다~! 실무 프로젝트에서 진행중에 계시는 군요 ^^ 도움이 되셨다니 다행입니다. 앞으로도 궁금하신 사항이 있으면 메일 보내주시면 도움 드릴 수 있도록 하겠습니다 . 감사합니다 ~!
2023-11-27
011414 thumbnail
5
이제야 한바퀴 돌아서 수강평을 남깁니다. 시중에 별로인 강의도 많고, 괜찮은 강의도 많고 수많은 서적과 사이트, 강의를 봤는데요. Bloc 패턴인 Cubit 기반으로 한 이 강의는 정말 추천 드립니다. 강의를 다 듣고 실습을 마친 상황에서 느낀 점 몇자 적어 봅니다. <장점> 1> Flutter 에서 알아야 될 핵심 지식을 거의 대부분 다룸 ~ Firebase Authentication, Cloud Firebastore, Firebase Storage ~ 상태관리 : Cubit ~ 중요 컨트롤 : PageView, SliderBar ~ 모델링 : JsonSerializable, Equatable 2> 강사님의 열정 굿! ~ Flutter 초보자들에게 가급적 자세히 설명해 주려고 하는 의지. ~ 오류가 거의 없는 샘플 <아쉬운 부분> ~ 어느 정도 플러터를 접한 사람에게는 정리가 좀 안되어 있다는 느낌 예) 한가지 소스를 한번에 끝내지 않고, 기능 추가에 따른 수정과 개선이 잦음 물론 단점이 어떤 사람이 보기에는 장점이 될 수도 있습니다만, 전체적인 총평은 정말 훌륭한 강의라고 생각되고 강사님의 노력과 전달하려고 하는 의지를 많이 느낄 수 있었습니다. 추가로 강의가 계획되어 있다면 아래 부분을 다뤘줬으면 좋겠습니다. ~ Google, Apple 이외의 Social 인증 (email/password, 카카오, 유투브, ..) ~ Cubit 대신 Bloc 으로 처리 ~ 각종 쓸만한 패키지, 컴포넌트 소개 ~ 인증 프로세스의 다른 예 ~ 페이징 처리의 다른 사용 예 끝으로, 좋은 강의를 제공해 주셔서 감사드립니다. 덕분에 그동안 궁금했던 부분이 많이 해소가 되었습니다.
2024-03-14
지식공유자 개발하는남자
011414님 진심이 담긴 수강평 감사합니다. 또한 장점과 아쉬운 부분까지 말씀해 주시니 부족한 점이 어떤 것인지 알 수 있었습니다. 강의를 준비하면서 최대한 쉽고 이해를 주기 위해서 노력하면서 만들었는데 그 부분을 느끼셨다니 이보다 좋은 수강평은 없는 것 같습니다. 최근 ^^:; 개인적인 문제로 유튜브나 인프런 강의등을 작업하지 못하고 있는 실정입니다만 이렇게 좋은 평을 읽고 나니 힘이 나네요 ~! 개인적인 문제는 앞으로 3개월 내에 해결될 예정이라 그 이후에 추가로 요청 주신 내용을 인프런이나 유튜브에 공유 하도록 노력하겠습니다. 다시한번 감사합니다 ^^
2024-03-14
최종환 thumbnail
5
이렇게 친절하고 완벽하게 잘 가르쳐주는 강의는 처음 봐요! Gorouter를 제대로 가르쳐주는 분들을 본적이 없었는데 드디어 발견했네요 ㅜㅜ 무조건 추천드립니다. 인증 프로세스나 Bloc로직을 정확하게 가르쳐주셔서 플러터에 대한 이해가 한 단계 높아졌어요. 추천드립니다! 제가 생각하는 장점을 말씀드리겠습니다. 1. GoRouter의 정확한 핵심을 배울 수 있음(인증 프로세스랑 같이 사용하는 로직같은 것들). 2. Bloc이랑 GoRouter를 활용해서 상태값을 관리하는 방법들을 배울 수 있음. 3. 일반적인 강의에서 가르치는 http프로토콜 받는 방식으로 API를 사용하는 방법은 봤는데 Bloc을 잘 활용해서 배울 수 있음. 4. 선생님이 질문에 친절하게 잘 답변해주심.
2023-08-14
지식공유자 개발하는남자
와우~! 좋은 수강평 감사드립니다. 도움이 되셨다니 보람을 느낍니다 ^^ 앞으로 필요한 강의 업데이트 진행하도록 하겠습니다 !!
2023-08-14