Inflearn brand logo image
Inflearn brand logo image
Inflearn brand logo image
BEST
Programming

/

Mobile Application Development

[コードファクトリー] [中級] Flutter 本物の実戦!

この講義では、ジュニアクラスのFlutter開発者が中級のFlutter開発者になるまでに必要な知識を短期間で学ぶことができます。

  • codefactory
Flutter
Hybrid App

学習した受講者のレビュー

こんなことが学べます

  • Flutter

  • Riverpodの状態管理

  • Pagination

  • JWTトークン管理と認証

  • Optimistic Response

  • JsonSerializable

  • GoRouter

  • Retrofit

  • Dioトークン管理の自動化

  • 本番OOP

  • Debounce and Throttle

中級フラッター開発者にアップグレードしたいですか?
信じてみるコードファクトリーの実務中心講義🖥

Kyobo文庫2023上半期のベストセラー著者が直接教える講義

コンピュータ/IT部門23位 TOP30以内唯一のアプリ開発書籍\

フラッターだけで2022年スーパールーキー達成!

大企業でも探す講義! レビューが証明する最高の講義を保証します!

🙋‍♂️受講前の注意事項


  • このレッスンは単に「配信アプリ」を作るために作られたレッスンではありません
  • コードファクトリー Flutter初級講義に比べて難易度が非常に高いです
  • 今回のプロジェクトでは、実際のサーバー連動の実感を育てるために、私が直接製作したNestJSベースのREST APIサーバーを提供します。

学習内容📚


1) Authentication(認証ロジック)

現代で最もよく使われるToken Authenticationの中でも、Refresh TokenとAccess Tokenを使って認証を進めるシステムを勉強します。


2) Pagination

Page ベースの Pagination と Cursor ベースの Pagination 理論を学んだ後、Cursor Pagination を OOP で効率的に解く方法を深く学びます。


3) JsonSerializable

JsonSerializableは、モデルを作成するときにJSONをオブジェクトとしてシリアル化するコードを書く必要がないようにします。


4) Retrofit

RetrofitはFlutterのCode Generationの中で最も便利なツールで、REST APIマッピングを自動的に行い、JsonSerializableと呼吸が非常に良いパッケージです。


5) RiverpodとCacheの管理

Riverpodに存在するすべてのProviderの使い方を学び、実践に適用することもできます。

6) GoRouter

アプリ/ウェブで使用されたルーティングライブラリであるGoRouterは、Dynamic Link、Deep Link、Redirect、Refreshルールなどの便利な機能を基に提供しています。


7) Debounce and Throttle

DebounceとThrottleは、サーバーの過負荷とアプリの最適化まで考えることができる重要な技術です。


8) Swagger

サーバー開発者がフロントエンド開発者とコミュニケーションするために最もよく使用されるドキュメンテーションツールであるSwaggerを使用して、API仕様を理解し、フロントエンドコードで消化する方法を学びます。


9) Optimistic Response

Optimistic Responseは、肯定的な応答を予測してキャッシュを更新する技術です。


紹介します、
プロジェクトスクリーン!

#1 スプラッシュスクリーン

最初のアプリを実行するときに必要な認証/検証ロジックとルーティングロジックを設定します。

#2 ログインページ

ログイン画面です。

#3 レストラン一覧ページ

レストラン情報をPaginationするホームスクリーンです。
PaginationとThrottleについて学び、直接実践に適用します。

#4 レストラン詳細ページ

レストランの詳細ページで注文する食べ物を選択でき、下にスクロールするとレストランのレビューも
閲覧可能です。カスタムスクロールビューを使用して、複数のスライバーリストを本番に適用します。

#5カートページ

選択した食べ物を確認できるショッピングカートの画面です。
Optimistic ResponseとDebounceの機能を学び、適用します。

#6 フードリストタブ

食べ物をリストで閲覧できるページです。
Pagination一般化と高度なキャッシュ管理機能を学びます。

#7 オーダーリストラップ

注文を照会できるタブで、Paginationの一般化を試してください。

#8 プロフィールタブ

ログアウト機能を持つ[プロファイル]タブ。


講義の一言 🎙

Flutterがリリースされた後、数多くの大規模で小さなプロジェクトを経験したことがあります。エンジニアリングの理解とプロジェクトを備えた無駄なコードを書いていくこともそれに劣らず重要です。

今回の講義は、実務経験が不足しているFlutter開発者がコードを書く際に円滑なコラボレーションとメンテナンスの観点からどのような悩みをすべきかを学習することができます。克服していき、より良いコードを書くことができるか心に直接感じるのに集中をしました。一度に実際のプロジェクトに適用して勉強します。


こんな方におすすめですよ🖐

今Flutter初心者のかさぶたを取り除いた状態で
一段階の知識レベルアップをしたい方

