Tải bản đầy đủ (.pdf) (16 trang)

Báo cáo thực tập phát triển ứng dụng WEB

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (335.23 KB, 16 trang )

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 TỐT NGHIỆP

PHÁT TRIỂN ỨNG DỤNG WEB

Công ty thực tập

: Công ty TNHH Giải pháp Phần mềm Tường Minh

Người phụ trách

: Phạm Hoàng Duy

Thực tập sinh

: Phạm Hồng Nhật Trường

TP. Hồ Chí Minh, tháng 5 năm 2022


LỜI MỞ ĐẦU

Với sự phát triển nhanh chóng mặt của thị trường phần mềm, có rất nhiều
hướng đi và cách phát triển phần mềm khác nhau, ngoài việc lên ý tưởng để phát
triển một phần mềm từ đầu, thì cách tạo ra một sản phẩm mới bằng cách phát triển,
cập nhật hoặc thay đổi những hệ thống hay phần mềm có sẵn để phù hợp với nhu
cầu riêng biệt của từng cá nhân hoặc tổ chức cũng đang là một xu hướng mới trong
ngành công nghiệp phần mềm trên thế giới.
Sau thời gian học tập trên trường, nhắm kiếm thêm kinh nghiệm thực tế,


cũng như muốn được tham gia trải nghiệm và làm việc trong một môi trường
chuyên nghiệp, em đã quyết định tìm kiếm một cơng ty để thực tập. Vì vậy, em
quyết định chọn TMA Solutions – một môi trường lý tưởng, hiện đại, chuyên
nghiệp - là nơi sẽ giúp em thực hiện kỳ thực tập này.

2


LỜI CẢM ƠN
Sau quá trình học tập và rèn luyện tại trường Đại học Công nghệ thông tin,
em đã nhận rất nhiều sự quan tâm, giúp đỡ của quý thầy cơ, gia đình và bạn bè. Em
xin gửi lời cảm ơn đến nhà trường và quý thầy cô khoa Công nghệ phần mềm đã
truyền đạt vốn kiến thức làm nền tảng cho em trong quá trình thực tập.
Sau ba tháng em thực tập tại công ty, em đã nhận được được nhiều sự giúp
đỡ cũng như học hỏi được khá nhiều kinh nghiệm trong lĩnh vực phát triển phần
mềm mà trước đây em chưa bao giờ biết tới. Em cảm ơn team anh Trần Ngọc Nhã,
chị Ngọc Ân và anh Phạm Hoàng Duy. Các anh chị trong thời gian qua đã tạo điều
kiện và hướng dẫn tận tình em trong suốt quá trình thực tập. Những kiến thức và
kinh nghiệm trong suốt thời gian qua đã giúp em dần hoàn thiện và có thêm kinh
nghiệm về quy trình làm việc và phát triển phần mềm.
Do kiến thức và thời gian thực hiện hạn chế, bản thân vẫn cịn nhiều thiếu
sót. Em rất mong nhận được góp ý để bài báo cáo này được hồn thiện.
TP. Hồ Chí Minh, tháng 5, năm 2022
Sinh viên thực hiện

Phạm Hoàng Nhật Trường

3



NHẬN XÉT CỦA KHOA

.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
TP. Hồ Chí Minh, ngày … tháng 5 năm 2022
Người nhận xét

4


MỤC LỤC

Chương 1: GIỚI THIỆU CÔNG TY THỰC TẬP .....................................................6
1.1. Giới thiệu công ty: .........................................................................................6
1.2. Sản phẩm công ty ..........................................................................................7
Chương 2: NỘI DUNG THỰC TẬP .........................................................................8
2.1. Tìm hiểu cơng ty và các kỹ năng cơ bản trong công ty .................................8
2.2. Nghiên cứu kỹ thuật ......................................................................................8
2.3. Tham gia project ..........................................................................................11
2.4. Lịch làm việc ...............................................................................................12
Chương 3: CHI TIẾT VỀ PROJECT .......................................................................14
3.1. Giới thiệu .....................................................................................................14
3.2. Thực hiện .....................................................................................................14
3.3. Kế hoạch ......................................................................................................14
TỔNG KẾT ...............................................................................................................16

5


Chương 1:

