1. Trang chủ
  2. » Luận Văn - Báo Cáo

Báo cáo thực tập lập trình ứng dụng di động đa nền tảng với flutter

26 5 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 26
Dung lượng 851,51 KB

Nội dung

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN KHOA CÔNG NGHỆ PHẦN MỀM BÁO CÁO THỰC TẬP MOBILE DEVELOPER LẬP TRÌNH ỨNG DỤNG DI ĐỘNG ĐA NỀN TẢNG VỚI FLUTTER Công ty thực tập: Lecle Vietnam Người phụ trách: Nguyễn Mạnh Hùng Thực tập sinh: Lê Hải Phong TP Hồ Chí Minh, tháng 06 năm 2023 LỜI MỞ ĐẦU Ở thời điểm tại, với tốc độ phát triển chóng mặt khoa học cơng nghệ đại ta thấy mức độ phổ biến, cung tiện dụng điện thoại thông minh điều phủ nhận với hàng tỉ người dùng tồn giới Và qua thấy ngành công nghiệp ứng dụng dành cho thiết bị di động ngày việc thiếu với 1.6 triệu ứng dụng App Store 3.5 triệu ứng dụng Google Play Store (số liệu quý 3/2022 theo Finbold thống kê) hai ơng lớn Apple Google cịn tăng lên nhanh nhiều tương lai Và với tốc độ phát triển nhanh chóng cơng nghệ đại ngày ứng dụng ngày trau chuốt ngày đẹp để đáp ứng nhu cầu người dùng Tuy nhiên với thời điểm trước để phát triển ứng dụng cho hai tảng lớn ta phải phát triển với hai module riêng biệt cho tảng, gây nên việc tốn nhiều chi phí để phát triển bảo trì Và nhận điều khái niệm lập trình đa tảng đời với khả phát triển ứng dụng cho nhiều tảng khác với source nguồn Có nhiều frameworks đa tảng khác như: Ionic, Xamarin, React Native, Adobe Phonegap gần Flutter ông lớn Google Mặc dù framework mẻ nhiên với hỗ trợ phát triển từ Google khơng phủ nhận phát triển nhanh chóng framework Trên giới có nhiều lập trình viên theo framework với xu hội nhập lập trình viên Việt Nam khơng phải ngoại lệ, góp phần tất yếu cho việc hội nhập với công nghệ xu giới cho ứng dụng Việt Nam Các ứng dụng sinh để phục vụ cho nhu cầu tất yếu sử dụng điện thoại thông minh không phân biệt lứa tuổi, sử dụng điện thoại thơng minh với tảng mà họ thích Android hay iOS với ứng dụng phát triển phù hợp với lứa tuổi nhu cầu họ, ứng dụng phát triển cách nhanh chóng với source code vô tiện lợi Và nhận thấy tiềm ngành công nghiệp ứng dụng di động mạnh việc phát triển ứng dụng đa tảng, đặc biệt mạnh framework đa tảng Flutter em định lựa chọn Flutter để làm định hướng cho đường phát triển ứng dụng di động Sau năm học tập trường, em có mong muốn trải nghiệm công việc thực tế, trau dồi nhiều kinh nghiệm có ích cho thân, tham gia phát triển ứng dụng môi trường chuyên nghiệp, em thực dự định thực tập học kì Và cơng ty em chọn Lecle Vietnam Mặc dù công ty cịn nhiên cơng ty Hàn Quốc với môi trường trẻ trung, động chuyên nghiệp, giúp em thực dự định LỜI CẢM ƠN Lời đầu tiên, em muốn gửi lời cảm ơn chân thành đến cơng ty Lecle Vietnam cho em có hội thực tập trải nghiệm thực tế công ty Qua tháng thực tập công ty với hướng dẫn nhiệt tình anh chị mentor trainer, sinh viên thực tập chúng em tiếp thu kiến thức quan trọng cần thiết cho trình phát triển ứng dụng di động kiến thức tảng để làm việc công ty định hướng cho thân cách chuyên nghiệp Em biết ơn em muốn gửi lời cảm ơn sâu sắc đến anh chị dành thời gian, cơng sức để hướng dẫn, dạy giúp em hồn thành q trình thực tập theo dự định Em xin gửi lời cảm ơn đặc biệt đến anh Nguyễn Mạnh Hùng, người training Flutter cho em hướng dẫn, giúp đỡ khó khăn cơng việc vượt qua khó khăn việc làm quen với môi trường làm việc quy trình làm việc cơng ty Anh người hướng dẫn cho em tư làm việc định hình quy trình làm việc thực dự án để em làm việc thuận lợi tránh sai sót hơn; cảm ơn anh Tạ Phi Phụng người training cho em kiến thức cần thiết mà em cần có cho cơng việc việc làm việc với backend Restful API, Firebase, sử dụng dịch vụ; cảm ơn anh Nguyễn Phi Ân người hướng dẫn cách lập trình giao diện với Flutter sử dụng package để dự án tốt hơn, sửa lỗi sai lập trình giao diện xử lý logic Flutter để giúp em cải thiện lỗi sai thường mắc phải để em rút kinh nghiệm lập trình giao diện Flutter tốt hơn; em gửi lời cảm ơn đến anh Lâm Xuân Triết người chia sẻ giúp em củng cố lại kiến thức cần thiết để giúp em áp dụng dự án; cảm ơn anh Vi Hữu Đức hướng dẫn cho em hiểu git cách quản lý source code; em xin cảm ơn anh chị thuộc team design, backend QA/QC hướng dẫn hỗ trợ em hoàn thành tốt dự án giao; cuối em xin gửi lời cảm ơn đến anh Nguyễn Mạnh Hùng Project Manager mobile team người cho em thêm kiến thức cần thiết mà em cần để giúp em bước đường định hướng trở thành Project Manager anh tương lai Và với đóng góp dẫn anh chị em hồn thành sản phẩm tham gia vào phát triển module thời gian thực tập Em xin gửi lời cảm ơn chân thành đến thầy cô khoa Công nghệ phần mềm nhiệt tình tạo điều kiện hỗ trợ em thực báo cáo Lê Hải Phong TP.HCM, 15/06/2023 NHẬN XÉT CỦA KHOA MỤC LỤC CHƯƠNG 1: GIỚI THIỆU CÔNG TY THỰC TẬP 1.1 Giới thiệu công ty Lecle 1.2 Sản phẩm công ty 1.3 Lịch làm việc công ty CHƯƠNG 2: NỘI DUNG THỰC TẬP 12 2.1 Tìm hiểu cơng ty kỹ công ty 12 2.2 Nghiên cứu kỹ thuật 13 2.2.1 Các công cụ làm việc 13 2.2.2 Tìm hiểu ngơn ngữ Dart 13 2.2.3 Tìm hiểu kiến trúc project Flutter 15 2.2.4 Tìm hiểu Firebase package Flutter 16 2.2.5 Lập trình ứng dụng Flutter cho tảng di động Android iOS 18 2.3 Tham gia dự án thực tế 20 2.3.1 Giới thiệu ứng dụng 20 2.3.2 Thực 20 2.3.3 Một số hình ảnh ứng dụng 21 2.3.4 Kế hoạch 21 2.3.5 Kết 21 CHƯƠNG 3: TỔNG KẾT 22 3.1 Điểm mạnh 22 3.2 Điểm yếu 22 3.3 Chuẩn đạt 23 TÀI LIỆU THAM KHẢO 24 TỔNG KẾT 25 CHƯƠNG 1: 1.1 GIỚI THIỆU CƠNG TY THỰC TẬP Giới thiệu cơng ty Lecle Cơng ty Lecle thành lập năm 2014 với trụ sở Hàn Quốc, sau mở rộng văn phịng sang thị trường Singapore Mỹ, sau năm 2017 cơng ty định thành lập văn phịng Việt Nam Cơng ty có chun mơn lĩnh vực Web, Blockchain, trước native app (Android, iOS) sau chuyển hướng sang Flutter Sau năm thành lập công ty xây dựng chỗ đứng vững thị trường Hàn Quốc, Mỹ, Singapore Việt Nam với lĩnh vực Blockchain với khách hàng Mỹ Singapore, khách hàng Hàn Quốc Việt Nam với lĩnh vực Web Mobile Với văn phòng đặt quốc gia thị trường lớn hàng đầu Mỹ, Hàn Quốc, Singapore Việt Nam, công ty gia công cung cấp phần mềm cho lĩnh vực Web, Block Chain, Mobile cho quốc gia với 200 nhân viên làm việc văn phịng cơng ty 1.2 Sản phẩm công ty Công ty Lecle cung cấp ứng dụng Web Mobile cho khách hàng Hàn Quốc Việt Nam, ngồi cơng ty cịn có dự án mảng Blockchain cho khách hàng Mỹ Singapore với nhiều khách hàng thân quen hợp tác lâu dài với công ty Công ty tiên phong việc chuyển đổi cập nhật công nghệ cho Blockchain có Flutter cho ứng dụng di động Nhờ hợp tác với khách hàng lâu năm với đội ngũ nhân lực tốt, công ty có số sản phẩm hệ thống server riêng công ty để tạo gitlab riêng công ty để quản lý source code, server cịn sử dụng cho dự án khách hàng họ có nhu cầu Ngồi cơng ty gia công sản phẩm cho số khách hàng lớn KPlaza, Unity, 1.3 Tuần Lịch làm việc công ty Công việc Người hướng Mức dẫn - Làm quen với nhân Anh độ Nhận xét người hướng hoàn thành Tạ Phi 100% viên công ty, cách tổ Phụng dẫn Sinh viên hồ đồng, tiếp thu quy trình nhanh chức, quy trình làm việc cơng ty - Làm quen với công cụ làm việc công ty - Học cách trao đổi, làm việc qua email tài khoản công ty cung cấp (quản lý source code, xin phép, …) - Ôn tập lại bổ Anh Tạ Phi 100% Nắm đủ kiến thức sung thêm kiến thức Phụng Sinh viên thực hành cần thiết quan trọng lại kiến thức có, ngơn ngữ Dart (lập trình góp ý để cải bất đồng bộ, thao tác API, thiện cách làm tốt …) - Thực hành kiến thức hướng dẫn củng cố - Làm test nhỏ kiến thức hướng dẫn - Tìm hiểu Firebase Anh dịch vụ Tạ Phi 100% Phụng Sinh viên hoàn thành đầy đủ yêu cầu củng cố thêm kiến thức chuyên - Củng cố bổ môn thực tiễn khác sung kiến thức IDE để lập trình Flutter - Tìm hiểu củng cố package Flutter từ nơi tìm đến việc quản lý ứng dụng package vào dự án - Tìm hiểu mơ hình phát triển dự án design pattern lập trình - Tìm hiểu, hỏi đáp cấu trúc tổ chức project mà công ty áp dụng dựa - Tiến hành tạo project tổ chức thử theo mơ hình hướng dẫn - Tìm hiểu RESTful API Anh Postman - Áp dụng kiến thức Phụng Tạ Phi 100% Sinh viên biết cách nghiên cứu kiến thức áp dụng vào thực tế API thực số designer kiểm tra 10 - 11 Giai đoạn 2: - Thực tích hợp API Anh Tạ Phi 100% Phụng Sinh viên biết cách vận dụng kiến thức học Nền tảng để tự học hỏi để lấy thông tin hiển thị thêm sau thông tin tương ứng - Sửa lỗi logic test case tester leader phản hồi 12 - Sửa lỗi logic Anh Tạ Phi 100% Sinh viên biết cách giải test case tester Phụng vấn đề khắc phục leader phản hồi lỗi - Sửa lỗi giao diện sau designer kiểm tra - Cải thiện trải nghiệm người dùng 13 - Báo cáo cuối đợt thực tập Hoàn thành đầy đủ tiêu người hướng dẫn đặt để kết thúc trình học hỏi giai đoạn thực tập Trang bị thêm cho thân sinh viên kỹ tự học, làm việc độc lập tự phát triển 11 CHƯƠNG 2: NỘI DUNG THỰC TẬP Đợt thực tập này, sinh viên thực tập với chủ đề “Lập trình ứng dụng di động đa tảng với Flutter” nhằm mục đích giúp sinh viên đào tạo tồn diện lập trình ứng dụng di động đa tảng với Flutter, đồng thời rèn luyện kỹ làm việc nhóm, giao tiếp, quản lý thời gian, công việc Tại công ty, sinh viên có hội học tập, khám phá làm việc môi trường phát triển chuyên nghiệp động 2.1 Tìm hiểu cơng ty kỹ công ty Thời gian: ngày Nội dung: - Giới thiệu công ty, cách tổ chức công ty số thơng tin cần biết q trình thực tập việc quản lý source code, thông tin tài khoản, … - Ngày đến công ty em nghe anh chị ban nhân trình bày trình thành lập phát triển cơng ty (như trình bày phần trên), đồng thời giới thiệu để nhân viên thực tập làm quen với toàn nhân viên team khác, thành viên team hướng dẫn thực tập, ban lãnh đạo công ty để tạo gắn kết, thân mật qua giới thiệu quy trình làm việc từ cao đến thấp cơng ty, cách tổ chức cơng ty - Ngồi nhân viên thực tập giới thiệu qua cách thức quy trình làm việc công ty thời gian làm, quy định công ty ban hành mà nhân viên phải tuân thủ, cách sử dụng email cơng việc, ngồi cịn có thơng tin tài khoản nhân viên email, gitlab, … Kết quả: - Hiểu thêm cơng ty Lecle Vietnam, q trình thành lập phát triển, ngồi cịn làm quen với nhân công ty, thành viên team hướng dẫn ban lãnh đạo để tạo thân thiết gắn kết nhân viên công ty Và qua có thêm kỹ việc quản lý email, tài khoản công việc thời gian làm việc, từ làm việc có kế hoạch, kỷ luật trách nhiệm tuân thủ điều lệ công ty 12 2.2 Nghiên cứu kỹ thuật 2.2.1 Các công cụ làm việc Thời gian: ngày Nội dung: - Tìm hiểu công cụ cần thiết sử dụng trình làm việc Trong thời gian làm quen đầu supervisor hướng dẫn cho thực tập sinh tìm hiểu cơng cụ giúp ích cho cơng việc khơng mà cịn sau Một số phần mềm Slack – dùng cho làm việc nhóm, Firebase Console – Một nơi vô cần thiết để sử dụng dịch vụ Firebase quản lý ứng dụng đăng ký, Visual Studio Code Android Studio – hai công cụ lập trình vơ phổ biến tiện lợi cho việc lập trình Flutter số plugin cần thiết cho IDE Thực hiện: - Thực hành việc cài đặt môi trường, IDE sử dụng phần mềm nêu Kết quả: - Thực tập sinh thực lập trình vơ tiện lợi với công cụ chuyên dụng cung cấp hồn tồn miễn phí tiện lợi, cơng cụ dễ dàng kết nối với nhau, so sánh việc sử dụng IDE để qua chọn IDE thích hợp làm việc lâu dài tùy vào hoàn cảnh yêu cầu cơng việc 2.2.2 Tìm hiểu ngơn ngữ Dart Thời gian: ngày Nội dung: - Thực tập sinh training nhắc lại ngơn ngữ lập trình Dart với kiến thức quan trọng để sử dụng cho Flutter (Dart ngôn ngữ cốt lõi Flutter) 13 - Lập trình hướng đối tượng: trainer nhắc lại củng cố kiến thức lập trình hướng đối tượng tính đóng gói, trừu tượng, kế thừa, đa hình Ngồi thực tập sinh số điểm khác biệt OOP mà Dart dùng so với ngôn ngữ khác - Lập trình bất đồng bộ: thực tập sinh trainer hướng dẫn phương pháp lập trình bất đồng Dart Đây kỹ thuật sử dụng nhiều thiếu Flutter để xử lý thao tác bất đồng tải file, đọc data từ database, … Ngoài thực tập sinh cịn giải thích rõ chế Isolate Async lập trình bất đồng để phân biệt dùng lúc, đồng thời thấy điểm mạnh, điểm yếu chúng - Làm việc với API: trainer Flutter team hướng dẫn cách để làm việc với API thông qua Dart với thư viện Dart cung cấp thư viện từ pub.dev Qua thực tập sinh biết cách gửi request đến API, nhận kết trả đánh chặn liệu để xử lý (có thể dùng số trường hộp debug xử lý data trước data lưu trữ lại, …) - Null safety: trainer hướng dẫn cho thực tập sinh kiến thức vô hay Flutter đưa vào thời gian gần lấy cảm hứng từ ngơn ngữ lập trình Kotlin là null safety, qua giúp thực tập sinh hiểu tầm quan trọng việc giúp ta tránh lỗi liên quan đến liệu null lập trình Nhờ vào điều giúp cho thực tập sinh tránh giảm thiểu tối đa rủi ro gặp phát triển dự án cho sau - Giao tiếp Dart Native code: trainer hướng dẫn cách để ngơn ngữ Dart giao tiếp với ngơn ngữ cho lập trình native Java, Kotlin (Android) Swift, Object-C (iOS) Qua giúp cho thực tập sinh hiểu chế để ngơn ngữ Dart gọi sử dụng code từ Native code cho Flutter project để hỗ trợ thư viện Flutter khơng cung cấp tính Native code (VD: lấy version hệ điều hành, dạng thao tác điện thoại mà người dùng cài đặt (như nút ấn, gesture, …), Thực hiện: - Tham gia đầy đủ buổi training công ty 14 - Thực thực hành để kiểm tra kiến thức training tạo class sử dụng phần hướng đối tượng Dart theo yêu cầu trainer, thực việc gọi API đơn giản từ API mẫu công ty để xem kết cấu trúc API, tạo thực phương thức tải ảnh máy cho phần lập trình bất đồng - Thực việc gọi native code đơn giản để nắm quy trình thao tác - Ngồi phải tìm hiểu thêm tài liệu mạng để nắm rõ thêm phần hướng dẫn Kết quả: - Nâng cao kỹ lập trình kiến thức cần có ngơn ngữ lập trình Dart - Có kiến thức quan trọng cho việc lập trình UI xử lý logic Flutter dựa ngơn ngữ Dart 2.2.3 Tìm hiểu kiến trúc project Flutter Thời gian: ngày Nội dung: - Thực tập sinh training mơ hình mà cơng ty sử dụng cho project, tìm hiểu số design pattern, SOLID principle tìm hiểu mơ hình phát triển dự án liên quan - Mơ hình phát triển ứng dụng: mơ hình tìm hiểu MVVM (Model – View – ViewModel) Đây mơ hình phát triển ứng dụng vô phổ biến nhiều công ty sử dụng dự án họ, thực tập sinh tìm hiểu kiến thức mơ hình để hiểu mơ nắm bắt cấu trúc mơ hình Ngồi thực tập sinh cịn nghe sơ qua mơ MVC hay MVP ưu, khuyết điểm chúng hiểu nên dùng mơ hình MVVM - Tìm hiểu cấu trúc trainer module dựa trên: tiến hành tìm hiểu kiến thức kiến thức viết liên quan nơi trainer dựa để viết module code tái sử dụng hướng dẫn cho thực tập sinh sau Đây viết cung cấp kiến thức đầy 15 đủ tổng quan mơ hình mà trainer sử dụng để giúp thực tập sinh hình dung phần cấu trúc sử dụng project module - Tìm hiểu SOLID principle: thực tập sinh yêu cầu tìm hiểu quy ước SOLID để qua hiểu rõ tẩm quan trọng việc có quy ước viết code cho thân để giúp cho thực tập sinh chủ động hoàn thiện thân cải thiện kỹ giúp code clean module tương lai - Tìm hiểu project module: thực tập sinh trainer hướng dẫn sâu cấu trúc tổ chức viết thành project module Các trainer hướng dẫn phần class đại diện cho lớp theo mơ hình MVVM để biết chức class sử dụng chúng giúp ích cho việc quản lý source code dự án Thực hiện: - Tham gia đầy đủ buổi training công ty - Thực hành, hỏi đáp trainer để làm rõ kiến thức training - Tìm hiểu thêm kiến thức mạng để củng cố bổ sung kiến thức cần thiết Kết quả: - Nâng cao khả tổ chức project - Bổ sung kiến thức quan trọng design pattern - Biết quy tắc viết code cho dễ đọc, dễ hiểu dễ quản lý không cho developer mà người developer khác gia nhập vào dự án sau 2.2.4 Tìm hiểu Firebase package Flutter Thời gian: ngày Nội dung: 16 - Thực tập sinh trainer Flutter team hướng dẫn tìm hiểu cách sử dụng Firebase console sử dụng dịch vụ nó, đồng thời tìm hiểu đăng ký ứng dụng lên Firebase, tìm hiểu nơi để nghiên cứu tìm package cần thiết cho dự án - Sử dụng Firebase Console: Trainer hướng dẫn cho thực tập sinh tìm hiểu Firebase hệ quản trị cho phần backend cung cấp Google sử dùng dự án công ty nhiều công ty khác giới Qua thực tập sinh biết cách đăng ký tài khoản, tạo cho project quản lý chúng tích hợp cách dịch vụ Firebase cung cấp cho dự án Đồng thời thực tập sinh gợi ý nơi tìm tài liệu Medium hay document Firebase để qua chủ động tìm tài liệu cần thiết trình thực dự án - Sử dụng package cho dự án: Các package Flutter cung cấp trang pub.dev, trang web mà developer Flutter ghé thăm thường xuyên để tìm cho package đóng góp từ Flutter team Google cộng đồng developer tồn giới Qua giúp thực tập sinh biết nơi cách tìm thư viện hỗ trợ cho tính mà Flutter chưa cung cấp Và thực tập sinh tìm hiểu thêm thao tác để thêm package quản lý package dự án việc quản lý version, override version, chọn version phù hợp update version cho package Thực hiện: - Tham gia đầy đủ buổi training công ty - Làm thực hành kiểm tra kiến thức học tiến hành tạo dự án đăng ký thử ứng dụng, thêm cho project số dịch Firebase thường dùng Firebase Cloud Messaging, Social Login thông qua hướng dẫn từ package từ pub.dev - Ngoài thực tập sinh cần tìm hiểu thêm kiến thức mạng để nắm đầy đủ bổ sung thêm kiến thức chưa hiểu Kết quả: 17 - Biết cách làm việc với Firebase liên kết với dịch vụ Firebase vào dự án thông qua package Flutter cung cấp thông qua pub.dev - Biết cách sử dụng quản lý package project 2.2.5 Lập trình ứng dụng Flutter cho tảng di động Android iOS Thời gian: ngày Nội dung: - Tìm hiểu cách Flutter xây dựng ứng dụng cho tảng Android iOS cách Flutter tối ưu code cho tảng chế hoạt động Flutter tảng - Định nghĩa Flutter: Flutter cơng cụ Google lập trình giao diện Google dựa ngơn ngữ lập trình Dart để xây dựng ứng dụng với giao diện đẹp, ứng dụng biên dịch thành code native tảng thiết bị mobile, web, desktop embedded với source code vớ hiệu “Build once, deploy everywhere” (Nguồn: flutter.dev) - Định nghĩa Android: Android tập hợp phần mềm (software stack) dành cho thiết bị di động, bao gồm hệ điều hành, phần mềm trung gian (middleware)và ứng dụng chủ chốt (key applications) Google Inc mua lại phát triển ban đầu phần mềm từ Android Inc., năm 2005 Android hệ điều hành di động dựa phiên sửa đổi nhân Linux phần mềm mã nguồn mở khác, thiết kế chủ yếu cho thiết bị di động hình cảm ứng điện thoại thơng minh máy tính bảng Android phát triển nhóm nhà phát triển gọi Open Handset Alliance Google tài trợ mặt thương mại (Nguồn: Wikipedia) - Định nghĩa iOS: iOS (trước iPhone OS) hệ điều hành thiết bị di động Apple Đây hệ điều hành chạy sản phẩm iPhone, iPad, iPod Touch hệ điều hành phổ biến thứ toàn cầu, sau Android Google Ban đầu hệ điều hành phát triển để chạy iPhone (gọi iPhone OS), sau mở rộng để chạy 18 thiết bị khác Apple iPod Touch (tháng năm 2007) máy tính bảng iPad (tháng năm 2010) (Nguồn: Wikipedia) - Tạo ứng dụng Flutter: thực tập sinh trainer nhắc lại cách tạo ứng dụng Flutter bản, cách sử dụng công cụ biên dịch, chạy ứng dụng Flutter máy ảo Android, iOS thiết bị thực tế hai tảng Android iOS việc debug build ứng dụng thông qua Wifi - Tối ưu code tảng Android iOS: Flutter cung cấp UI theo dạng Widget Widget xếp ứng dụng theo dạng với việc Widget cha build lại Widget nên trainer hướng dẫn cách để thực tập sinh giảm thiểu việc phải build lại nhiều Widget thông qua việc quản lý state Widget cho hiệu quả, qua tối ưu phần mềm hai tảng để tạo trải nghiệm tốt cho người dùng tiết kiệm nhiều thời gian nhà phát triển - Cơ chế hoạt động Flutter tảng này: Trainer giải thích cho thực tập sinh thêm chế mà Flutter vẽ giao diện mà developer lập trình lên hai tảng Android iOS thơng qua canvas qua Flutter tùy biến để vẽ giao diện theo ý muốn, qua cung cấp Widget vơ đẹp bắt mắt cho developer người dùng Flutter sử dụng công cụ để vẽ giao diện hai tảng dựa vào Skia mạnh render engine C++ (Nguồn: flutter.dev) - Lập trình ứng dụng cho tảng Android iOS sử dụng Flutter: Để lập trình Flutter có hiệu suất cao lập trình viên phải cố gắng để tối ưu số lượng widget, cố gắng module lại thứ dùng nhiều dự án màu sắc, font chữ… Vì trước tiến hành dự án thực tập sinh trainer yêu cầu chuẩn bị thứ tái sử dụng dự án giảm thiểu lượng code xuống tối đa Khi ứng dụng trở module với việc code tái sử dụng nhiều nơi sau thuận tiện cho việc quản lý sửa lỗi Thực hiện: - Tham gia đầy đủ buổi training công ty 19 - Tạo ứng dụng từ Flutter cho tảng với kiến thức củng cố chuyên sâu tảng native Android iOS - Tìm hiểu thêm kiến thức mạng để nắm rõ kiến thức hướng dẫn Kết quả: - Có thể hiểu rõ cách thức Flutter hoạt động tảng native di động Android iOS qua triển khai ứng dụng Flutter tốt cho tảng với kiến thức hướng dẫn (giúp dự án hoạt động tốt với dòng điện thoại khác tảng) 2.3 Tham gia dự án thực tế 2.3.1 Giới thiệu ứng dụng Đề tài ứng dụng thực tập anh chị nhóm training giao thực xây dựng ứng dụng Hurry Hungry Đây ứng dụng đặt đồ ăn trực tuyến với tiêu chí “Giúp người ăn ngon lúc nơi” Chỉ với vài thao tác đơn giản, người dùng cần chọn đồ ăn, chọn cửa hàng gần sau đặt hàng Đồ ăn giao đến nhanh chóng mức giá hợp lý với chương trình ưu đãi ln diễn ngày 2.3.2 Thực Thành viên thực hiện: - Lê Hoàng Phúc - Bùi Khắc Lam - Lê Hải Phong - Nguyễn Hữu Nghị - Hồ Quốc Nghĩa Và giúp đỡ trainer từ Mobile team 20 2.3.3 Một số hình ảnh ứng dụng 2.3.4 Kế hoạch Thời gian: tháng Nội dung: vận dụng kiến thức học, kết hợp với kiến thực mentor hướng dẫn vòng tháng vừa qua, xây dựng ứng dụng chạy Android iOS: - Xây dựng giao diện (UI) theo design có sẵn - Thực tích hợp API để lấy thơng tin hiển thị thơng tin tương ứng 2.3.5 Kết - Đã hồn thành UI theo yêu cầu - Vận dụng RestAPI để tích hợp API lấy thơng tin - Hiểu mơ hình Agile - Scrum phát triển dự án 21 CHƯƠNG 3: 3.1 TỔNG KẾT Điểm mạnh Sau trình thực tập em rút cho thân kinh nghiệm quý báu cho thân đề tài thực tập, kinh nghiệm quan trọng cho đường công việc sau này: - Học hỏi quy trình làm việc tổ chức công ty thực tế - Học hỏi thêm kiến thức Flutter cách làm việc với Firebase - Biết số quy trình, nguồn nhân lực giải rủi ro - Học hỏi cách tổ chức quản lý source code cho việc cho dễ dàng bảo trì phát triển thuận tiện cho việc đọc hiểu có người tham gia vào dự án - Học cách sử dụng công cụ để trao đổi giao tiếp, hỏi đáp công việc có thắc mắc để cơng việc sn sẻ - Học cách dùng Gitlab để quản lý source code, raise issue - Học kỹ mềm giao tiếp báo cáo để báo cáo công việc trao đổi công việc với thành viên nhóm PM - Học hỏi quy trình làm việc theo Scrum, quản lý task công việc theo Sprint 3.2 Điểm yếu Một số khó khăn sinh viên gặp phải trình thực tập cơng ty: - Khó khăn mặt di chuyển cơng ty có vị trí địa lý xa nhà - Khó khăn ngày đầu làm quen với quy trình làm việc sinh viên chưa trải nghiệm môi trường thực tế trước - Khó khăn mặt giao tiếp, trao đổi cơng việc vào ngày đầu chưa quen biết tồn thành viên team 22 - Khó khăn việc trao đổi dự án ngày đầu với PM sinh viên chưa nắm rõ quy trình làm việc thực tế cơng ty - Khó khăn ngày đầu việc quản lý source code dự án Gitlab công ty 3.3 Chuẩn đạt Kết đạt sau trình thực tập: Goal Mục tiêu mơn học G1 Hồn thiện tính xác thực, đăng nhập đăng ký, áp dụng vào dự án thực tế tham gia vào trình phát triển ứng dụng thực tế công ty G2 Hiểu thêm kiến thức chuyên sâu Flutter G3 Hiểu cách sử dụng Firebase tích hợp dịch vụ vào project G4 Hồn thành tốt thời gian thực tập trở thành nhân viên thức công ty G5 Phát triển kỹ tư duy, kỹ làm việc nhóm kỹ trình bày G6 Đọc, hiểu tài liệu giao tiếp tiếng Anh 23 TÀI LIỆU THAM KHẢO [Theo định dạng APA] Flutter documentation | Flutter [Internet] [cited 2023 Jul 4] Available from: https://docs.flutter.dev/ Flutter [Internet] YouTube [cited 2023 Jul 4] Available from: https://www.youtube.com/channel/UCwXdFgeE9KYzlDdR7TG9cMw Biswas S Add Flutter push notifications with Firebase Cloud Messaging [Internet] LogRocket Blog 2022 Mar 15 [cited 2023 Jul 4] Available from: https://blog.logrocket.com/add-flutter-pushnotifications-firebase-cloud-messaging/ Taneja R Flutter Facebook Login [Internet] Flutter Community 2018 Aug 14 [cited 2023 Jul 4] Available from: https://medium.com/flutter-community/flutter-facebook-login-77fcd187242 Khan S Google Sign In With Flutter [Internet] FlutterDevs 2020 Jul 29 [cited 2023 Jul 4] Available from: https://medium.com/flutterdevs/google-sign-in-with-flutter-8960580 24 TỔNG KẾT Như thời gian thực tập công ty tháng, em hồn thành ứng dụng chạy tảng Android iOS với source code Ứng dụng có đầy đủ tính để ban đầu có tính module source code tái sử dụng lại dự án khác Do có đủ thời gian để hồn thành nên ứng dụng có giao diện đầy đủ, trau chuốt hồn thiện tính thực cách đầy đủ Và với việc source code ứng dụng có tính module hóa nên việc bảo trì, tái sử dụng phát triển thêm hồn tồn thực có thêm thời gian Em xin chân thành cảm ơn anh chị Mobile team công ty Lecle hỗ trợ, dẫn sửa lỗi sai q trình hồn thành ứng dụng em để ứng dụng em hồn thiện giúp em học nhiều kiến thức chuyên mơn lẫn đức tính phong cách làm việc 25

Ngày đăng: 04/09/2023, 20:57

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w