ある程度Flutterプログラミングについて知っていますが、
いざプロジェクトを始めよう


受講後期を集めました📜


最高のコミュニケーション🧑🏼‍🏫

毎週YouTubeライブを通じて質疑応答を受け、学生とコミュニケーションします!

YouTubeのライブプッシュ通知を受けたい場合は、以下のコードファクトリーYouTubeチャンネルを購読してください!

>コードファクトリーYouTubeチャンネルショートカット


コードファクトリー執筆本

Must Haveコードファクトリーのフラッタープログラミングブックは、私が長い間投資して直接執筆した本です!
初級講義とそなえる内容もあり、初級講義にはないFirebaseや広告などについての講義もあります!
EBookや実物書が好きな方におすすめです!
書籍は教報文庫、Yes24、アラジンなどメジャー書店でお会いできます!
下の画像をクリックして移動してください!


Q&A 💬

Q.コードファクトリー Flutter 初心者講義を必ず受講する必要がありますか?

コードファクトリーFlutter初級講義に準ずる知識があれば、追加で受講する必要はありませんが、コードファクトリーFlutter初級講義を受講したという仮定のもとで製作された講義ですので、すでに説明した概念は繰り返し説明しません。

Q.配信アプリを制作する講義ですか?

進行中のプロジェクトのコンセプトは配信アプリが正しいですが、配信アプリのUI/UXや機能の流れとは全く関係のない講義です。しないでください!

Q.この講義を受講すればどの程度レベルの開発者になることができますか?

一言で言えば、すぐに実務投入が可能なレベルになると思います。


もっとコードファクトリーの講義は?

[入門] Dart言語
4時間で完全征服

  • Dart プログラミング言語
  • オブジェクト指向プログラミング
  • 関数型プログラミング
  • 非同期プログラミング

[初級] Flutter 3.0アプリ開発
- 10個のプロジェクトで初心者脱出!

  • Dart 言語マスター
  • FlutterできれいなUIを制作
  • SQLiteデータベース活用機
  • 動画プレーヤーアプリの制作

【中級】 Flutter 本当本番!
重水になるための必須スキル

  • GoRouter
  • JsonSerializable
  • Dioトークン管理の自動化
  • Debounce and Throttle

その他の事項✔️

(1)助けて学ぶことができる他のチャンネル!

🏭コードファクトリーYouTube
🔥コードファクトリーDiscord
💬コードファクトリーカカオオープントーク

(2) 講義用に共有される画像

講義で私が提供しているイメージは有料で直接購入したイメージです。私は創作物を作って配布する権利を購入しましたが、皆さんは決して他人やインターネットにイメージを配布してはいけません!著作権違反で法的問題が発生する可能性があるため、勉強する用途以外に画像を使用しないでください。

(3) 質問する方法

プログラミングを学びながら本当に素早く実力を増やすことができるのは、正しく正確な質問をする方法を覚醒させることです。プログラミングの性質上、コード全体を見るのは難しいです。だから問題になるウィジェットのコードを丸ごと上げた後「これはダメです!」すると、私は答えをするのが難しいです。
質問をするときは、下の3段階でよくまとめてお届けいただくと、はるかに早くコミュニケーションして回答できます!

1️⃣私が考えたときにどのように動作するべきか
2️⃣現在どのように機能するか
3️⃣正確なコードの位置とどんな問題が生じるのか(例まであれば👏)

こんな方に
おすすめです

学習対象は
誰でしょう?

  • 難しいコンセプトでも繰り返し受講して吸収する自分がいる方

  • フラッター開発能力を一段階アップグレードしたい方

  • コードファクトリーFlutter初級講義を完全に吸収された方

  • 実務プロジェクトを体験したい人

  • 会社にシニアエンジニアがないジュニア開発者

前提知識、
必要でしょうか?

  • Flutter ジュニア開発者レベルの知識

こんにちは
です。

27,946

受講生

1,471

受講レビュー

1,891

回答

5.0

講座評価

6

講座

안녕하세요 프로그래밍 강사 코드팩토리입니다!

코드팩토리 통합 링크
https://links.codefactory.ai

 

🏭 코드팩토리 유튜브 바로가기
🔥 코드팩토리 Discord 바로가기
💬 코드팩토리 카카오 오픈톡 바로가기

 

💼 주식회사 코드팩토리 대표

 

🏆 2023년 인프런 베스트셀러 수상

🏆 <<Must Have 코드팩토리의 플러터 프로그래밍>> 서적 2023 상반기 교보문고 컴퓨터/IT 부문 베스트셀러 23위

🏆 AWS Certified Developer Associate

🏆 AWS Certified Solutions Architect

カリキュラム

全体

147件 ∙ (21時間 6分)

講座資料(こうぎしりょう):