GIỚI THIỆU CƠNG TY THỰC TẬP
1.1. Giới thiệu cơng ty:

-

Tên công ty: Công ty TNHH Giải pháp Phần mềm Tường Minh

-

Tên thương mại: TMA Solutions


-

Địa chỉ:
o Head Office (Lab 1): 111 Nguyễn Đình Chính, Phường 15, Phú Nhuận,
TP. Hồ Chí Minh
o Office 3 (Lab 3): 10 Đặng Văn Ngữ, Phường 10, Phú Nhuận, TP. Hồ Chí
Minh
o Office 4 (Lab 4): 84A/5 Trần Hữu Trăng, Phường 10, Phú Nhuận, TP. Hồ
Chí Minh
o Office 5 (Lab 5): Anna Building – lot 1 – Central road, Công viên phần
mềm Quang Trung, Tân Chánh Hiệp, Quận 12, TP. Hồ Chí Minh
o Office 6 (Lab 6): TMA Tower – lot 17 – Road 10, Công viên phần mềm
Quang Trung, Tân Chánh Hiệp, Quận 12, TP. Hồ Chí Minh
o TMA Inovation Park (Lab 8): Đại lộ Khoa học, Phường Ghềnh Ráng,
Quy Nhơn

-

Tính đến năm 2022, công ty đã đạt 3500 nhân viên trong 25 năm phát triển
và có khách hàng đến từ 30 quốc gia

-

Website:

-

Email: (Internship Department)

-


Phone: 028 3997 8000 | ext: 5615 – 02838912532 (Internship Department)
6


-

Sơ đồ tổ chức:
CEO/Chairman
-

Delivery

-

Business/IT

-

CDF

-

Finance/Legal

-

TMA Overseas

-


QMS/PMO

-

HR/Admin Support

1.2. Sản phẩm công ty
TMA Solutions chuyên cung cấp các sản phẩm phần mềm phục vụ nhiều loại
hình dịch vụ khác nhau, đem lại trải nghiệm tốt nhất cho người dùng.

Các dịch vụ công ty chuyên cung cấp:
-

Visual Design

-

Software Testing

-

Porting & Migration

-

Production Support

-


IT Managed Services

-

Software Development

Cung cấp giải pháp cho nhiều lĩnh vực:
-

Telecom & Network

-

Finance & Insurance

-

E-Commerce & Distribution

-

Media & Publishing

-

Automovite

-

Manufacturing & Logistics & Transportation


-

Health

- Education & Training

7


Chương 2:

NỘI DUNG THỰC TẬP
Đợt thực tập kéo dài ba tháng 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 .NET, đồ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 chun
nghiệ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: 1 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, q trình thành lập và phát
triển, cách thức tổ chức, các quy trình phần mềm đặc trưng 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 làm việc, các quy định cần phải tuân thủ, cách sử dụng các
công cụ trao đổi, các kho tài liệu nội bộ của công ty,…

Kết quả: Hiểu thêm nhiều định hướng, nguyên tắc của TMA, quá trình thành lập và
phát triển. Biết được cách làm việc, hoạt động trong môi trường thực tế ở một công
ty phần mềm.
2.2. Nghiên cứu kỹ thuật
2.2.1. Tìm hiểu về ASP.NET Core và Entity framework
Nội dung:
-

ASP.NET Core: Tìm hiểu các thành phần cơ bản, Dotnet CLI, cấu trúc một
dự án ASP.NET Core, cách config, …

-

Entity framework: Tìm hiểu các thành phần cơ bản, dbcontext, entity,
migration, code-first, db-first,…

-

Tìm hiểu các cơng cụ trên Visual Studio.

-

Nghiên cứu sử dụng git.
8



-

Tìm hiểu cách viết một REST với ASP.NET Core và Entity framework, tạo
một git repository.

Thực hiện:
-

Đọc nội dụng hướng đẫn của mentor.

-

Tự tìm hiểu các tài liệu liên quan.

-

Thực hành áp dụng vào project.

Kết quả:
-

Hiểu được kiến thức cơ bản về ASP.NET Core và Entity framework.

-

Nắm được cách sử dụng Visual Studio, Git, NuGet ackage manager.

