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ương
TP. Hồ Chí Minh, tháng 12 năm 2022
1
2
LỜI MỞ ĐẦU
Thực tập doanh nghiệp luôn là chủ đề quan trọng trong q 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.
2
3
LỜ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
3
4
NHẬN XÉT CỦA KHOA
.........................................................................................................................................................
.........................................................................................................................................................
.........................................................................................................................................................
.........................................................................................................................................................
.........................................................................................................................................................
.........................................................................................................................................................
.........................................................................................................................................................
.........................................................................................................................................................
.........................................................................................................................................................
.........................................................................................................................................................
.........................................................................................................................................................
.........................................................................................................................................................
.........................................................................................................................................................
.........................................................................................................................................................
.........................................................................................................................................................
.........................................................................................................................................................
.........................................................................................................................................................
.........................................................................................................................................................
.........................................................................................................................................................
.........................................................................................................................................................
.........................................................................................................................................................
.........................................................................................................................................................
.........................................................................................................................................................
.........................................................................................................................................................
4
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.
II.
Giới thiệu về công ty AiPower.........................................................................................................6
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
5
6
CHƯƠ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: /> Email:
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).
6
7
AI 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à ngồ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ỗ
7
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 tồ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
8
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, q 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 .
Ngồ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, q 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
9
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
- Tìm hiểu Authentication
10
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
Tuần
Cơng việc
Người hướng
dẫn
11
Mức độ
hồn thành
Nhận xét của
người hướng
dẫn
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
1
cơng cụ làm việc
Anh Thanh Uy
Hồn thành
Anh Thanh Uy
Hồn thành
Anh Thanh Uy,
Anh Việt Mỹ
Hồn thành
trong cơng ty.
- Học cách trao đổi,
làm việc qua email,
skype.
- Tìm hiểu ngơn ngữ
lập
2
trình Dart và Flutter
framework.
- Thực hành.
- Tìm hiểu kiến thức
3
cơ bản về Flutter
- Thực hành một số
bài tập vận dụng
4
- Tìm hiểu kiến thức
nâng cao về Flutter
Anh Việt Mỹ,
Anh Tùng
12
Hồn thành
13
- Thực hành.
- Tìm hiểu kiến thức
5
nâng cao về Flutter
Anh Việt Mỹ,
Anh Tùng
Hoàn thành
Anh Việt Mỹ,
Anh Tùng
Hoàn thành
- Thực hành.
6,7,8
Thực hieẹn project
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 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:
13
14
Hình 3.1 Màn hình chính
14
15
Hì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
15
16
Hình 3.4 Màn hình thanh tốn
Hình 3.5 Màn hình tất cả đơn hàng
16
17
Hì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 chun 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.
17