授業資料
講座掲載日: 
最終更新日: 

受講レビュー

全体

161件

4.9

161件の受講レビュー

  • kayjay님의 프로필 이미지
    kayjay

    受講レビュー 1

    平均評価 3.0

    3

    98% 受講後に作成

    Thank you for the great Flutter lecture~ I wrote a long post because there were many things I regretted while listening to the lecture. Summary - It is a great lecture for making apps with Flutter, but is it bad for understanding Flutter? ------------------------------------------------------ Overall course review Judging from the speed at which you wrote Flutter code, it seems that you have done a lot of related work, but compared to that, I felt that your overall project design ability, experience, and IT knowledge were somewhat lacking. Of course, I think it is enough for job seekers or students to listen to, but for developers with some experience, there were many parts where the explanation of concepts was wrong or why the project was structured like this. At first, I wrote a post by asking questions while listening to the lecture, but I thought that if I kept writing, the lecture would not progress, so I just took notes separately and skipped the lecture. Here is what I wrote for now. - Insufficient theoretical explanation of tokens or sessions in the authentication process explanation -> I left this in the question - Insufficient detailed explanation in terms of taking the project structure. I wanted to hear a little bit about what patterns are used in Flutter, but they created a repository and a provider without explanation~ - The response format of the provided server API does not match. It is easier to develop if the response model is the same whether paging is used or not, but if there is paging, it is wrapped once in data and sent down, and if there is not, it is just sent down as is, so it is too inconvenient because it cannot be managed commonly in the client,, - When creating a Dio interceptor, the explanation is like 'It's just a rule~' and you can follow it, and the explanation on the network side is insufficient overall - There are parts where the explanation is skipped here and there, such as "If you know oop,,", and there are parts that talk about it even though it is not a concept about oop - The naming does not match overall. The same image URL field is used as imgUrl, imageUrl, and I don't know why user_model is used as camel as userModel, but username is not used as userName - The more the lecture goes on, the more the same words are repeated. It seems to be due to video editing, but there are parts where the same thing is repeated.. It's uncomfortable to watch - After the gorouter chapter, it suddenly goes to UerMeRepository. In the previous lecture, UserModel was not created, but it was created. It seems like the lecture was missed ... Because of the above contents, rather than listening to the lecture, I watched the lecture by stopping the lecture at the beginning of the lecture and implementing and comparing it myself when I thought, "What should I do?" In fact, the reference codes I saw on github or stackoverflow were much cleaner and had a better structure. (+ I also bought and read the book that he wrote, but I feel like he has never experienced a project at a large company.) I usually don't write reviews while listening to the lecture, but I ended up writing this because he said this so many times during the lecture. "This code can be written differently because it's different for each project, team, and person." "Can't this be done like this?" If you say that, I have nothing to say." You say a lot of defensive things about tackles, but from the perspective of the listener, it sounds negative. If you had various project experience, you could explain various examples and say that there are various methods, but it seems like you are saying this because you can't. It would have been better if you didn't mention it. And you say a lot, "This is a paid lecture, so I will tell you everything," but the explanation is too poor. I think it took more time to look into the internal code while listening to the lecture. In my opinion, if it's an 'intermediate' level, you expect to be explained how the code works internally, but it was a lecture where you just used what was there without knowing how it worked inside. I hope that in future lectures, you add examples of various projects and explanations of internal logic.

    • codefactory
      知識共有者

      Hello! I apologize for not being able to satisfy the parts you felt dissatisfied with. I also reflect a lot on your sincere course review! I will show you a more improved image in the future. Thank you for your hard work in taking the course. Thank you!

    • I'm also taking the course (about 10% done), and after seeing this review, I strongly resonated with it. It seems like a great lecture for job seekers. I usually write a review after completing a course, but like this person, I also feel I could write about 3 points. I don't want the course rating to drop because of me, so I'm writing this comment as a review.

  • jamescode73422님의 프로필 이미지
    jamescode73422

    受講レビュー 2

    平均評価 5.0

    5

    29% 受講後に作成

    This is a lecture that is almost perfect. Although the title of the lecture is [Intermediate], it is not an exaggeration to say [Intermediate-Advanced] because the lecture content is solid. Since most of the content can be applied directly to actual work, it is a lecture that is perfect for current Flutter developers as well as those preparing for employment. Honestly, it is really cheap to learn this quality lecture at this price. Not only me, who has been developing for more than 15 years, but also anyone who has worked in the field for 1-2 years will probably know what I mean. If someone who explains this in detail were to work at a company, I would sincerely and childishly advise them, “Even if you give all your salary to that person, come learn for just one year.” There is no faster growth than learning from a good mentor. In order to really grow as a developer, you definitely need the attitude and passion of a learner, but it would be even better if a veteran who has already walked that path could guide you to the best course. Flutter has been a hot topic for several years, but there is still a shortage of intermediate to advanced personnel. I think that if you listen to this lecture repeatedly and master everything yourself, you will be able to work happily under really good conditions. Your skills will improve to the point where you can quickly create not only company projects but also the apps you want to create. I bought almost every book sold in bookstores to study Flutter, and I also came across a lot of online clone coding. I also took lectures on other platforms that really explained Flutter step by step. But this is the most useful. It is the most practical and cost-effective. I sincerely advise you to learn this first and fill in the gaps. I would like to express my sincere gratitude to the instructor, and I look forward to the [advanced] lecture coming out in the future.

    • codefactory
      知識共有者

      Thank you ㅠㅠ I think I work harder to create lectures because of the students who always support me. I will definitely make an even better lecture next time!!

  • sbw91303643님의 프로필 이미지
    sbw91303643

    受講レビュー 4

    平均評価 3.0

    5

    69% 受講後に作成

    I started learning Flutter by taking a Flutter course on another site. I won’t mention the site or the instructor, but when I think about it now, I can only say that the instructor’s level was too low. I had a lot of complaints while taking that course. It felt like I was just practicing typing, and the answers to my questions were not very satisfying. Even though I took all the courses, all I gained was my typing skills. Nothing more or less. After that, I Googled on my own and applied for a 1:1 tutoring class on Soom* to try a personal project. If I look at the code now, it’s really… incredibly crude and messy to the point where I wonder why it was written like that. In the end, I just spent money and didn’t learn properly. Since my personal project wasn’t progressing well, I started looking for other courses, and that’s when I found Code Factory’s course. At that time, I was debating between Code Factory's lecture and another lecture (since there were two lectures by Copac, I was a little worried... hahaha). I can't help but think that it was really lucky that I ended up taking Copac's lecture. Whether it was the 4-hour Dart lecture or the beginner's lecture, I had a hard time because of the build speed or setting errors while using Windows.. Other than that, I never felt so frustrated because of the lecture. Now I'm using a MacBook, so it's really refreshing hahaha I took the beginner's lecture once, and honestly, there were many parts that I didn't understand, so I asked questions several times and googled a lot to figure out how to proceed. In the meantime, I also changed my personal project and am working on it again. I realized that my skills had really improved after taking the beginner's lecture right after I took the intermediate lecture. When I first started taking the beginner's course, I was busy following along, comparing, and understanding the code, but when I saw that I could follow along just by listening to the instructor without looking at the screen in the beginning of the intermediate course, in the basic parts of creating the UI or screen, I realized that the beginner's course was really effective! (Come to think of it, I had no idea about Future/Stream Builder, but now I'm using it in my personal project without any problems.) There's still a lot of content left, and I haven't even started the difficult parts, but I'm confident that if I trust the instructor and follow the intermediate course, I'll level up before I know it. It's the beginning of the intermediate course, but I'll follow along well without falling behind and become a developer like Copac's disciple who can create clean codes on my own!

    • codefactory
      知識共有者

      Thank you ㅠㅠ This is a really helpful review for me!! I will work hard to make better lectures!

  • harashow884974님의 프로필 이미지
    harashow884974

    受講レビュー 4

    平均評価 4.5

    5

    58% 受講後に作成

    The lecture I've been waiting for has finally come out. I've been running the lecture since it came out, and the content is so rich that it's worth the wait. I'm an Android developer working in the field, and since the end of this year, I've had to do several small projects in a row with Flutter, so I've been taking Dart and Flutter beginner lectures and working on personal projects. There were some parts that I lacked on my own, so I took other Flutter intermediate lectures, but there were so many parts that were disappointing in the lecture composition and level. Fortunately, the intermediate lecture was uploaded right before I started the projects, so I'm listening to it quickly. The content composition is really good and the lecture preparation is perfect. I asked on the bulletin board when the intermediate lecture would be uploaded, and you said it would take time to prepare more thoroughly, but I can understand that you've prepared really well. I'm writing this without any order because I'm grateful, but if anyone is thinking about taking the course, just take it right away!!

    • codefactory
      知識共有者

      Thank you! I will try my best to make better lectures!!

  • apswtrare1695님의 프로필 이미지
    apswtrare1695

    受講レビュー 4

    平均評価 5.0

    5

    5% 受講後に作成

    I started listening from the beginner level and am listening to the intermediate level. When I suddenly started using Flutter, I was at a loss, but since you covered everything from the basics, I am so grateful and I don't know how to express my gratitude.!! I will also wait for the advanced lectures ><!

    • codefactory
      知識共有者

      Thank you!! I hope it helps!

¥15,618

codefactoryの他の講座

知識共有者の他の講座を見てみましょう!

似ている講座

同じ分野の他の講座を見てみましょう!