[Code Factory] [Nhập môn] Phát triển ứng dụng Flutter 3.0 - Thoát khỏi trình độ sơ cấp ngay hôm nay với 10 dự án!
Tạo ứng dụng iOS và Android chỉ với một lần viết code duy nhất! Khóa học Flutter thoát khỏi trình độ sơ cấp của Code Factory! Xây dựng nền tảng vững chắc với lý thuyết chi tiết và các dự án thú vị!
10 dự án trong tay tôi! 💁♀️💁♂️ Học dựa trên lý thuyết và học cách triển khai nhiều chức năng khác nhau.
Nhà sách Kyobo 2023 bán chạy nhất nửa đầu bài giảng do chính tác giả giảng dạy trực tiếp
Cuốn sách phát triển ứng dụng duy nhất trong TOP30, xếp hạng 23 trong danh mục Máy tính/CNTT
Đạt danh hiệu Siêu tân binh vào năm 2022 chỉ với Flutter!
Inflearn là sản phẩm bán chạy nhất năm 2023!
Một khóa học được nhiều tập đoàn lớn săn đón! Chúng tôi đảm bảo những bài giảng tốt nhất đã được chứng minh qua các đánh giá!
⏰ Dòng thời gian của Khóa học dành cho người mới bắt đầu Flutter
Ngày 18 tháng 7 năm 2022: Hỗ trợ 100% cho phiên bản Flutter 3.0
Ngày 10 tháng 5 năm 2023: Hỗ trợ 100% cho phiên bản Flutter 3.10
Ngày 4 tháng 12 năm 2023: Hoàn thành việc quay lại bài giảng thiết lập môi trường để phù hợp với môi trường mới nhất.
Ngày 22 tháng 4 năm 2024: Bài giảng này sẽ được quay lại hoàn toàn dựa trên phiên bản Flutter và plugin mới nhất (các phiên bản cũ sẽ bị xóa vào ngày 31 tháng 8 năm 2024)
Giới thiệu 10 dự án 🚩
#1 Xin chào thế giới
Làm quen với Android Studio và tìm hiểu cách vẽ giao diện người dùng của ứng dụng bằng Flutter.
Hãy thử Tiện ích Văn bản
Hãy thử thay đổi màu nền
Hãy thử thay đổi màu chữ
#2 Màn hình chào mừng
Tạo một Màn hình chào đơn giản đóng vai trò là trang đầu tiên của bất kỳ ứng dụng nào
Sử dụng hình ảnh tài sản
Sử dụng Tiện ích Chỉ báo Tiến trình Tròn
Tìm hiểu cách sắp xếp các tiện ích bằng tiện ích Cột.
#3 Ứng dụng web blog
Đóng gói các trang web hiện có thành các ứng dụng bằng công nghệ Web View
Sử dụng các gói nguồn mở
Thay đổi Cài đặt gốc theo Nền tảng
Sử dụng tiện ích WebView
Mở Quyền Javascript
Mở giao thức HTTP
#4 Khung ảnh điện tử
Tạo khung ảnh điện tử tự động lăn khi để yên và có thể vuốt trực tiếp
Sử dụng Tiện ích Xem Trang
Thực hiện một hàm định kỳ với lớp Timer
Tiện ích trạng thái đang hoạt động
#5 Ngày đầu tiên chúng ta gặp U&I
Tạo ứng dụng D-Day có thể sử dụng với người yêu
Áp dụng phông chữ
Sử dụng công cụ chọn ngày
Ngày giờ lớp sử dụng thực tế
Cách sử dụng chủ đề trong Flutter
Sử dụng Cupertino Dialog
#6 Máy phát số ngẫu nhiên
Tạo một ứng dụng tạo ra 3 số ngẫu nhiên dưới một số cụ thể mỗi khi bạn nhấn một nút
Tạo số ngẫu nhiên
Điều hướng đơn giản và truyền dữ liệu
Sử dụng Tiện ích Thanh trượt
Kết xuất tiện ích và tổ chức mã bằng lập trình chức năng
#7 Trình phát video
Tạo ứng dụng phát video
Sử dụng Tiện ích Stack
Sử dụng Thư viện chọn hình ảnh
Sử dụng Thư viện Trình phát Video
Tạo điều khiển video để phát, dừng, tua lại 3 giây và tua tới 3 giây
#8 Hôm nay cũng đi làm
Tạo một dịch vụ dựa trên vị trí đơn giảnbằng Google Maps
Thiết lập và sử dụng Google Maps
Hiển thị vị trí của tôi trên bản đồ bằng dịch vụ định vị
Tìm khoảng cách giữa các vị trí cụ thể
Hiển thị điểm đánh dấu trên bản đồ
Đánh dấu một vòng tròn trên bản đồ
Di chuyển máy ảnh đến một vị trí cụ thể
Sử dụng hộp thoại Material
#9 TRỰC TIẾP- Cuộc gọi video
Tạo ứng dụng gọi video bằng Agora API
Tạo tính năng gọi video bằng Agora API
Hãy thử Box Shadow
#10 Lịch trình
Tạo ứng dụng lập lịch có thể lưu trữ dữ liệu lâu dài
Sử dụng SQ Lite với gói Drift
Học các câu lệnh SQL đơn giản (chọn, chèn, cập nhật, xóa, nối)
Sử dụng tờ giấy dưới cùng
Sử dụng Tiện ích Wrap
Sử dụng Gói Lịch Bàn
Triển khai hoạt ảnh xóa với tiện ích Dismissible
Tự động phát hiện những thay đổi trong dữ liệu thông qua các luồng
#11 Ứng dụng bụi mịn
Tìm hiểu cách thực hiện yêu cầu mạng bằng giao tiếp HTTP!
Yêu cầu HTTP sử dụng gói Dio
Hãy thử sử dụng API mở của chính phủ
Sử dụng cơ sở dữ liệu Hive NoSQL
Hỗ trợ ngoại tuyến và xem trước bộ nhớ đệm
Sử dụng Tiện ích Ngăn kéo
CustomScrollView trong thực tế
Bạn cũng không thể bỏ qua lý thuyết này! ✍
Tiện ích có trạng thái
Bạn có thể tìm hiểu về vòng đời của một Tiện ích trạng thái và trực tiếp xác minh thông qua thực hành khi các chức năng tương ứng với từng vòng đời được thực thi.
Hàng và Cột Tìm hiểu về các tham số của tiện ích Hàng và Cột, những tiện ích được sử dụng phổ biến nhất khi đặt tiện ích trong Flutter.
Ngày giờ Tìm hiểu cách làm việc với dữ liệu liên quan đến ngày và giờ bằng cách sử dụng lớp Date Time và cách thao tác Date Time với Duration.
Const Xây dựng Loại bỏ các dòng Cảnh báo màu vàng xuất hiện mỗi khi bạn viết mã bằng Const Constructor và tìm hiểu lý do tại sao sử dụng Const Constructor lại tốt cho hiệu suất của ứng dụng Flutter.
Nút Tìm hiểu cách sử dụng và trang trí Nút nâng cao, Nút văn bản và Nút có đường viền được cung cấp theo mặc định trong Flutter.
Điều hướng Tìm hiểu về các chức năng khác nhau của Điều hướng cho phép bạn di chuyển giữa các màn hình và tìm hiểu cách truyền dữ liệu giữa các màn hình.
Stream Builder và Future Builder Tìm hiểu về Stream Builder và Future Builder, cách hiệu quả nhất và dễ nhất để xác định giao diện người dùng của màn hình dựa trên kết quả của yêu cầu không đồng bộ.
Mua so với Xây dựng Tìm hiểu cách quyết định nên tự xây dựng thứ gì đó hay trả tiền để có được một tính năng cụ thể.
Tiện ích có thể cuộn Tìm hiểu về các tiện ích cho phép cuộn trong Flutter!
Sử dụng khung Flutter Tạo ứng dụng đơn giản của riêng bạn 📖
Flutter so với React Native Xu hướng Google
Flutter hiện là một trong những nền tảng đa nền tảng mạnh mẽ nhất được nhiều công ty sử dụng. Như bạn có thể thấy từ biểu đồ, nó đang phát triển nhanh chóng, vượt qua React Native, vốn đã dẫn đầu trong một thời gian dài.
Khóa học này được thiết kế để cung cấp sự kết hợp giữa lý thuyết và các dự án dễ hiểu và dễ tiếp cận cho người mới bắt đầu, để bạn có thể thu hút được cả sự quan tâm và chiều sâu kiến thức. Chúng tôi thiết kế theo cách cho phép bạn đào sâu hơn vào lý thuyết bằng cách thiết kế một tình huống thực tế và tiến hành dự án, giải thích lý do tại sao cần có kiến thức này.
Tôi đã thu thập các bài đánh giá về khóa học 📜
Ngay cả khi bạn là một nhà phát triển mới bắt đầu hoặc người mới sử dụng Flutter, sau khi tham gia khóa học này, bạn sẽ tự tin hơn vào Flutter và có thể tự mình phát triển các ứng dụng đơn giản cũng như có được kiến thức vượt xa trình độ mới bắt đầu. 🏭 Nhà máy mã YouTube Có rất nhiều nội dung ở Edo!
Giao tiếp tốt nhất 🧑🏼🏫
Tôi tương tác với sinh viên thông qua các buổi hỏi đáp trên YouTube Live hàng tuần!
Nếu bạn muốn nhận thông báo đẩy trực tiếp trên YouTube, vui lòng đăng ký kênh YouTube Code Factory bên dưới!
Cuốn sách Lập trình Flutter của Must Have Code Factory là cuốn sách mà tôi đích thân viết sau khi đầu tư rất nhiều thời gian vào đó! Có một số nội dung trùng lặp với bài giảng dành cho người mới bắt đầu và cũng có những bài giảng về Firebase và quảng cáo không có trong bài giảng dành cho người mới bắt đầu! Khuyến khích cho những người thích sách điện tử hoặc sách giấy! Bạn có thể tìm mua cuốn sách này tại các hiệu sách lớn như Kyobo Bookstore, Yes24 và Aladdin! Vui lòng nhấp vào hình ảnh bên dưới để di chuyển!
Khác ✔️
Chúng tôi sẽ trả lời câu hỏi của bạn trước 💬
H. Tại sao tôi nên học Flutter?
Flutter là một nền tảng phát triển ứng dụng đa nền tảng. Ban đầu, các ứng dụng iOS và Android phải được phát triển bằng các ngôn ngữ và khuôn khổ khác nhau, nhưng Flutter có thể được phát hành trên cả hai nền tảng chỉ với một mã nguồn duy nhất. Vì vậy, bạn có thể tiết kiệm rất nhiều tiền bạc và thời gian khi phát triển ứng dụng. Ngoài ra, đây là một khuôn khổ do Google phát triển và đang được Google quảng bá mạnh mẽ hiện nay, do đó, đây là một khuôn khổ có tương lai đầy hứa hẹn nên bạn nên tìm hiểu về nó.
H. Học Flutter có thực sự tốt hơn học React Native hay Native không?
Mỗi khuôn khổđều có ưu và nhược điểmtùy thuộc vào tình huống và mục đích,vì vậy câu trả lời cho loại câu hỏi này luôn là 'KHÔNG'. Flutter có thể phát hành ứng dụng trên cả nền tảng iOS và Android rất nhanh chóng chỉ với một mã nguồn duy nhất, nhưng nó vẫn thiếu nhiều thư viện so với Native và kém hoàn thiện hơn một chút. React Native có lợi thế là sử dụng Javascript, một trong những ngôn ngữ phổ biến nhất thế giới và do đã ra đời từ lâu nên nó vẫn phổ biến hơn Flutter.
H. Tôi chưa từng học lập trình trước đây. Tôi vẫn có thể tham gia khóa học chứ? Có ổn không nếu tôi không học chuyên ngành chính?
Nhiều người đã hoàn thành thành công trải nghiệm lập trình đầu tiên của mình nhờ các video trên YouTube của tôi. Ngay cả khi không phải là Flutter, mọi chương trình lập trình đều có rào cản đáng kể đối với người mới bắt đầu, nhưng trong khóa học này, tôi đã cố gắng hết sức để giảm rào cản đó xuống mức thấp nhất có thể. Đầu tiên, hãy xem qua khóa học tiếng Dart miễn phí để thấy mức độ khó của nó. Nếu gặp khó khăn, hãy nhờ sự trợ giúp từ cộng đồng Code Factory chính thức.
Nếu bạn mua khóa học Flutter, bạn có thể tham gia kênh Flutter Premium trên máy chủ Discord của Code Factory! Vui lòng tham gia máy chủ Discord của chúng tôi và nhắn tin cho tôi bằng email mà bạn đã mua khóa học và tôi sẽ thêm bạn vào kênh cao cấp của chúng tôi! Khi bạn tham gia kênh cao cấp, mọi câu hỏi sẽ được ưu tiên trả lời!
H. Đây có phải là bài giảng hoàn chỉnh không?
Hiện tại, cấu trúc khóa học được thiết kế phù hợp với mục đích thoát hiểm của người mới bắt đầu . Flutter đang có kế hoạch biên soạn các bài giảng được chia thành ba cấp độ khó: người mới bắt đầu, trung cấp và nâng cao. Giao diện người dùng, cách sử dụng đơn giản các thư viện phổ biến, v.v. sẽ được thêm vào bài giảng dành cho người mới bắt đầu. Tôi vẫn còn rất nhiều kiến thức muốn chia sẻ với các bạn, vì vậy hãy đón chờ nhé!
H. Tôi có cần phải có máy Mac của Apple không?
Bạn có thể học khóa học trên máy tính Windows, nhưng bạn sẽ không thể xây dựng ứng dụng iOS. Đó là vì Apple thiết kế các ứng dụng iOS chỉ có thể được xây dựng trên hệ điều hành Mac của Apple. Flutter nhất quán trên nhiều nền tảng đến mức bạn có thể viết mã trên máy tính Windows trong khi xem màn hình Android, sau đó xây dựng cùng một mã trên iOS và mong đợi cùng một ứng dụng sẽ ra đời. Nếu bạn muốn phân phối, tôi khuyên bạn nên mua một chiếc MacBook cũ tương thích với Flutter.
H. Tôi có cần phải có cấu hình máy tính tốt không?
Vì việc phát triển sẽ dễ dàng hơn khi chạy trình mô phỏng/giả lập, nếu thông số máy tính của bạn quá thấp, việc thực thi có thể chậm. Nếu cấu hình máy tính của bạn thấp, tôi khuyên bạn nên mã hóa bằng thiết bị thực tế! Các thông số kỹ thuật bắt buộc có thể thay đổi theo thời gian, vì vậy tôi sẽ để lại liên kết. Yêu cầu của Windows / Yêu cầu của Mac / Yêu cầu của Linux
H. Cài đặt Flutter không thành công.
Để trở thành một lập trình viên giỏi, khả năng cô lập và giải quyết vấn đề cũng rất quan trọng, vì vậy hãy cố gắng hết sức và nếu không thành công,💬 Code Factory Kakao Open TalkHãy liên hệ với chúng tôi!
H. Có vấn đề với video.
Để biết thêm thông tin về phát lại video và giao tiếp Internet, vui lòng liên hệ Inflearn. Nếu thứ tự các video không đúng hoặc có những phần khó hiểu do biên tập kém, vui lòng liên hệ trực tiếp với chúng tôi qua Open Talk. Tôi sẽ ưu tiên cải thiện và tiến hành tải lên bản mới! Tôi đã kiểm tra nhiều lần nhưng có thể có sai sót vì tôi quản lý quá nhiều video.
H. Nội dung của lớp học bao gồm những nội dung nào?
Tôi đã cố gắng đưa vào tất cả kiến thức cần thiết để tạo UI trong Flutter. Ngoài ra, chúng tôi còn có kế hoạch đưa vào chức năng quản lý cơ sở dữ liệu đơn giản, yêu cầu mạng, quản lý trạng thái cơ bản, v.v.
Những gì hiện đang được lên kế hoạch để thêm vào
Bài giảng về yêu cầu HTTP (sử dụng Dio và Retrofit)
Quản lý dữ liệu và lưu trữ đệm đơn giản bằng Hive
Quản lý trạng thái đơn giản bằng cách sử dụng Provider
Các gói quản lý trạng thái phổ biến khác ngoài gói Provider sẽ được đề cập trong khóa học trung cấp! (BloC, GetX, v.v.) Ngoài ra, nếu bạn có kiến thức hoặc công nghệ nào muốn tôi phát triển, vui lòng chia sẻ với tôi qua nhiều kênh khác nhau. Tôi sẽ tích cực xem xét vấn đề này!
H. Có hướng dẫn nào về cách phát hành ứng dụng trên Play Store hoặc App Store không?
Tôi đang có kế hoạch thêm nó vào khóa học dành cho người mới bắt đầu. Nếu bạn muốn dùng thử bản phát hành trước khi bài giảng được ra mắt, vui lòng kiểm tra hướng dẫn trên trang web chính thức của Flutter. Phát hành ứng dụng Android / Phát hành ứng dụng iOS
Khác ✔️
(1) Các kênh khác nơi bạn có thể nhận được sự trợ giúp và học hỏi!
Những hình ảnh tôi cung cấp trong bài giảng là những hình ảnh tôi tự mua. Tôi đã mua bản quyền sáng tạo và phân phối tác phẩm nghệ thuật, nhưng bạn không đượcphép phân phối hình ảnh cho bất kỳ ai khác hoặc trên internet! Vui lòng không sử dụng hình ảnh cho bất kỳ mục đích nào khác ngoài mục đích học tập vì điều này có thể dẫn đến các vấn đề pháp lý do vi phạm bản quyền.
(3) Cách đặt câu hỏi
Một cách thực sự để cải thiện kỹ năng lập trình của bạn một cách nhanh chóng là học cách đặt câu hỏi đúng và chính xác. Do bản chất của lập trình, rất khó để xem toàn bộ mã. Vì vậy, tôi vừa tải lên toàn bộ mã cho tiện ích có vấn đề và nói "Mã này không hoạt động!" Nếu bạn làm vậy, tôi sẽ khó trả lời được. Khi đặt câu hỏi, nếu bạn sắp xếp câu hỏi theo ba bước dưới đây, chúng tôi có thể trao đổi và trả lời bạn nhanh hơn nhiều!
1️⃣ Tôi nghĩ nó sẽ hoạt động như thế nào? 2️⃣ Cách thức hoạt động hiện tại 3️⃣ Mã chính xác ở đâu và có vấn đề gì đang xảy ra (nếu có ví dụ👏)
(4) Bài giảng bổ sung đã được xác nhận
Ứng dụng đo bụi mịn sử dụng API của chính phủ (hoàn chỉnh)
Quản lý trạng thái bằng cách sử dụng gói Provider (tham khảo Khóa học trung cấp Code Factory Riverpod [Provider 100% tương thích])
I am a developer with 17 years of experience. I recommend this course to those who are new to Flutter, and it is also very useful for practical projects.
There is no better course than this one.
In my case, I studied for about 3 years through books, YouTube, and lectures given by other instructors, but this is the real deal.
Those who have some basic knowledge of Flutter can start with the last part, the fine dust app. It is explained so clearly that you won't regret the tuition, and it feels like it satisfies the basic knowledge and development tools that a developer needs. I am a developer with 17 years of experience, but I still have a lot of shortcomings, and this course has really helped me a lot. I look forward to the sequel. Please don't rush it and keep the quality as it is now^^
In most online lectures, the instructor talks on the screen and the students are busy following along, but in this lecture, the instructor directly helps with error corrections and corrects lecture errors through the online community. In that sense, I was able to learn as effectively as in offline lectures. And if I'm lucky, I can hear the instructor sing live. It's really the best!
At first, the term context is used a lot, but even if you have prior knowledge and say you will explain it later, I think it would be better to just briefly touch on it at the beginning. It appears constantly from the beginning to the middle of the lecture, but it is frustrating that you just pass it over saying you will explain it later. Of course, you can Google it and find out for yourself, but I am leaving a few words here for students who cannot.
Hello, I'm sorry for the frustration. Context means context in Korean. You can actually use context to find out the current state of the widget tree. So, if you use Theme.of(context) and MediaQuery.of(context), you can get the Theme or MediaQuery located at the top of the widget tree!
Finally, I've heard it all. I just listened to it without any knowledge of Flutter, but I got the feel of screen layout and drawing.
I still don't know what widgets are needed to create a screen, and I don't know the names of the widgets, but if I know the names of the widgets, I think I can draw them using documents or Googling.
In additional lectures or intermediate lectures, I hope there will be examples of actual apps that structure functions that are often used in real apps, such as splash screens, onboarding screens, logins, and http communications, in one app??
Hello! I'm working on a project with exactly that structure. It looks like it'll be the intermediate course you're looking for! In addition, if you take one more course on deep state management, caching system management, data modeling, Optimistic Response, Pagination, etc., I'll make sure you can grasp REST API integration.
Hello Code Factory. I am Flutter Nubi who used to live in Canada and asked about the possibility of overseas employment before taking the course. While taking the course, I started working on several side projects and studied iOS separately, so I delayed completing the course, but I finally finished the studies I had put off. I have taken many Flutter courses in Korean or English, but I think Code Factory's approach and method of explaining things are by far the best. I haven't gotten a job yet, but thanks to Code Factory, it has become much easier to develop with Flutter, and I have a better understanding of why and how the code is written and where to look for it. Whenever people around me say they want to learn Flutter, I always recommend this course to Koreans. Thank you for making such a great course. After my busy schedule, I will try to diligently study the intermediate course while preparing for employment! Thank you!!