báo cáo thực tập flutter developer

27 2 0
Tài liệu đã được kiểm tra trùng lặp
báo cáo thực tập flutter developer

Đ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

Chân thành cảm ơn Document Easy và các anh chị trong team Document Easy đã bỏ ra nhiều thời gian, công sức để hướng dẫn, hướng dẫn, giúp đỡ em tận tình trong khi làm quen môi trường mới

Trang 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 Flutter Developer

Công ty thực tập: Document Easy Người phụ trách: Nguyễn Chí Kiên

Thực tập sinh: Nguyễn Văn Pháp

Trang 2

LỜI MỞ ĐẦU

Trong cuộc cách mạng công nghiệp 4.0, công nghệ thông tin nói chung và ngành Công nghệ phần mềm nói riêng luôn là nhân tố đóng vai trò quan trọng trong quá trình phát triển của xã hội

Công nghệ ứng dụng di động, hay công nghệ sản xuất các ứng dụng di động đã phục vụ hầu hết các nhu cầu của con người từ bán hàng, cung cấp kiến thức đến thông tin liên lạc, Hiện nay đã có đến hơn 1.5 tỷ ứng dụng di động nhưng nhu cầu tạo ra những ứng dụng mới vẫn chưa có dấu hiệu giảm

Do đó, một ứng dụng di động muốn được nhiều người sử dụng phải đáp ứng được yếu tố hình thức và nội dung Làm thế nào để sản phẩm tạo ra đạt chất lượng cao ở hai yếu tố trên luôn làm bất kì một đội ngũ phát triển mobile nào cũng cần phải suy nghĩ đau đầu Để thử thách bản thân trong ngành công nghiệp web, em đã lựa chọn Flutter developer là định hướng cho việc học cũng như nghề nghiệp trong tương lai

Sau những năm tháng trong môi trường đại học, với mong muốn áp dụng những kiến thức đã học và có được trải nghiệm trong môi trường thực tế, em đã quyết định tham gia vào Document Easy – một môi trường lý tưởng và chuyên nghiệp để thực hiện dự định

Trang 3

LỜI CẢM ƠN

Em xin trân trọng gửi lời cảm ơn anh Nguyễn Chí Kiên đã tạo điều kiện cho em cơ hội được thực tập tại công ty Dù trong thời gian ngắn nhưng nhờ sự chỉ dẫn nhiệt tình của anh Kiên, em đã tiếp thu những kiến thức quan trọng để có thể tham gia một dự án thực tế

Chân thành cảm ơn Document Easy và các anh chị trong team Document Easy đã bỏ ra nhiều thời gian, công sức để hướng dẫn, hướng dẫn, giúp đỡ em tận tình trong khi làm quen môi trường mới cũng như trong việc tiếp cận kiến thức công nghệ, kỹ năng lập trình và tư duy sản phẩm để có thể thực hiện tốt dự án cá nhân và dự án thực tế trong thời gian qua

Em 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áo cáo này

TP HCM, ngày 30 tháng 12 năm 2023

Sinh viên thực hiện NGUYỄN VĂN PHÁP

Trang 4

NHẬN XÉT CỦA KHOA

Trang 5

Trang 6

MỤC LỤC

CHƯƠNG 1: GIỚI THIỆU CÔNG TY THỰC TẬP 1

1.1 Giới thiệu công ty Document Easy 1

1.2 Sản phẩm công ty 2

1.2.1 Extract Image From Video: 3

1.2.2 Office to PDF: PDF Converter: 2

1.2.3 Media Editor: 2

1.3 Lịch làm việc khi thực tập tại công ty 4

CHƯƠNG 2: NỘI DUNG THỰC TẬP 5

2.1 Tìm hiểu công ty và các kỹ năng cơ bản trong công ty 5

2.2 Nghiên cứu kỹ thuật 5

Trang 7

Hình 2.3: Trang cá nhân của khách hàng (Salon Việt) 8

Hình 2.4: Hình ảnh chọn chi nhánh và đặt lịch của khách (Salon Việt) 9

Hình 2.5: Màn hình chấm công và quản lý nhân viên của salon (Salon Việt) 10

Hình 2.6: Màn hình quản lý đặt lịch và voucher của salon (Salon Việt) 11

