Cả 2 framework ASP.NET và Angular đều không phải là công nghệ mới tuy nhiên đem đến tốc độ xử lý nhanh C# và độ ổn định gần như tuyệt đối nên được nhiều doanh nghiệp lớn sử dụng trong cá
Trang 11
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 VỚI ASP.NET &
ANGULAR
Công ty thực tập : FUJINET SYSTEMS JSC Người phụ trách : Nguyễn Chí Tâm
Thực tập sinh : Phan Quốc An
TP Hồ Chí Minh, tháng 6 năm 2022
Trang 2Với sự bùng nổ của Internet, các website trên thế giới được sản sinh ra với tốt độ chóng mặt Không giống như ứng dụng di động hay ứng dụng desktop, các website không bị ràng buộc bởi hệ điều hành hay sự tương thích nào, một hệ điều hình có trình duyệt là có thể truy cập vào một website Các website đang đóng một vai trò chủ chốt trong việc kết nối các cá nhân tham gia mạng Internet với nhau
Để bắt kịp với đà phát triển của thế giới, mạng Internet tại Việt Nam tuy phát triển từ thời điểm không quá sớm nhưng với tốc độ lan toả đáng kinh ngạc đã khiến Việt Nam lọt vào top những nước có độ phú Internet rộng nhất thế giới Rất nhiều các công ty phần mềm Việt Nam được thành lập, trong đó có Công ty Cổ phần FUJINET SYSTEMS với khách hàng chủ yếu là các công ty phần mềm của Nhật Bản
Cả 2 framework ASP.NET và Angular đều không phải là công nghệ mới tuy nhiên đem đến tốc độ xử lý nhanh (C#) và độ ổn định gần như tuyệt đối nên được nhiều doanh nghiệp lớn
sử dụng trong các dự án phần mềm của mình
Sau một khoảng thời gian học tập tại trường, em có mong muốn được tham gia vào các
dự án thực tế, được làm việc trong môi trường doanh nghiệp để tiếp thu thêm nhiều kiến thức mới và làm quen được với công việc trong tương lai Do đó, em quyết định tham gia vào khoá thực tập của Công ty Cổ phần FUJINET SYSTEMS để thực hiện mong muốn của mình
Trang 33
LỜI CẢM ƠN
Trân trọng gửi lời cảm ơn Công ty FUJINET SYSTEMS JSC đã 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 nhóm trainer, nhóm thực tập chúng em đã tiếp thu được những kiến thức và kinh nghiệm quan trọng để có thể thực hiện một dự án trong môi trường chuyên nghiệp Chân thành cảm ơn các anh chị trong nhóm trainer đã bỏ ra nhiều thời gian, công sức để hướng dẫn chúng em hoàn thành đợt thực tập này
Đặc biệt cảm ơn anh Nguyễn Chí Tâm đã training NET Core, hướng dẫn chính các nghiệp vụ trong dự án và giúp đỡ chúng em giải quyết những khó khăn trong công việc cũng như việc làm quen với môi trường mới; cảm ơn anh Nguyễn Khánh Duy đã hướng dẫn kiểm thử, sửa lỗi, hỗ trợ chúng em rất nhiều về Angular trong quá trình thực hiện phần front-end; cảm
ơn anh Lê Kế Hào đã giải đáp những thắc mắc của chúng em về Angular; cảm ơn anh Đỗ Đăng Huấn đã phổ biến quy định của công ty, đồng thời hướng dẫn chúng em sử dụng remote desktop
để làm việc trong suốt quá trình làm việc online
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
Phan Quốc An TpHCM, tháng 6 năm 2022
Trang 4NHẬN XÉT CỦA KHOA
Trang 5
5
MỤC LỤC
Chương 1: Giới thiêu công ty thực tập 6
1 Giới thiệu công ty FUJINET SYSTEMS JSC 6
2 Sản phẩm của công ty 6
1.1 Chuyển đổi hệ thống phần mềm sử dụng database Oracle sang PostgreSQL 6
1.2 Dự án mobile 7
Chương 2: Nội dung thực tập 8
1 Tìm hiểu 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 8
2.1 Các công cụ làm việc 8
2.2 Tìm hiểu về ASP.NET 9
2.3 Tìm hiểu về Angular 10
3 Thực hiện project 11
4 Lịch làm việc 11
Chương 3: Chi tiết các project đã tham gia 14
1 Bài tập Quản lý nhân viên đơn giản 14
1.1 Giới thiệu 14
1.2 Vai trò 14
1.3 Kết quả đạt được 14
2 Phần mềm chăm sóc sức khoẻ người cao tuổi 14
Trang 6Chương 1: Giới thiệu công ty thực tập
1 Giới thiệu công ty FUJINET SYSTEMS JSC
Tên đầy đủ của công ty là Công ty Cổ phần FUJINET SYSTEMS, tên viết tắt là FUJINET SYSTEMS JSC
Ngày 01/10/1996, thành lập Công ty FUJINET chủ yếu cung cấp máy tính cho các công ty Nhật ở Thành phố Hồ Chí Minh Ngày 06/10/2000, thành lập Công ty TNHH Mạng Máy Tính Phú Sĩ (FUJINET Co., Ltd.) chuyên phát triển phần mềm cho thị trường Nhật Bản Ngày 01/9/2015, Công ty FUJINET chuyển đổi thành Công ty Cổ phần FUJINET SYSTEMS
2 Sản phẩm của công ty
1.1 Chuyển đổi hệ thống phần mềm sử dụng database Oracle sang PostgreSQL
Tên Project: Chuyển đổi sử dụng Oracle sang PostgreSQL của hệ thống Quản lý thư
viện
Sơ lượt Project:
Chuyển đổi toàn hệ thống sử dụng PostgreSQL
1 Di chuyển DB
2 Chỉnh sửa phần kết nối DB
3 Chỉnh sửa SQL
Công đoạn thực hiện:
- Lập trình software (Coding, Test Program)
- Quy trình hệ thống: 850KL
- Quy mô thực hiện: 6.8KL
Di chuyển DB:
Trang 77
- Table: 574 tables
- View: 285 views
- Function: 4 functions
Số item cần phải test: 2,675 items
Số bug ghi nhận được: 51 bugs (Loại bỏ trùng lặp)
Đã tạo tài liệu lưu lại như là Sổ tay chuyển đổi từ Oracle, phương pháp Backup/Restore
Ngôn ngữ lập trình + Tool + OS:
Ngôn ngữ lập trình:
- HTML, CSS
Database:
- Oracle, PostgreSQL
Kỳ hạn: 4 tháng
1.2 Dự án mobile
Tên Project: e-Learning Platform
Sơ lược Project:
Đây là một hình thức học tập thế hệ tiếp theo sử dụng Internet để đào tạo nhân viên công
ty
Bằng cách sử dụng e-Learning, những học viên sẽ có thể học theo thời gian rảnh của họ, nhìn thấy được hiệu quả đào tạo và giảm chi phí, vốn là điều khó khăn đối với đào tạo trực tiếp
Ngôn ngữ lập trình + Tool + OS: Spring boot, Thymeleaf, Google Analytics, Hibernate,
Spring Security, WebRTC, Red5, SAML, Single Sign-on, Moodle…
Kỳ hạn: 24 tháng
Trang 8Chương 2: Nội dung thực tập
Đợt thực tập với mục đích giúp sinh viên thực tập được đào tạo toàn diện về lập trình các phần mềm nghiệp vụ bằng các công nghệ đặc thù, đồ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 chuyên nghiệ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 thêm về công ty FUJINET SYSTEMS, 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 Các công cụ làm việc
Thời gian: 4 ngày
Nội dung: Tìm hiểu về các công cụ sẽ được sử dụng trong quá trình làm việc
Trong thời gian này, supervisor đã hướng dẫn thực tập sinh tìm hiểu về các công
cụ sẽ giúp ích cho trong công việc sau này Một số phần mềm trong số đó như Microsoft Teams - sử dụng để thực hiện các cuộc họp trực tuyến, Windows Remote Desktop để điều khiển máy tính công ty từ xa, phục vụ cho quá trình làm việc tại nhà,
Trang 99 cùng với nhiều phần mềm nhắn tin, gửi và nhận email được phát triển đặc biệt để đáp ứng nhu cầu bảo mật cho công ty cũng như cho khách hàng
Thực hiện: Thực hành sử dụng các phần mềm đã nêu trên
Kết quả: Lập trình sử dụng các công cụ miễn phí và các phần mềm đặc thù, giúp dễ
dàng kết hợp các công cụ với nhau, so với việc dung các IDE
2.2 Tìm hiểu về ASP.NET
Thời gian: 10 ngày (2 tuần làm việc) song song với tìm hiểu Angular
Nội dung: Được training về công nghệ ASP.NET, những kiến thức quan trọng cho
việc phát triển back-end
- Ngôn ngữ C#:
Cấu trúc, các hàm và cách quản lý đối tượng của ngôn ngữ C# Ngoài ra, thực tập sinh còn được hướng dẫn về lập trình hướng đối tượng (đặc trưng của ngôn ngữ C#)
- Thư viện:
ASP.NET là tập hợp của rất nhiều các thư viện C#, vì vậy cần phải biết cách sử dụng một số thư viện quan trọng để có thể thực hiện dự án
- NuGet Package:
Thực tập sinh sẽ được hướng dẫn về cách tích hợp các NuGet Package vào trong
dự án cũng như các quản lý và sử dụng hiệu quả chúng Một số NuGet Package thực hiện những công việc rất đặc trưng nên cần phải nắm rõ để có thể sử dụng đúng
- HTTP Method:
HTTP Method là thành phần không thể thiếu trong các Web API Thực tập sinh sẽ được hướng dẫn về mục đích của từng loại HTTP Method, cũng như cách tạo ra
và kiểm thử các API
Thực hiện:
- Tham gia đầy đủ các buổi training của công ty
- Nghiên cứu các tài liệu tham khảo được gửi
- Làm các bài thực hành, kiểm tra về kiến thức đã học
Trang 10- Có được những kiến thức quan trọng cho việc lập trình back-end sau này
- Biết thêm một số quy tắc trong việc viết code sao cho đúng chuẩn, dễ đọc, dễ hiểu
- Ngoài ra còn biết được cách đọc tài liệu để biết cách sắp xếp, đặt tên thư mục, class, đối tượng sao cho đúng quy định chung để phục vụ cho làm việc nhóm
2.3 Tìm hiểu về Angular
Thời gian: 10 ngày (2 tuần làm việc) song song với tìm hiểu ASP.NET
Nội dung: Các kiến thức cơ bản về Angular để có thể làm ra một trang web đơn giản
- Khái niệm cơ bản về HTML, CSS, Javascript và Typescript:
Thực tập sinh được training về ngôn ngữ Javascript và Typescript, làm một số bài tập đơn giản về Javascript, Typescript, bên cạnh các bài tập có liên quan đến HTML và CSS
- Component:
Component là một thành phần quen thuộc trong hầu hết các javascript framework,
đây là kiến trúc cơ bản nhất của Angular để tạo nên các website
- Class:
Khác với Javascript, Typescript có hỗ trợ định nghĩa các lớp đối tượng, điều này giúp cho dữ liệu được quản lý chặt chẽ và ít rủi ro lỗi hơn Thực tập sinh được hướng dẫn cách đọc hiểu các tài liệu tiếng Nhật để thực hiện đúng việc phân lớp, đặt tên lớp nhằm tạo được sự đồng bộ với phần back-end
- Binding:
Là một phần đặc trưng của Angular với từ khoá ngModel Do đây là lần đầu em được làm quen với Angular cũng như các thành phần của Angular, nên sự giúp đỡ
của anh Duy và anh Hào là vô cùng quan trọng và cần thiết
Thực hiện:
- Tham gia đầy đủ các buổi trainning
Trang 1111
- Làm các bài tập thực hành như thiết kế giao diện một trang web từ giao diện được
vẽ sẵn
- Tìm kiếm tài liệu trên mạng để tìm hiểu thêm
Kết quả:
- Hiểu được những khái niệm cơ bản trong lập trình front-end với Angular
- Đã áp dụng mức cơ bản được các công cụ mà Angular cung cấp vào dự án
3 Thực hiện project
Sau khi được đào tạo các kiến thức cần thiết, thực hiện qua một bài tập cơ bản, thực tập sẽ nhận được đánh giá từ phía người hướng dẫn và được tham gia gián tiếp vào một dự án của công ty (thực hiện lại một chức năng đã được hoàn thành và giao cho khách hàng trong một dự
án của công ty)
Công nghệ sử dụng: Azure DevOps, ASP.NET, Angular…
Chi tiết về dự án sẽ được nói ở phần sau
4 Lịch làm việc
dẫn
Mức độ hoàn thành
Nhận xét của người hướng dẫn
1
- 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 công
cụ làm việc trong công
ty
- Học cách trao đổi, làm việc qua email
- Được phổ biến về quy tắc bảo mật của công ty
Anh Nguyễn Chí Tâm
Anh Đỗ Đăng Huấn
100% Hoàn thành tốt
2 - Tìm hiểu về ASP.NET Anh Nguyễn Chí 100% Hoàn thành tốt
Trang 12kiểm tra Angular Tutorial
3
- Tiếp tục tìm hiểu về ASP.NET và Angular
- Thực hiện một ứng dụng web quản lý nhân viên cơ bản với dựa trên các giao diện
và dữ liệu được định nghĩa sẵn
Anh Nguyễn Chí Tâm
Anh Lê Kế Hào
100% Hoàn thành tốt
4
- Hoàn thành ứng dụng web
- Thực hiện kiểm thử và
vá lỗi ứng dụng web vừa hoàn thành
- Nhận đánh giá từ người hướng dẫn
Anh Nguyễn Chí Tâm
Anh Lê Kế Hào
100% Hoàn thành tốt
5
- Được tiếp cận với tài liệu thiết kế hệ thống của dự án thực tế của công ty
- Được hướng dẫn cách đọc - hiểu và tra cứu các tài liệu tiếng Nhật
Anh Nguyễn Chí Tâm
100% Hoàn thành tốt
6
- Thực hiện việc thiết kế
dữ liệu, các bảng cần thêm của chức năng
Anh Nguyễn Chí Tâm
100% Hoàn thành tốt
Trang 1313 được giao
- Tạo các API dựa trên tài liệu thiết kế
7
- Tìm hiểu cách sử dụng framework thiết kế giao diện của dự án
- Thực hiện phần giao diện dựa trên tài liệu thiết kế
Anh Nguyễn Chí Tâm
Khánh Duy
100% Hoàn thành tốt
8
- Ghép 2 phần front-end
và back-end của dự án
- Thực hiện kiểm thử và
vá lỗi hệ thống
- Nhận đánh giá của những người có liên quan về mức độ hoàn thành công việc được giao cũng như suốt quá trình thực tập tại công
ty
Anh Nguyễn Chí Tâm
Khánh Duy
100% Hoàn thành tốt
Trang 14Chương 3: Chi tiết các project đã tham gia
1 Bài tập Quản lý nhân viên đơn giản
1.1 Giới thiệu
Bài tập được anh Nguyễn Chí Tâm giao với thời gian hoàn thành cho phép là 1 tuần Nội dung bài tập là tạo một trang web quản lý nhân viên đơn giản sử dụng ASP.NET và Angular, lưu trữ dữ liệu local trên SQL Server dựa trên các màn hình được vẽ trước, các bảng dữ liệu được mô tả và các yêu cầu được đặt ra
1.2 Vai trò
Thực tập sinh đảm nhiệm làm toàn bộ bài tập dưới sự hướng dẫn của trainer
1.3 Kết quả đạt được
Thục tập sinh hoàn thành bài tập trước kỳ hạn quy định, đáp ứng được tất cả các yêu cầu đưa ra, thiết kế màn hình, bảng dữ liệu đúng với thiết kế
2 Phần mềm chăm sóc sức khoẻ người cao tuổi
Phần mềm thuộc dự án bệnh viện trực tuyến của Nhật, nhưng vì lý do bảo mật của công ty nên chi tiết về dự án không được tiết lộ
Trang 1515
TÀI LIỆU THAM KHẢO
[1] Angular Angular Docs:
https://angular.io/docs
[2] Angular Angular Tutorial:
https://angular.io/tutorial
[3] ASP.NET ASP.NET documentation:
[4] ASP.NET Entity Framework documentation:
https://docs.microsoft.com/en-us/ef/
[5] Nhiều tài liệu nội bộ khác
Trang 16Như vậy, trong thời gian thực tập ngắn ngủi, dưới sự hướng dẫn của các anh, em đã hoàn thành được cái công việc được giao trong thời gian quy định Mặc dù còn nhiều thiếu sót nhưng với việc được tham gia vào một dự án tuy không phải chính thức cũng đã giúp em tiếp thu được nhiều bài học quý báu, có cơ hội được tiếp xúc với một môi trường làm việc chuyên nghiệp – một điều em chưa từng trải qua trước đây
Chân thành cảm ơn các anh Nguyễn Chí Tâm, anh Nguyễn Khánh Duy, anh Lê Kế Hào
đã giúp đỡ em trong suốt quá trình việc cũng như khi tiếp xúc với dự án