1. Trang chủ
  2. » Tất cả

Báo Cáo Thực Tập Lập Trình Back-End Website.pdf

18 27 0
Tài liệu đã được kiểm tra trùng lặp

Đ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

Thông tin cơ bản

Tiêu đề Báo Cáo Thực Tập Lập Trình Back-End Website
Tác giả Nguyễn Quang Gia Bảo
Người hướng dẫn Trần Ngọc Nhã
Trường học Trường Đại Học Công Nghệ Thông Tin
Chuyên ngành Khoa Công Nghệ Phần Mềm
Thể loại Báo Cáo Thực Tập
Năm xuất bản 2022
Thành phố TP. Hồ Chí Minh
Định dạng
Số trang 18
Dung lượng 566,93 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Nguyễn Quang Gia Bảo 19521251 `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 BACK END WEBSITE Công ty thực tập TMA SOLUTIONS Người phụ trách Trần Ngọc Nhã Thực[.]

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

LẬP TRÌNH BACK-END WEBSITE

Công ty thực tập : TMA SOLUTIONS Người phụ trách : Trần Ngọc Nhã Thực tập sinh : Nguyễn Quang Gia Bảo

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

Trang 2

Mục lục

Mục lục 2

Chương I: Giới thiệu công ty 5

1 Giới thiệu công ty TMA Solutions 5

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

Chương II: 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 Giới thiệu, làm quen với các thành viên trong nhóm dự án 7

3 Kế hoạch thực tập 8

4 Lịch thực tập và làm việc 9

Chương III: Những kiến thức được học trong quá trình thực tập 10

1 Kiến thức về ASP.NET 10

Cấu trúc của Net framework dựa trên các thành phần cơ bản sau: 10

2 Kiến thức về RESTful Web Service 11

3 Kiến thức về Entity Framework 12

4 Kiến thức về Microservices 13

5 Kiến thức về Git Technology 14

Chương IV: Chi tiết về project 15

1 Giới thiệu về TechAlliance Fleet 15

2 Quá trình làm việc 15

Chương V: Đánh giá và nhận xét 17

1 Kết quả đạt được: 17

Trang 3

3 Định hướng tương lai: 17

Chương VI: Tổng kết 18

Trang 4

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 để trau dồi kiến thức và kỹ năng, em đã nhận được rất nhiều sự quan tâm và giúp đỡ của quý thầy cô, gia đình và bạn bè Với lòng biết ơn sâu sắc nhất, em xin gửi lời cảm ơn đến 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

Em xin cảm ơn các thầy cô và Công ty cổ phần giải pháp công nghệ TMA Solutions đã tạo điều kiện cho em có cơ hội tham gia thực tập tại công ty

Trong quá trình thực tập tại Công ty TMA Solutions, em đã trang bị được những kiến thức và kinh nghiệm về việc làm việc làm việc nhóm, làm việc với người nước ngoài, hiểu về cách vận hành và phát triển ứng dụng trên thiết bị di động và các nghiệp vụ khác trong công ty, giúp em mở mang khai sáng các kiến thức mới và

có nhiều kinh nghiệm mà em chưa bao giờ biết tới

Em xin cảm ơn anh Trần Ngọc Nhã và các anh chị trong cùng dự án trong công ty đã đặc biệt giúp đỡ em, chỉ bảo em tận tình qua từng dự án khác nhau trong quá trình thực tập Những kiến thức và kinh nghiệm đó giúp em có thể hoàn thiện mình và có thêm kinh nghiệm trong quy trình phát triển phần mềm Tuy nhiên, do kinh nghiệm thực tiễn còn hạn chế, bài báo cáo không thể tránh những sai sót Chính

vì vậy, em rất mong nhận được những ý kiến đóng góp của Thầy, Cô để em hoàn thiện bản thân tốt hơn

Xin chân thành cảm ơn thầy và các anh chị trong công ty

Nguyễn Quang Gia Bảo

Trang 5

Chương I: Giới thiệu công ty

1 Giới thiệu công ty TMA Solutions

• Tên công ty: Công Ty TNHH Giải Pháp Phần Mềm Tường Minh – TMA

Solutions

• Website công ty: https://www.tma.vn/

• Địa chỉ công ty: 84A/5 Trần Hữu Trang, Phường 10, Phú Nhuận, Thành phố

Hồ Chí Minh

• Điện Thoại : 028 3990 3848

• Năm thành lập : 1997

• Mục tiêu và sứ mệnh của công ty :

TMA Solutions được thành lập năm 1997, với sự phát triển vững mạnh trong suốt 25 năm qua, chúng tôi tự hào là công ty phần mềm hàng đầu Việt Nam hiện nay với 15 năm liên tiếp (2004-2019) đạt huy chương vàng xuất khẩu phần mềm, có

Trang 6

2700 kỹ sư tài năng đang làm việc, cùng nhau xây dựng hình ảnh TMA năng động

và chuyên nghiệp trên bản đồ công nghệ thông tin toàn cầu

Trải qua 25 năm hoạt động, TMA tự hào nhận được rất nhiều bằng khen, giải thưởng và liên tục được báo chí, truyền thông trong và ngoài nước đưa tin

2 Sản phẩm của 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

• Finance & Insurance

• E-Commerce, Retail & Distribution

• Media & Publishing

• Logistics & Transportation

Trang 7

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

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

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…

Kết quả : Hiểu 7hem về công ty TMA và một số dự án, quá trình thành lập và

phát triển Có 7hem 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 Giới thiệu, làm quen với các thành viên trong nhóm dự án

Thời gian : 1 ngày

Nội dung : Giới thiệu về TechAlliance, do anh Trần Ngọc Nhã làm manager

Giới thiệu về các thành viên trong team, các sản phẩm và dự án team đang triển khai

Kết quả : Làm quen được các thành viên trong team và hiểu được về các sản

phẩm, dự án team đang làm

Trang 8

3 Kế hoạch thực tập

1-2 • Setup công cụ cần thiết (Git, Azure,

MongoDB, SQL Server, …)

• Training NET, Entity Framework

Trần Ngọc Nhã

3 • Tìm hiểu về RESTful Web Service

• Tìm hiểu về Domain Driven Design pattern

Trần Ngọc Nhã

4 • Học 8hem về Microservices

• Đọc source code và tài liệu hướng dẫn

Trần Ngọc Nhã

5 • Tìm hiểu về Apache Kafka

• Sửa lỗi quyền truy cập người dùng

Trần Ngọc Nhã

6 • Sửa lỗi thông tin không được thay đổi

khi update hợp đồng

• Viết API cho task: Create rule for Manual settings for Approval ID

Trần Ngọc Nhã

7 • Nâng cấp NET Core 3.1 lên 6.0 cho

các service WorkshopImportService

và BoschService

• Investigate cho task: Fleet checks job

in status Approval Missing

• Viết API cho task: Reopen invoice

Trần Ngọc Nhã

Trang 9

8 • Fix bugs, sửa lỗi

• Báo cáo cuối đợt thực tập

• Meeting tổng kết và đánh giá

Trần Ngọc Nhã

4 Lịch thực tập và làm việc

Thời gian thực tập:

• Ngày bắt đầu: 15/08/2022

• Ngày kết thúc: 15/10/2022

Thời gian làm việc:

• Ca sáng : 8h30 -> 12h

• Ca chiều 13h30 -> 18h

• Số ca thực tập trong tuần : từ thứ 2 -> thứ 6

Trang 10

Chương III: Những kiến thức được học trong quá trình thực tập

1 Kiến thức về ASP.NET

ASP.NET là một nền tảng dành cho phát triển web, được Microsoft phát hành và cung cấp lần đầu tiên vào năm 2002 Nền tảng được sử dụng để tạo ra các ứng dụng web-based ASP viết đầy đủ là Active Server Pages, và NET là viết tắt của Network Enabled Technologies

Cấu trúc của Net framework dựa trên các thành phần cơ bản sau:

1 Language/Ngôn ngữ: Có rất nhiều ngôn ngữ lập trình khác nhau tồn tại trong net

framework Các ngôn ngữ này là VB.net và C #, có thể được sử dụng để phát triển các ứng dụng web

2 Library/Thư viện: NET Framework gồm có một bộ các lớp library chuẩn Library

phổ biến nhất được sử dụng cho các ứng dụng web trong net là Web library Web library bao gồm tất cả các thành phần cần thiết sử dụng trong phát triển các ứng dụng web-based

Trang 11

3 Common Language Runtime/Thời gian chạy ngôn ngữ lập trình thông thường hay CLR: Common Language Infrastructure - Cơ sở hạ tầng ngôn ngữ lập trình phổ thông

hay CLI là một nền tảng dùng để chạy các chương trình Net Trong đó, CLR sẽ thực hiện các tác vụ chính bao gồm xử lý các trường hợp cá biệt và thu gom rác

2 Kiến thức về RESTful Web Service

API (Application Programming Interface) là một tập các quy tắc và cơ chế mà theo

đó, một ứng dụng hay một thành phần sẽ tương tác với một ứng dụng hay thành phần khác API có thể trả về dữ liệu mà bạn cần cho ứng dụng của mình ở những kiểu dữ liệu phổ biến như JSON hay XML.

REST (Representational State Transfer) là một dạng chuyển đổi cấu trúc dữ liệu, một

kiểu kiến trúc để viết API Nó sử dụng phương thức HTTP đơn giản để tạo cho giao tiếp giữa các máy Vì vậy, thay vì sử dụng một URL cho việc xử lý một số thông tin người 11hem, REST gửi một yêu cầu HTTP như GET, POST, DELETE, vv đến một URL để xử

lý dữ liệu.

RESTful API là một tiêu chuẩn 11hem trong việc thiết kế các API cho các ứng dụng

web để quản lý các resource RESTful là một trong những kiểu thiết kế API được sử dụng phổ biến ngày nay để cho các ứng dụng (web, mobile…) khác nhau giao tiếp với nhau REST hoạt động chủ yếu dựa vào giao thức HTTP Các hoạt động cơ bản nêu trên sẽ sử dụng những phương thức HTTP riêng.

Trang 12

• GET (SELECT): Trả về một Resource hoặc một danh sách Resource

• POST (CREATE): Tạo mới một Resource

• PUT (UPDATE): Cập nhật thông tin cho Resource

• DELETE (DELETE): Xoá một Resource

Những phương thức hay hoạt động này thường được gọi là CRUD tương ứng với Create,

Read, Update, Delete – Tạo, Đọc, Sửa, Xóa

3 Kiến thức về Entity Framework

Entity Framework ra đời nhằm hỗ trợ sự tương tác giữa các ứng dụng trên nền tảng NET với các cơ sở dữ liệu quan hệ Hay, Entity Frmework chính là công cụ giúp ánh xạ giữa các đối tượng trong ứng dựng, phần mềm của bạn với các bảng của một cơ sở dữ liệu quan hệ

Trang 13

• Entity framework hỗ trợ stored procedure

4 Kiến thức về Microservices

Trong tiếng anh, micro có nghĩa là nhỏ, vi mô Vậy Microservice, như tên của

nó, đó chính là chia một khối phần mềm thành các service nhỏ hơn, có thể triển khai trên các server khác nhau Mỗi service sẽ xử lý từng phần công việc và được kết nối

Trang 14

với nhau thông qua các các giao thức khác nhau, như http, SOA, socket, Message queue (Active MQ, Kafka)… để truyền tải dữ liệu

Trước khi Microservices xuất hiện, các ứng dụng thường phát triển theo mô hình Monolithic architecture (Kiến trúc một khối) Có nghĩa là tất cả các module (view, business, database) đều được gộp trong một project, một ứng dụng được phát triển theo mô hình kiến trúc một khối thường được phân chia làm nhiều module Nhưng khi được đóng gói và cài đặt sẽ thành một khối (monolithic) Lợi ích của mô hình kiến trúc một khối đó là dễ dàng phát triển và triển khai Nhưng bên cạnh đó

nó cũng có nhiều hạn chế ví dụ như khó khăn trong việc bảo trì, tính linh hoạt và khả năng mở rộng kém, đặc biệt với những ứng dụng doanh nghiệp có quy mô lớn

Đó chính là lí do ra đời của kiến trúc Microservices

5 Kiến thức về Git Technology

Git là một hệ thống quản lý phiên bản phân tán (Distributed Version Control System – DVCS), nó là một trong những hệ thống quản lý phiên bản phân tán phổ biến nhất hiện nay Git cung cấp cho mỗi lập trình viên kho lưu trữ (repository) riêng chứa toàn bộ lịch sử thay đổi

Command quen thuộc : git add, git push, git commit,…

Trang 15

Chương IV: Chi tiết về project

1 Giới thiệu về TechAlliance Fleet

TechAlliance Fleet là một ứng dụng web hỗ trợ quản lý đội xe (Fleet Management) thuộc sở hữu của công ty TechAlliance TechAlliance Fleet cung cấp các tính năng về quản

lý đội xe và công việc tại các workshop bảo trì, sửa chữa xe và các trang thiết bị liên quan TechAlliance

Fleet cho phép thực hiện tính toán nhanh chóng và thông minh các hóa đơn dịch vụ liên quan cũng như dự đoán trước được kinh phí cho trang thiết, bảo trì và sửa chữa cho xe

và đội xe

Công nghệ áp dụng:

- Kiến trúc: Kết hợp giữa các mẫu thiết kế Repository pattern, Domain Driven Design

và Microservice

- Front-end: Ứng dụng Angular cùng RxJS xử lý sự kiện bất đồng bộ và NgSX quản

lý trạng thái, phối hợp với Boostrap để thiết kế giao diện người dùng; áp dụng Oauth2.0 và OpenID Connect cho Authentication và Authorization

- Back-end: Sử dụng ASP.NET Core, Entity Framework với cơ sở dữ liệu MongoDB, SQLServer; áp dụng Apache Kafka; áp dụng IdentityServer4 cho Authentication và Authorization

2 Quá trình làm việc

Dự án áp dụng mô hình Scrum để quản lý công việc Trong đó, cả quá trình phát triển được chia thành các sprint kéo dài 2 tuần

Một sprint bao gồm các buổi họp sau:

- 2 buổi Sprint Planning: Diễn ra vào đầu Sprint, nội dung chính là phân chia và nhận task để thực thi trong Sprint mới

Trang 16

- Các buổi Daily Meeting: Diễn ra hàng ngày trong Sprint, báo cáo công việc ngày hôm đó và các khó khăn gặp phải (nếu có)

- 1 buổi Sprint Refinement: Diễn ra vào giữa Sprint, nội dung chính là chuẩn bị, thông qua các task mới cho Sprint kế tiếp, đánh giá độ phức tạp, và khả thi của các task này

- 1 buổi Sprint Review: Diễn ra vào cuối Sprint, nội dung chính gồm demo thành các tính năng mới đã được hoàn thành, cũng như các lỗi đã được phát hiện và sửa chữa trong Sprint; tiếp nhận góp ý của khách hàng

- 1 buổi Sprint Retrospective: Diễn ra vào cuối Sprint, sau Sprint Review, nội dung chính là điểm qua các task tồn đọng của Sprint vừa qua, góp ý, giải pháp để hoàn thiện chúng vào thời gian tới

Trang 17

Chương V: Đánh giá và nhận xét

1 Kết quả đạt được:

• Có thêm nhiều kinh nghiệm về chuyên môn : NET, Entity Framework, Microservices

• Kỹ năng làm việc nhóm, phân chia công việc, thời gian

• Kỹ năng sử dụng và review code của các member trong team,

• Cơ bản được quá trình hoạt động của project trong thực tế,

• Nhìn nhận được vấn đề và đưa ra giải pháp cho dự án

• Biết được cơ bản về cách xây dựng Server quản lý source bằng git

technology

2 Những hạn chế :

• Vì kĩ thuật còn yếu nên một số task chưa hoàn thành đúng deadline

3 Định hướng tương lai:

• Cải thiện kĩ năng về ngoại ngữ để đọc tài liệu và phân tích yêu cầu liên quan

Trang 18

Chương VI: Tổng kết

Như vậy, chỉ trong vòng vài tháng ngắn ngủi, em đã được tham gia vào project của TMA Solutions Hoàn thành các task và yêu cầu do cấp trên đề ra

Hoàn thành 2 tháng thử việc và trở thành nhân viên chính thức của TMA Solutions

Chân thành cảm ơn các anh, chị trong công ty đã hỗ trợ em hoàn thành kỳ thực tập, cũng như giúp đỡ em rất nhiều trong đời sống

Ngày đăng: 01/02/2023, 21:16

TỪ KHÓA LIÊN QUAN

w