Tải bản đầy đủ (.docx) (15 trang)

Báo cáo thực tập lập trình WEB bằng JAVA SPRING

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 (138.81 KB, 15 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

LẬP TRÌNH WEB BẰNG JAVA SPRING

Cơng ty thực tập

: FPT SOFTWARE

Người phụ trách

: Phạm Ngọc Bảo Cương

Thực tập sinh

: Nguyễn Quốc Nam Sang

TP. Hồ Chí Minh, tháng 1 năm 2021


1

LỜI MỞ ĐẦU

Ngày nay, CNTT đã và đang đóng vai trò quan trọng trong đời sống kinh tế, xã hội
của nhiều quốc gia trên thế giới, là một phần không thể thiếu trong một nền kinh tế trí
thức năng động, ngày càng hiện đại hố. Vì vậy, việc số hóa và hiện đại hóa một số lĩnh
vực rất cần thiết sự phát triển của ngành Công nghệ thông tin đi theo
Ngơn ngữ lập trình Java giúp chúng ta phát triển những ứng dụng đặc thù để giải


quyết các vấn đề của xã hội, doanh nghiệp từ đó nâng cao năng suất làm việc hoặc nâng
cao chất lượng đời sống xã hội
Bên cạnh đó, việc sử dụng ngơn ngữ lập trình Java còn làm tăng hiệu năng của
phần mềm, giúp máy chủ xử lý được nhiều tác vụ hơn với cùng một khối tài nguyên đó
Sau ba năm học trên trường, em đã có đủ kiến thức lý thuyết và muốn có kinh
nghiệm thực tế hơn nên đã vào mơi trường FPT software chuyên nghiệp để tìm hiểu thêm
về cách một môi trường chuyên nghiệp, năng động phát triển phần mềm, cung cấp giải
pháp cho các vấn đề xã hội, doanh nghiệp trong và ngoài nước.


2

LỜI CẢM ƠN

Trân trọng gửi lời cảm ơn Công ty FPT Software đã 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 trainer,
em đã tiếp thu được những nhiều kiến thức, học hỏi nhiều kỹ năng, góp phần vào việc
phát triển sản phẩm cho công ty. Chân thành cảm ơn các anh chị trainer đã bỏ ra nhiều
thời gian, công sức để hướng dẫn em hoàn thành đợt thực tập này.
Đặc biệt cảm ơn anh Phạm Ngọc Bảo Cương, trainer chính đã hướng dẫn, giúp đỡ
cho em tận tình tìm hiểu cơng nghệ Java Spring và giúp em thích nghi với mơi trường
mới.
Bên cạnh đó, em chân thành cảm ơn anh Đinh Vũ Quốc Trung người hướng dẫn,
mentor em làm quen với các công nghệ frontend cơ bản như HTML,JS,JQuery
Cuối cùng, em thật lịng 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.
Nguyễn Quốc Nam Sang
Tp.HCM, 02/1/2020



3

NHẬN XÉT CỦA KHOA

Mục lục
LỜI MỞ ĐẦU

1

LỜI CẢM ƠN

2


4
Chương 1: Giới thiệu công ty thực tập

5

1. Giới thiệu công ty

5

2. Sản phẩm của công ty

6

Chương 2: Nội dung thực tập


7

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

7

2. Nghiên cứu kỹ thuật

7

2.1. Software Process Development

7

2.2. Tìm hiểu về Frontend

8

2.3. Tìm hiểu về hibernate

8

2.4. Tìm hiểu về Spring WEB MVC

8

2.5. Tìm hiểu về Spring Boot

9


2.6. Tìm hiểu về Unit test và Mockito

9

2.7. Thực hiện Mock Project

10

3. Lịch làm việc

10

TỔNG KẾT

12

TÀI LIỆU THAM KHẢO

13

Chương 1: Giới thiệu công ty thực tập


5

1. Giới thiệu công ty
FPT Software thành lập năm 1999, là cơng ty thành viên của FPT, Tập đồn Cơng
nghệ hàng đầu của Việt Nam. Sau 20 năm thành lập FPT Software hiện đang là công ty
phần mềm lớn nhất của Việt Nam và đứng trong Top 100 Nhà cung cấp dịch vụ
Outsourcing toàn cầu do International Association of Outsourcing Professionals

(IAOP) đánh giá.
FPT Software theo đuổi mục tiêu gia công phần mềm để đáp ứng cho nhu cầu
phát triển CNTT của các hãng phần mềm trong nước, các công ty lớn trong nước và
tham vọng hơn là xuất khẩu phần mềm trên tồn thế giới cho các cơng ty nước ngồi
biết đến tập đồn FPT, mục đích chính là vươn đến tầm cao mới thông qua công nghệ
nhằm nâng cao năng suất lao động.
Đến với FPT Software, nhân viên được phép phát huy tối đa khả năng sáng tạo,
nỗ lực đưa các sáng tạo vào các giải pháp công nghệ thông tin nhằm nắm bắt các cơ hội
đổi mới và phát triển nhằm đạt được mục tiêu chung của tập đồn là OneFPT - Cơng ty
xuất khẩu phần mềm hàng đầu tại Việt Nam.

2.

Sản phẩm của công ty


6

Là công ty chuyên xuất khẩu dịch vụ phần mềm, FPT Software cung cấp các dịch
vụ phát triển phần mềm và bảo trì, triển khai ERP, QA, chuyển đổi ứng dụng, hệ thống
nhúng, điện toán di động, điện toán đám mây… trong nhiều lĩnh vực như: Tài chính
ngân hàng, Viễn thông, Y tế, Chế tạo, Công nghiệp xe hơi, Dịch vụ công… Hiện FPT
Software đang tập trung nghiên cứu và phát triển dịch vụ CNTT dựa trên những nền
tảng công nghệ mới như IoT, S.M.A.C, cho các lĩnh vực sản xuất máy bay, sản xuất ơ
tơ, ngân hàng, truyền hình vệ tinh, viễn thơng trên phạm vi tồn cầu. Cơng ty hiện đã
và đang cung cấp dịch vụ cho khoảng 450 khách hàng là các tập đoàn lớn trên thế giới,
trong đó có 43 khách hàng nằm trong danh sách Fortune Global 500.
Từ 13 lập trình viên với giấc mơ đưa trí tuệ Việt Nam đi khắp năm châu, đội quân
FSOFT ở tuổi 18 với hơn 10.000 người, doanh thu hơn 230 triệu USD, tiếp tục biến
giấc mơ biến Việt Nam trở thành điểm sáng về CNTT trên bản đồ thế giới thành hiện

thực với mục tiêu đạt 1 tỉ USD doanh số năm 2020 và 30.000 người.
Sau 17 năm phát triển thị trường toàn cầu, đến nay FPT Software đã có 23 văn
phịng tại 14 quốc gia bao gồm Việt Nam, Nhật Bản, Singapore, Mỹ, Pháp, Đức,
Slovakia, Malaysia, Úc, Trung Quốc, Hàn Quốc, Myanmar, Philippines, Thái Lan.


7

Chương 2: Nội dung thực tập
Đợt thực tập với chủ đề “Lập trình Java Spring WEB” nhằm mục đích giúp sinh
viên thực tập học tập, làm quen với các công nghệ Java Spring để làm web appilcation,
đồ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 cơng nghệ như Spring Boot, Spring
MVC, Hibernate. Ngồi ra, thực tập sinh được trực tiếp hướng dẫn bởi những anh
mentor giàu kinh nghiệm. Bên cạnh đó, sinh viên được khám phá và làm việc trong
một môi trường phát triển phần mềm chuyên nghiệp, tích lũy những kiến thức giá trị.
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, 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 .
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…
Kết quả : Hiểu thêm về công ty FPT Software, 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. Software Process Development
Thời gian : 1 ngày
Nội dung : Tìm hiểu về các cơng cụ và quy trình sẽ được sử dụng trong quá trình làm
việc:
-

Các quy trình phát triển phần mềm


8

-

Unit testing

-

Time Sheeting

-

Secure Coding

Thực hiện : Thực hành học và sử dụng các phần mềm đã nêu trên, sau đó làm bài kiểm
tra để đánh giá chất lượng học viên.
Kết quả : Đạt bài kiểm tra và hoàn thành mục tiêu khóa học đề ra.
2.2.


Tìm hiểu về frontend
Thời gian : 14 ngày

Nội dung : Tìm hiểu về JS,HTML,Jquery,CSS
-

Tìm hiểu về HTML

- Tìm hiểu về CSS
- Tìm hiểu về Javascript
- Tìm hiểu về Jquery
Thực hiện:
-

Tìm hiều tổng quan về Front end programming.

-

Học và làm các bài kiểm tra để đánh giá chất lượng học viên.

Kết quả: Hiểu và hoàn thành bài kiểm tra đánh giá.
2.3.

Tìm hiểu về hibernate
Thời gian : 14 ngày
Nội dung : Tìm hiểu về hibernate ORM
-

Tìm hiểu ORM


-

Tìm hiểu code first, hirbernate Java

-

Tìm hiểu relational mapping và các công cụ khác của Hibernate(validator,
JPQL,…)

Thực hiện:
-

Học và làm các bài kiểm tra để đánh giá chất lượng học viên

Kết quả: Hiểu và hồn thành bài kiểm tra đánh giá.
2.4.

Tìm hiểu Spring WEB MVC
Thời gian : 1 tháng


9

Nội dung : Tìm hiểu về các cơng nghệ WEB MVC của Spring:
-

Tìm hiểu servlet,JSP

-


Tìm hiểu MVC

-

Tìm hiểu spring framework, spring core với spring config

-

Tìm hiểu JPA, spring data JPA

-

Tìm hiểu Maven, Dynamic web

-

Tìm hiểu Spring security, apache tiles, spring thymeleaf.

-

Tổng hợp kiến thức Spring WEB MVC

Thực hiện:
-

Học và làm các bài kiểm tra để đánh giá chất lượng học viên

Kết quả: Hiểu và hoàn thành bài kiểm tra đánh giá.
2.5.


Tìm hiểu về Spring Boot
Thời gian : 14 ngày
Nội dung : Tìm hiểu về Spring Boot và các cơng nghệ mới hơn Spring MVC
Thực hiện: Tìm hiểu về các vấn đề:
-

Spring Data

-

Spring Security: cơ chế xác thực và phân quyền

-

Spring boot config

Kết quả: Xây dựng được một ứng dụng Spring Boot đơn giản và đáp ứng được
yêu cầu của anh Mentor
2.6.

Tìm hiểu về Junit và Mockito
Thời gian : 7 ngày
Nội dung : Tìm hiểu về việc viết Unit bằng Junit và Mockito
-

Unit Testing with Junit

-

Mockito


-

Maven test

Thực hiện: Học theo khóa học và hoàn thành bài kiểm tra của người hướng dẫn.
Kết quả: Nắm các kiến thức căn bản về Unit test và hoàn thành bài kiểm tra.
2.7.

Thực hiện Mock project


10

Thời gian : 2 tháng
Nội dung : Áp dụng các kiến thực đã học vào làm một project thiệt
-

Spring WEB MVC

-

Spring Boot MVC

- Spring Boot API
- Azure + gitlab source control
Thực hiện: Làm mock project và báo cáo kết quả cho anh hướng dẫn
Kết quả: Nắm các kiến thức của module trước và áp dụng vô module này
3. Lịch làm việc
Tuần

1

2,3

4,5

6,7,8,9

Cơng việc
Người hướng dẫn
- Tìm hiểu về cơng ty, cách tổ chức
Anh Đinh Vũ Quốc Trung
của cơng ty.
- Tìm hiểu quy trình phát triển phần
mềm.

Tìm hiểu về Front end
Anh Đinh Vũ Quốc Trung
- Tìm hiểu về HTML
- Tìm hiểu về CSS
- Tìm hiểu về Javascript
- Tìm hiểu về Jquery
● Tìm hiểu về Hibernate:
Anh Phạm Ngọc Bảo Cương
- Tìm hiểu ORM
- Tìm hiểu code first, hirbernate Java
- Tìm hiểu relational mapping và các
cơng cụ khác của
Hibernate(validator, JPQL,…)
● Tìm hiểu về Spring WEB MVC:Anh Phạm Ngọc Bảo Cương

- Tìm hiểu servlet,JSP
- Tìm hiểu MVC
- Tìm hiểu spring framework,
spring core với spring config
- Tìm hiểu JPA, spring data JPA
- Tìm hiểu Maven, Dynamic web
- Tìm hiểu Spring security,
apache tiles, spring thymeleaf.


11

-

10,11

12

13,14

15.16

Tổng hợp kiến thức Spring
WEB MVC

● Tìm hiểu Spring Boot
Anh Phạm Ngọc Bảo Cương
- Spring Data
- Spring Security: cơ chế xác thực và
phân quyền

- Spring boot config
● Thực hiện Junit và Mockito:
Anh Phạm Ngọc Bảo Cương
- Đọc tài liệu đặc tả yêu cầu.
- Unit Testing with Junit
- Mockito
- Maven test
● Thực hiện Mock Project 1
Anh Phạm Ngọc Bảo Cương
- Đọc tài liệu đặc tả yêu cầu.
- Đọc tài liệu chi tiết thiết kế API
- Tạo Q&A cho khách hàng
- Code chức năng dùng Spring Boot
API và MVC
- Coding Convention
- Viết Unit Test cho chức năng
- Viết Checklist
- Dùng postman test API
- CI/CD trên Azure
- Deploy trên Azure server
●Thực hiện Mock Project 2
Anh Phạm Ngọc Bảo Cương
- Đọc tài liệu đặc tả yêu cầu.
- Tạo tài liệu chi tiết use case và
mockup
- Tạo Q&A cho khách hàng
- Code chức năng dùng Spring WEB
MVC
- Coding Convention
- Multi language dùng Spring

- Thymeleaf
- Viết Unit Test cho chức năng
- Viết Checklist
- Test và viết test case
- Source control bằng gitlab
- Deploy cho khách hàng(trainer)


12


13

TỔNG KẾT
Như vậy, chỉ trong vòng hơn bốn tháng ngắn ngủi, em đã được học hỏi và trải
nghiệm được nhiều thứ bổ ích. Cơng ty đã giúp em học được các công nghệ mới trong
ngành hiện này như Java Spring WEB, Spring Boot, Gitlab, Git bash, biết tổ chức làm
việc nhóm, giao tiếp trao đổi và giúp đỡ mọi người trong cơng việc, có được khả năng
làm việc chun nghiệp với đồng đội và độc lập. Bên cạnh đó, em còn học được cách giao
tiếp chuyên nghiệp với các đối tác, các sếp và kinh nghiệm xử lý tình huống bất ngờ khi
gặp lỗi.Những điều này sẽ là kiến thức và kinh nghiệm quý báu đề làm hành trang trên
con đường sự nghiệp của em
Chân thành cảm ơn sự giúp đỡ của các anh chị trong dự án và đặc biệt là anh Đinh
Vũ Quốc Trung- trainer Front End, anh Phạm Ngọc Bảo Cương – trainer chính và chị Lã
Thị Phương Hân - quản lý nhân sự dự án đã nhiệt tình giúp đỡ em hồn thành kỳ thực tập
này.
Đặc biệt, em sâu sắc cảm ơn quý thầy cô khoa Công nghệ Phần mềm đã dạy bảo,
cung cấp cho em những kiến thức nền tảng để có thể tham gia khóa thực tập của cơng ty.
Một lần nữa em xin chân thành cảm ơn.



14

TÀI LIỆU THAM KHẢO
Java Unit Testing with Spring Boot & Mockito:
/>Spring Boot:
/> /> />Spring MVC:
/> /> />
HTML+CSS+JS:
/>


×