2.2.2. Tìm hiểu về Microsoft SQL Server

Nội dung:
-

Nghiên cứu cái tài liệu về SQL, các cú pháp SQL, …

-

Tìm hiểu và cài đặt Microsoft SQL server.

-

Kết nối với dự án với database.

Thực hiện:
-

Đọc nội dung hướng dẫn của mentor.

-

Tự tìm hiểu các tài liệu liên quan.

-

Thực hành áp dụng vào project.

Kết quả:
-

Hiểu được kiến thức cơ bản về Microsoft SQL Server.


-

Nắm được cách cài đặt và sử dụng Microsoft SQL Server, Microsoft SQL
Server Management Studio.

2.2.3. Tìm hiểu về MongoDB
Nội dung:
-

Nguyên cứu tài liệu về MongoDB.

-

Tìm hiều cách cài đặt và MongoDB.

-

Kết nối dự án với database.

Thực hiện:
-

Đọc nội dung hướng dẫn của mentor.

-

Tự tìm hiểu các tài liệu liên quan.
9



-

Thực hành áp dụng vào project.

Kết quả:
-

Hiểu được kiến thức cơ bản về MongoDB.

-

Nắm được cách cài đặt và sử dụng MongoDB và MongoDB Compass.

2.2.4. Tìm hiều về Repository partern và Domain Driven Design
Nội dung:
-

Repository pattern: Tìm hiểu và refactor dự án theo repository pattern.

-

Domain Driven Design: Tìm hiểu các lớp trong DDD, áp dụng và refactor dự
án theo DDD

Thực hiện:
-

Đọc nội dung hướng dẫn của mentor.


-

Tự tìm hiểu các tài liệu liên quan.

-

Thực hành áp dụng vào project.

Kết quả:
-

Hiểu được kiến thức cơ bản về Repsitory pattern và Domain Driven Design.

-

Nắm được cấu trúc của một ứng dụng theo Repsitory pattern và Domain
Driven Design.

2.2.5. Tìm hiều về microservice
Nội dung:
-

Tìm hiểu kiến trúc microservice, lí dó sự dụng, ưu nhược điểm, …

-

Tìm hiểu cấu trúc dự án theo mircoservice.

-


Tìm hiều Microsoft Azure, các thao tác cơ bản.

-

Tìm hiều quy trình làm việc của team trên Microsoft Azure.

-

Áp dụng và refactor dự án theo microservice

Thực hiện:
-

Tìm hiều qua nội dung hướng dẫn của mentor.

-

Tự tìm hiểu các tài liệu liên quan.

Kết quả:
-

Hiểu được kiến thức cơ bản về microservice

-

Nắm được cách thao tác trên Microsoft Azure
10



2.2.6. Tìm hiểu về Apache Kafka
Nội dung:
-

Tìm hiểu về Apache Kafka, lí do sử dụng, khi nào sử dụng, các hoạt động, …

-

Tìm hiểu cách cài đặt Kafka ở local.

-

Sử dụng Kafka vào dự án.

Thực hiện:
-

Tìm hiều qua nội dung hướng dẫn của mentor.

-

Tự tìm hiểu các tài liệu liên quan.

-

Thực hành áp dụng vào project.

Kết quả:
-


Hiểu được kiến thức cơ bản về Apache Kafka.

2.2.7. Tìm hiều về IdentityServer4
Nội dung:
-

Tìm hiểu về IdentityServer4, các thành phần, cách cấu hình IdentityServer4
trong một dự án, …

-

Sử dụng IdentityServer4 vào dự án.

Thực hiện:
-

Tìm hiều qua nội dung hướng dẫn của mentor.

-

Tự tìm hiểu các tài liệu liên quan.

-

Thực hành áp dụng vào project.

Kết quả:
-

Hiểu được kiến thức có bản về IdentityServer4.


2.3. Tham gia project
Sau một tháng được training và thực hành, thực tập sinh đã nắm được những
kiến thực cơ bản về ASP.NET Core, Entity Framework, SQL Server, MongoDB, ...

11


Trong tháng thứ hai, thực tập sinh cần áp dụng những kiến thức đã học để thực hiện
một project .
Chi tiết project sẽ được nói ở phần sau.
2.4. Lịch làm việc
Tuần