Hình 2.7: Một số hình ảnh phần khách hàng của Salon Việt 11

Hình 2.7: Màn hình đặt lịch (Alobo) 12

Hình 2.8: Màn hình tìm kiếm sân (Alobo) 13

Hình 2.9: Một vài màn hình minh họa phía quản lý (Alobo) 15

Trang 8

CHƯƠNG 1: GIỚI THIỆU CÔNG TY THỰC TẬP

1.1 Giới thiệu công ty Document Easy

Hình 1.1 Logo Document Easy

- Tên gọi: Document Easy

- Lịch sử hình thành: Công ty được thành lập từ năm 2019 - Công nghệ chính trong công ty: Mobile

- Địa chỉ: Phòng I.115B, Nhà A, Khu Công nghệ phần mềm, Đường nội bộ Đại học Quốc gia TP Hồ Chi Minh, Khu phố 6, Phường Linh Trung, Thành Phố Hồ Chí Minh, Việt Nam

- Website công ty: https://doczy.net - Điện thoại: 0967 373 003

- Mô tả: Document Easy được thành lập từ năm 2019 và là công ty product chuyên phát triển phần mềm cho nền tảng mobile bao gồm AppStore vs Google Play Ngoài ra công ty còn phát triển cả các trang web và nhiều phần mềm khác về outsourcing Ban đầu, công ty hướng tới công nghệ native, chia thành ứng dụng riêng cho Android và iOS, với mục tiêu chủ yếu là thao tác trên file và video Sau đó, công ty chuyển đổi sang framework Flutter để tối ưu hóa quá trình phát triển và cung cấp trải nghiệm người dùng linh hoạt hơn Hiện tại công ty tập trung vào

Trang 9

phát triển ứng dụng đặt lịch mang lại sự thuận tiện và hiệu quả trong quản lý thời gian cho người dùng

o Chuyển đổi ODT, ODS, ODP sang PDF

o Trình quản lý tệp: Nhập tệp, tạo thư mục, nén/giải nén, sao chép và di chuyển tệp,

o Không có giới hạn về kích thước tệp hoặc số lượng tệp được chuyển đổi

- Link: Office to PDF: PDF Converter - Apps on Google Play

1.2.2 Media Editor:

Trang 10

Hình 1.3: Ứng dụng Media Editor

- Ứng dụng giúp ạo - chỉnh sửa - áp dụng hiệu ứng - thêm nhạc vào tất cả video, Mp3 & Tất cả các tệp phương tiện Sau đó xuất thành video chất lượng cao để chia sẻ trên TikTok, Facebook, Instagram, …

- Link: Media Editor - Apps on Google Play

1.2.3 Extract Image From Video:

Trang 11

Hình 1.4: Ứng dụng Extract Image From Video

- Ứng dụng giúp trích xuất hình ảnh từ video và chỉnh sửa - áp dụng bộ lọc ảnh để chia sẻ trên Facebook, Instagram

1.3 Lịch làm việc khi thực tập tại công ty

Em tham gia làm việc tại công ty bắt đầu từ ngày 06/07/2023 tới 24/09/2023, các ngày làm việc trong tuần là từ thứ 2 tới thứ 6 Công việc hằng ngày bắt đầu từ lúc 8h sáng đến 17h30 Thời gian nghỉ trưa khoảng 1 tiếng 30 phút Sau mỗi task thực hiện, em sẽ báo cáo tiến độ công việc, đặt câu hỏi và nhận chia sẻ, giải đáp từ anh hướng dẫn, đưa ra kế hoạch cho các task tiếp theo Mỗi tuần sẽ họp tiến độ tuần 1 lần vào sáng thứ 2, mọi người sẽ cùng họp và bàn bạc về các vấn đề đã giải quyết, tồn đọng, bài học, giải pháp và mục tiêu cho tuần tiếp theo

Trang 12

CHƯƠNG 2: NỘI DUNG THỰC TẬP

2.1 Tìm hiểu công ty và các kỹ năng cơ bản trong công ty Thời gian: 2 ngày

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, 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ề văn hóa làm việc trong công ty như thời gian đi làm, các quy định, cách sử dụng email trong công việc, …

