1 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 Xây dựng ứng dụng Mobile với Flutter Công ty thực tập AiPower Người phụ trách Thân Thanh Uy Thực tập sinh Vũ Ngọc Mỹ Phươn[.]
Trang 1TRƯỜ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
Xây dựng ứng dụng Mobile với Flutter
TP Hồ Chí Minh, tháng 12 năm 2022
Trang 2LỜI MỞ ĐẦU
Thực tập doanh nghiệp luôn là chủ đề quan trọng trong quá trình học của sinh viên, đó là cơ hội cho em được học hỏi, trau dồi kinh nghiệm để từ đó có những định hướng đúng đắn, đề ra mục tiêu và con đường cho tương lai
Hiện nay Công nghệ thông tin vô cùng phát triển thì mọi người đều sử dụng máy vi tính hoặc điện thoại di động để làm việc và giải trí Do đó việc xây dựng các ứng dụng cho điện thoại di động đang là một ngành công nghiệp mới đầy tiềm năng và hứa hẹn nhiều sự phát triển vượt bậc của ngành khoa học kỹ thuật Phần mềm, ứng dụng cho điện thoại di động hiện nay rất
đa dạng và phong phú trên các hệ điều hành di động. Ngành công nghiệp mobile là một mảng
vô cùng quan trọng trong nền công nghiệp phát triển phần mềm Với sự phát triển của công nghệ, các thiết bị di động ngày càng được phát triển mạnh mẽ và có những chức năng hỗ trợ cuộc sống của con người tốt hơn Với tốc độ phát triển của các thiết bị di động, tốc độ phát triển của ngành lập trình ứng dụng di động cũng tăng trưởng nhanh chóng Ngày càng nhiều ứng dụng công nghệ được phát triển trên các nền tảng di động Các ứng dụng di động hỗ trợ và là phần không thể thiếu trong các ngành khác như du lịch, kinh doanh, vận chuyển, Chính vì những lý do trên mà em quyết định chọn lập trình di động làm định hướng cho sự nghiệp của mình.
Sau một khoảng thời gian học tập trên trường, em mong muốn có thể được trải nghiệm, học hỏi kinh nghiệm thực tế và được tham gia vào một môi trường làm việc tốt
Do đó em quyết định lựa chọn công ty AiPower để đồng hành trong quá trình thực tập này
Trang 3LỜI CẢM ƠN
Trân trọng gửi lời cảm ơn Công ty AiPower đã tạo điều kiện cho em có cơ hội được thực tập tại công ty
Chỉ trong một thời gian ngắn, nhưng nhờ sự chỉ dẫn nhiệt tình của các anh chị trong công ty, em đã tiếp thu được những kiến thức quan trọng để có thể xây dựng một ứng dụng mobile với Flutter Chân thành cảm ơn các anh chị trong công ty đã bỏ ra nhiều thời gian, công sức để hướng dẫn em, hướng dẫn, giúp đỡ cho em tận tình từ những khó khăn trong công việc cho đến những khó khăn trong việc làm quen với môi trường mới
để hoàn thành đợt thực tập này
Cũng xin cảm ơn thầy cô trong khoa Công nghệ phần mềm đã nhiệt tình hỗ trợ, tạo điều kiện em làm bài báo cáo này
Vũ Ngọc Mỹ Phương
TpHCM, tháng 12 năm 2022
Trang 4NHẬN XÉT CỦA KHOA
Trang 5
MỤC LỤC
LỜI MỞ ĐẦU 2
LỜI CẢM ƠN 3
NHẬN XÉT CỦA KHOA 4
CHƯƠNG 1: Giới thiệu công ty thực tập 6
I Giới thiệu về công ty AiPower 6
II Sản phẩm của công ty 7
CHƯƠNG 2: Nội dung thực tập 8
1 Tìm hiểu về công ty và các kỹ năng cơ bản trong công ty 8
2 Nghiên cứu kỹ thuật 9
3 Lịch làm việc 11
CHƯƠNG 3: Chi tiết về project 13
TỔNG KẾT 17
Trang 6CHƯƠNG 1: Giới thiệu công ty thực tập
I Giới thiệu về công ty AiPower
Hình 1.1 Logo của công ty
Tên công ty: CÔNG TY CÔNG NGHỆ AI POWER
Trụ sở văn phòng chính: Số 5 Đường Đồng Nai, Phường 2, Quận Tân Bình, TP Hồ Chí Minh, Việt Nam
Website: https://aipower.vn/
Email: info@aipower.vn
Thông tin:
AiPower chính thức thành lập từ tháng 3/2019, công ty mong muốn kết hợp với đối tác mang đến cho thế giới các giải pháp về công nghệ, đặc biệt là trong lĩnh vực blockchain
Là công ty phát triển các giải pháp phần mềm và sản phẩm trí tuệ nhân tạo trong mọi lĩnh vực đời sống với phương châm mang giác quan con người vào thiết bị công nghệ
AI POWER có đội ngũ kỹ sư giỏi từ các trường top đầu Việt Nam, hiểu cảm xúc khách hàng, làm việc theo phong cách Nhật Bản (HoRenSo)
Trang 7AI POWER có nhiều kinh nghiệm triển khai các dự án lớn, phức tạp và 20 năm kinh nghiệm trong lĩnh vực phát triển các giải pháp phần mềm trong và ngoài nước
II Sản phẩm của công ty
Hình 2.1 Hình ảnh minh họa hệ thống Giám Sát Container Thông Minh
- Giám Sát Container Thông Minh: Ứng dụng công nghệ dò tìm hình ảnh tự động
ghi lại thông tin chi tiết của container xuất nhập khẩu (mã, loại, kích cỡ,…) từ tàu vào bờ
và từ bờ đến Tự động chụp ảnh, lưu tất cả các mặt của container để ghi lại lịch sử, trạng thái tại thời điểm xuất nhập
Hình 2.2 Hình ảnh minh họa hệ thống Đặt chỗ
Trang 8- Hệ Thống Đặt Chỗ: Cho phép người dùng tìm và đặt chỗ, như phòng hội thảo
trong tòa nhà Cho phép xem thông tin liên quan đến phòng, tòa nhà,…
Hình 2.3 Hình ảnh minh họa hệ thống Quản Lý Nhà Hàng
- Quản Lý Nhà Hàng: Đối tượng là nhân viên và quản lý nhà hàng Cho phép theo
dõi tình trạng của từng nhà hàng, chi tiết từng bàn ăn Đặt hàng, theo dõi tình trạng và thời gian xử lý thức ăn Thu lại đánh giá của khách hàng
CHƯƠNG 2: Nội dung thực tập
Đợt thực tập với chủ đề “Lập trình ứng dụng di động với Flutter” nhằm mục đích giúp sinh viên thực tập được đào tạo toàn diện về lập trình ứng dụng di động đa nền tảng với Flutter, đồng thời rèn luyện những kỹ năng mềm như làm việc nhóm, thuyết trình, giao tiếp Tại công ty, sinh viên có cơ hội được học tập, khám phá và làm việc trong một môi trường phát triển phần mềm, được tận tay tham gia vào ứng dụng với nhiều khách hàng sử dụng
1 Tìm hiểu về công ty và các kỹ năng cơ bản trong công ty
Thời gian: 2 ngày
Trang 9 Nội dung: Giới thiệu về công ty, cách tổ chức của công ty Được nghe người phụ
trách giới thiệu về công ty, quá trình thành lập và phát triên (như đã nhắc đến ở trên), quy trình làm việc từ cao xuống thấp, cách thức tổ chức của công ty
Ngoài ra, thực tập sinh còn được giới thiệu về cách thức làm việc trong công ty như thời gian đi làm, các quy định cần phải tuân thủ, cách sử dụng email trong công việc…
Thực hiện: Đọc tài liệu, làm quen với môi trường làm việc ở công ty.
Kết quả: Hiểu thêm về công ty AiPower, quá trình thành lập và phát triển Có
thêm các kỹ năng về việc sử dụng email trong công việc, làm việc có kế hoạch, có kỷ luật, có trách nhiệm hơn
2 Nghiên cứu kỹ thuật
2.1 Tìm hiểu Flutter cơ bản
Thời gian: 2 tuần
Nội dung: Tìm hiểu các kiến thức cơ bản về Flutter:
- Tìm hiểu các cách hoạt động của Flutter
- Tìm hiểu cách xây dựng Layout của ứng dụng bằng các Widget
- Tìm hiểu ngôn ngữ Dart
- Tìm hiểu cách chuyển trang ứng dụng với Navigator và Router
- Tìm hiểu cách quản lý state với StatefulWidget, StatelessWidget và Provider
- Tìm hiểu đọc file JSON với thư viện dart:convert
- Tìm hiểu việc sử dụng các packages và plugins
- Tìm hiểu việc test với Flutter
Thực hiện:
- Đọc tài liệu
Trang 10- Làm bài tập vận dụng
Kết quả: Hiểu các nội dung cơ bản về Flutter
2.2 Tìm hiểu Flutter nâng cao
Thời gian: 2 tuần
Nội dung: Tìm hiểu các kiến thức nâng cao về Flutter:
- Tìm hiểu cơ chế bất đồng bộ (asynchronous) với Futures và Streams
- Tìm hiểu về Animation
- Tìm hiểu cách thêm các assets như font chữ, hình ảnh
- Tìm hiểu thêm về Layouts và cách xây dựng responsive app
- Tìm hiểu về Forms và Validation
- Tìm hiểu cách gọi native code từ Flutter thông qua MethodChannel
- Tìm hiểu lưu data trên local với plugin Hive và Sqflite
- Tìm hiểu cách build release và customize icon của ứng dụng
- Tìm hiểu Flutter DevTools
Thực hiện:
- Đọc tài liệu
- Làm bài tập vận dụng
Kết quả: Hiểu các nội dung nâng cao về Flutter
2.3 Tìm hiểu Firebase
Thời gian : 1 tuần
Nội dung : Tìm hiểu các dịch vụ của Firebase
Trang 11- Tìm hiểu Firestore, Realtime Database
- Tìm hiểu liên kết Firebase tới Google Sheets và ngược lại
- Tìm hiểu Dynamic Links
Thực hiện:
- Đọc tài liệu
- Làm bài tập vận dụng
Kết quả : Biết được các dịch vụ của Firebase và cách sử dụng.
2.4 Thực hiện project
Sau thời gian được training và thực hành, thực tập sinh đã nắm được những kiến thức về Flutter Sau đó trainer sẽ hướng dẫn thực tập sinh áp dụng những kiến thức đã học để thực hiện một project đơn giản
3 Lịch làm việc
Nhận xét của người hướng dẫn
Trang 12- Tìm hiểu về công
ty, cách tổ chức của
công ty
- Làm quen với các
công cụ làm việc
trong công ty
- Học cách trao đổi,
làm việc qua email,
skype
Anh Thanh Uy Hoàn thành
2
- Tìm hiểu ngôn ngữ
lập
trình Dart và Flutter
framework
- Thực hành
Anh Thanh Uy Hoàn thành
3
- Tìm hiểu kiến thức
cơ bản về Flutter
- Thực hành một số
bài tập vận dụng
Anh Thanh Uy, Anh Việt Mỹ Hoàn thành
4 - Tìm hiểu kiến thức
nâng cao về Flutter
Anh Việt Mỹ, Anh Tùng Hoàn thành
Trang 13- Thực hành.
5
- Tìm hiểu kiến thức
nâng cao về Flutter
- Thực hành
Anh Việt Mỹ, Anh Tùng Hoàn thành
6,7,8 Thực hieẹn project Anh Việt Mỹ,Anh Tùng Hoàn thành
CHƯƠNG 3: Chi tiết về project
Tên project: Ứng dụng mua sắm quần áo
Mô tả: Ứng dụng mua sắm quần áo cho phép người dùng có thể lựa chọn sản
phẩm mình yêu thích để mua
Thực hiện: Team thực tập sinh
Nội dung thực hiện:
- Ứng dụng các kiến thức về Widget, Layout, Theme để thiết kế và cài đặt UI
- Ứng dụng kiến thức về sử dụng package, plugin để sử dụng các package hỗ trợ cài đặt UI
- Ứng dụng kiến thức về cách sử dụng hệ quản trị cơ sở dữ liệu Firebase kết hợp với ứng dụng Flutter
Hình minh họa project:
Trang 14Hình 3.1 Màn hình chính
Trang 15Hình 3.2 Màn hình chi tiết giỏ hàng
Hình 3.3 Màn hình loại thành viên
Trang 16Hình 3.4 Màn hình thanh toán
Trang 17Hình 3.6 Màn hình thông tin người dùng
TỔNG KẾT
Qua thời gian thực tập ở AiPower, các anh chị nhân viên trong công ty đã giúp học hỏi được thêm nhiều kiến thức chuyên môn bổ ích, các kỹ năng cần thiết khi làm việc, hiểu được quy trình làm việc thực tế của ngành công nghệ thông tin
Do trình độ hiểu biết cũng như chưa có kinh nghiệm nên bài báo cáo này không tránh khỏi những sai sót nên em mong nhận được sự góp ý của các anh chị tại AiPower và nhận xét quý báu của thầy cô trường Đại học Công nghệ thông tin Cuối cùng, em xin một lần nữa cảm
ơn các anh chị ở AiPower, thầy cô ở trong khoa đã truyền đạt những kiến thức, kinh nghiệm làm việc của mình cho em trong suốt quá trình thực tập.