Cơng việc
-

Người hướng dẫn

Nhận xét của
người hướng dẫn

Tìm hiểu cơng ty, cách tổ Phạm Hoàng Duy
chức và làm việc

1

-

Làm quen với các cơng

cụ làm việc

-

Được giới thiệu về dự án

-

Tìm hiểu ASP.NET Core

2

và Entity framework
-

Bắt đầu thực hiện dự án

-

Tìm hiều Mongodb và

3
-

Triển khai vào dự án

-

Tìm hiểu global


8

Phạm Hồng Duy

exception handling và
logging
-

Triển khai vào dự án

-

Tìm hiểu Unit testing

-

Viết unit test cho dự án

-

Tìm hiều Domain Driven Phạm Hồng Duy

6

7

Phạm Hoàng Duy

repository pattern


4

5

Phạm Hoàng Duy

Phạm Hoàng Duy

Design
-

Áp dụng vào dự án

-

Tìm hiểu microservice

-

Triển khai vào dự án

-

Tìm hiểu Apache Kafka

-

Áp dụng vào dự án

Phạm Hoàng Duy

Phạm Hoàng Duy

12


9
10 – 12

-

Tìm hiều IdentityServer4

-

Áp dụng vào dự án

-

Cải thiện và hoàn thành

Phạm Hoàng Duy
Phạm Hoàng Duy

dự án

13


Chương 3:


CHI TIẾT VỀ PROJECT
3.1. Giới thiệu
Project nhằm mục đích traning cho thực tập sinh, giúp nắm bắt các công cụ, công
nghệ mà công ty sử dụng
Tên project: Ứng dụng quản lý bán hàng
Mô tả: Ứng dụng quản lý bán hàng đơn giản, bao gồm các chức năng quản lý sản
phẩm, quản lý bán hàng, thống kê, … Áp dụng các nội dụng kiến thức đã tìm hiểu
trong quá trình thực tập để hoàn thành dự án.
3.2. Thực hiện
Thực tập sinh: Phạm Hoàng Nhật Trường.
Dưới sự hướng đẫn của anh mentor Phạm Hoàng Duy.

3.3. Kế hoạch
Giai đoạn 1 – Kiến thức cơ bản:
-

Tìm hiều các nội dung thực tập tuần 1 – 4

-

Viết một REST API cho các chức năng chính của dự án

-

Refactor dự án theo repository pattern

-

Cài đặt global exception handling và logging


-

Viết unit test cho từng endpoint

Kết quả: Một backend có thể hoạt động cho dự án, cùng với các chức năng chính
Giai đoạn 2 – Kiến thức nâng cao với microservice
-

Tìm hiều các nội dung thực tập tuần 5 – 8

-

Refactor dự án theo Domain Driven Design

-

Tách API ban đàu thành các service và giao tiếp giữa chúng

-

Sử dụng Kafka để giao tiếp giữa các service

Kết quả: Một backend theo kiến trúc microservice
14


Giai đoạn 3 – Các kiến thức khác về .NET
-

Tìm hiểu các nội dung thực tập tuần 9 – 12


-

Áp dụng IdentityServer4 vào dự án

-

Fix bug và cải thiện và hoàn thành dự án

Kết quả: Đã hoàn thành các nội dụng chính của dự án

15


TỔNG KẾT

Như vậy, trong ba tháng qua, em đã tham gia và thực hiện dự án tại TMA
Solutions. Ba tháng thực tập này đã mang lại cho em nhiều kiến thúc và kinh
nghiệm. Dù đây là lần đầu em trải nghiệm việc phát triển phần mềm trong thực tế,
kết quả em đạt được đã vượt hơn mong đợi của em rất nhiều. Tuy nhiên, em cũng
nhận thấy được rằng bản thân cịn nhiều thiếu sót cần cải thiện, nếu thêm thời gian
nhất định em sẽ thể hiện và làm tốt hơn.
Chân thành cảm ơn sự giúp đỡ của các anh chị trong team tại TMA Solutions
và anh Phạm Hoàng Duy đã theo dõi và hướng dẫn quá trình thực tập của em, giúp
em hoàn thành tốt dự án và cả đợt thực tập này tại TMA Solutions.

16




×