Kết quả: hiểu thêm về cách thức làm việc, những qui định tại Document Easy

và cách thức sử dụng Jira để quản lý công việc, quá trình thành lập và phát triển Có thêm các kỹ năng về việc báo cáo hàng tuần, làm việc có kế hoạch, có kỷ luật, có trách nhiệm hơn

2.2 Nghiên cứu kỹ thuật Thời gian: 2 tuần

Nội dung: Thực hiện theo khung chương trình thực tập mà công ty đưa ra

- Giai đoạn đầu tiên: Thực hiện code giao diện và xử lý theo yêu cầu

- Giai đoạn 2: Thực hiện reserch tìm hiểu và thao tác xử lý backend Cụ thể: o Tìm hiểu BLoC State Management (BlocProvider, BlocConsumer,

BlocBuilder, BlocListener, RepositoryProvider, MultiRepositoryProvider, …) Phân tích được luồng chạy của chương trình khi áp dụng BloC

o Tìm hiểu về cách gọi API sử dụng thư viện dio, xử lý các exception liên quan Xây dựng 1 ứng dụng tin tức nhỏ, sử dụng BLoC và dio

Trang 13

Hình 2.1: Kiến trúc BLoc

o Tìm hiểu về cách lưu trữ dữ liệu local sử dụng một số thư viện như: Hive, Sqflite, Floor Phân tích ưu nhược điểm của mỗi cái Sử dụng dữ liệu ở local làm cache của ứng dụng Từ ứng dụng tin tức của bài trước, phát triển thêm tính năng lưu trữ Chọn 1 thư viện mà bản thân cảm thấy tiện sử dụng nhất để lưu dữ liệu (Xử lý tất cả Exception có thể có) o Tìm hiểu cách gọi qua native (Android, iOS) thông qua MethodChannel, EventChannel Viết chương trình gọi qua native cơ bản, tự chọn chức năng, đủ 2 phương thức MethodChannel và EventChannel

o Tìm hiểu cách tạo clean architect project và áp dụng nó vào bài đã làm

- Giai đoạn 3: Được hướng dẫn sử dụng Jira để làm dự án thức tế

Hình 2.2: Jira Software

Trang 14

Kết quả: Sau quá trình trainning, bản thân biết và áp dụng BloC vào dự án thực tế

cũng như đồ án trên trường Bên cạnh đó, biết được cách làm việc với API thông qua thư viện dio hoặc biết được các thư viện có thể thao tác lưu dữ liệu ở local Cuối cùng là biết cách tổ chức 1 project sao cho có tính tổ chức, clean code và biết cách sử dụng

phần mềm quản lý dự án phần mềm

2.3 Tham gia dự án thực tế 2.3.1 Tổng quan dự án:

- Tên dự án: Ứng dụng đặt lịch - Công nghệ sử dụng: Flutter

a Salon Việt:

- Ứng dụng đặt và quản lý lịch dành cho các tiệm cắt tóc

- Khách hàng truy cập vào ứng dụng và chọn chi nhánh của cửa hàng mình muốn và thực hiện đặt lịch Bên cạnh đó, người dùng có thể quản lý được lịch trình của

bản thân, quản lý các voucher mà salon đưa cho

Trang 15

Hình 2.3: Trang cá nhân của khách hàng (Salon Việt)

Trang 16

Hình 2.4: Hình ảnh chọn chi nhánh và đặt lịch của khách (Salon Việt)

Trang 17

- Salon: sẽ quản lý các lịch đặt cụ thể trong từng chi nhánh, quản lý thông tin của salon, quản lý voucher (Thêm, xóa, chỉnh sửa), quản lý nhân viên (chấm công),

quản lý danh sách khách hàng của salon, thống kế

Hình 2.5: Màn hình chấm công và quản lý nhân viên của salon (Salon Việt)

Trang 19

b Alobo:

- Ứng dụng đặt và quản lý lịch dành cho các sân thể thao (cầu lông)

- Khách hàng truy cập vào ứng dụng và chọn sân mà mình muốn và thực hiện đặt lịch Bên cạnh đó, người dùng có thể quản lý được lịch trình của bản thân và nhận thông báo xác nhận từ sân đó

Hình 2.7: Màn hình đặt lịch (Alobo)

Trang 20

Hình 2.8: Màn hình tìm kiếm sân (Alobo)

Trang 21

- Sân: sẽ quản lý các lịch đặt cụ thể (duyệt đơn), việc bán hàng, quản lý đơn tháng, quản lý nhân viên (chấm công), quản lý danh sách khách hàng của salon, thống kế

Trang 22

Hình 2.9: Một vài màn hình minh họa phía quản lý (Alobo)

Trang 23

- Mô hình hóa giao diện - Quyết định các công nghệ

sử dụng

- Chia giai đoạn thực hiện

Anh Nguyễn Chí Kiên (CEO)

Anh Quang Vinh (team leader)

- Kết nối cơ sở dữ liệu (firebase)

- Thực hiện báo cáo công việc mỗi cuối tuần

Anh Quang Vinh (team

7

- Thực hiện unit test và chỉnh sửa để hoàn thành phiên bản demo cho khách hàng

Anh Quang Vinh (team leader)

- Góp ý chỉnh sửa bản thiết kế và chức năng

- Thực hiện xây dựng ui và thay đổi chức năng theo yêu cầu khách hàng (code) - Thực hiện unit test trước khi

đi demo lần 2 cho khách hàng

Anh Nguyễn Chí Kiên (CEO)

Anh Quang Vinh (team leader)

Chị Tiểu Vi (BA)

100%

Trang 24

11 – 12

- Họp mở rộng ứng dụng sang lĩnh vực đặt lịch cho sân cầu lông

- Thực hiện xây dựng và chỉnh sửa UI theo yêu cầu của khách hàng

Anh Nguyễn Chí Kiên (CEO)

Anh Quang Vinh (team leader)

- Qua dự án thực tế đã tham gia, bản thân được tham gia vào 1 quá trình phát triển phần mềm một cách có tổ chức, được chỉ dẫn để cải thiện kĩ năng lập trình rất nhiều và học được nhiều thứ như sử dụng phần mềm quản lý task (Jira), báo cáo tiến độ hàng tuần, phương pháp Agile, …

Trang 25

CHƯƠNG 3: TỔNG KẾT

Quãng thời gian thực tập tại Document Easy đã giúp em cải thiện bản thân rất nhiều trong quy trình làm việc thực tế, tác phong của người kỹ sư phần mềm Được làm việc tại đây, em đã học thêm được kỹ năng mềm sử dụng mail, quản lý ticket, làm việc nhóm, giao tiếp với cấp trên, … và quan trọng nhất là cải thiện được kĩ năng lập trình của mình (code và kiến thức về framework flutter)

Khi tham gia vào dự án thực tế, em cũng hoàn thành tốt các tác vụ đúng hạn và đạt chất lượng tốt

3.1 Điểm mạnh

- Kỷ luật: bản thân luôn tuân thủ đúng giờ giấc và nội quy trong công ty khá tốt - Chuyên môn: bản thân luôn hoàn thành đủ và đúng thời gian các task được giao - Giao tiếp: bản thân đã làm việc nhóm và giao tiếp với mọi người trong công ty

G1 Nắm bắt được xu hướng, nhu cầu xã hội và tính đặc thù của doanh nghiệp

G2 Hiểu và giải thích được các khái niệm cơ bản, thuật ngữ và sơ đồ hệ thống trong dự án

G3 Nắm được quy trình, phương pháp và công nghệ phát triển sản phẩm phần mềm tại doanh nghiệp

G4 Có khả năng tìm hiểu vấn đề, mô hình hóa vấn đề và tham gia giải quyết vấn đề

Trang 26

G5 Phát triển kỹ năng tư duy, kỹ năng làm việc nhóm và kỹ năng trình bày G6 Đọc, hiểu các tài liệu và giao tiếp bằng tiếng Anh

Trang 27

TÀI LIỆU THAM KHẢO

1 Tài liệu Bloc State Management Library (bloclibrary.dev): Link: Bloc State Management Library (bloclibrary.dev)

2 Tài liệu flutter:

Link: Flutter - Build apps for any screen

Ngày đăng: 15/05/2024, 09:22

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan