Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 39 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
39
Dung lượng
1,23 MB
Nội dung
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 TRANG WEB VỚI ASP NET, REACT.JS VÀ GRAPHQL Công ty thực tập KMS Technology Người phụ trách Võ Hoàng Việt Thực tập sinh Đỗ Phi Long TP Hồ Chí Minh, tháng 12 năm 2022 Võ Hoàng Việt Đỗ Phi Long LỜI MỞ ĐẦU Ngày nay, trang web phát triển mạnh mẽ, khơng cịn trang web tĩnh chứa thơng tin, văn trước mà thay vào nhiều tính độc đáo hữu ích gói gọn nhiều thuật ngữ web app, web service,… Nhờ thuận tiện độc lập với phần cứng người dùng cuối, trang web dần trở thành tiện ích khơng thể thiếu đời sống người thời đại 4.0 Đồng thời, nhiều công nghệ dùng để phát triển web liên tục cho mắt với tốc độ chóng mặt, song song với thử thách phát sinh từ nhu cầu người dùng bảo mật thông tin Để tạo trang web có nhiều lượt sử dụng, đem đến tiện lợi hữu ích cho người dùng khơng cịn việc đơn giản Có vơ số vấn đề phát sinh thách thức liên tục đặt ra, vô số công nghệ, thư viện, framework tạo nên để giải thách thức Khối lượng kiến thức cần tiếp thu với nhà phát triển web ngày dồi sâu rộng Tuy nhiên, hội để tiếp cận người dùng sản phẩm web thiết kế xây dựng tốt, tỉ mỉ, đem lại nhiều ích lợi cho người sử dụng Vì lý nên sau năm học tập rèn luyện Trường, em muốn tham gia vào doanh nghiệp chuyên lĩnh vực phát triển ứng dụng web, có đội ngũ kỹ sư nhiều kinh nghiệm, với mong muốn học hỏi kiến thức kinh nghiệm - đồng thời hội để trau dồi kỹ nhận ý kiến đóng góp - người trước lĩnh vực phát triển web Võ Hoàng Việt Đỗ Phi Long LỜI CẢM ƠN Trân trọng gửi lời cảm ơn KMS Technology Việt Nam tạo điều kiện cho em có hội thực tập công ty Chỉ thời gian ngắn, nhờ dẫn nhiệt tình mentor, em học nhiều kiến thức kinh nghiệm lĩnh vực phát triển web Chân thành cảm ơn anh team Clearwave bỏ nhiều thời gian, cơng sức để hướng dẫn em hồn thành đợt thực tập Đặc biệt cảm ơn anh Võ Hoàng Việt dẫn dắt em nhiệt tình chia sẻ với em khơng kiến thức chun mơn mà cịn quy trình làm việc, kinh nghiệm ngành văn hóa cơng ty Các ý kiến đóng góp lời khuyên anh Việt cơng việc mà em thực đóng góp đáng trân trọng giúp em tiếp tục phát triển kiến thức, kỹ năng, lẫn thái độ Cũng xin cảm ơn thầy cô 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 Đỗ Phi Long TP.HCM, ngày 25 tháng 12 năm 2022 Võ Hoàng Việt Đỗ Phi Long NHẬN XÉT CỦA KHOA Võ Hoàng Việt Đỗ Phi Long MỤC LỤC Chương 1: Giới thiệu công ty thực tập 1 Giới thiệu công ty KMS Technology 1.1 Về KMS Healthcare 1.2 Về KMS Solutions 2 Sản phẩm công ty Chương 2: Nội dung thực tập Tìm hiểu công ty kỹ công ty Nghiên cứu kỹ thuật 2.1 Tìm hiểu tính nâng cao C# 2.2 Tìm hiểu sâu OOP 2.3 Tìm hiểu Entity Framework Core 2.4 Tìm hiểu ASP NET Core MVC làm trang web demo 11 2.5 Tìm hiểu ASP NET Core Web API 13 2.6 Tìm hiểu React 15 2.7 Tìm hiểu TDD 16 2.8 Tìm hiểu GraphQL 18 Thực project 21 Lịch làm việc 21 Chương 3: Chi tiết project 27 Giới thiệu Planning Poker 27 Thực 30 Kế hoạch 30 Võ Hoàng Việt Đỗ Phi Long DANH MỤC HÌNH ẢNH Hình 1.1 Logo KMS Technology Hình 1.2 Logo KMS Healthcare Hình 1.3 Logo KMS Solution Hình 1.4 Kobiton logo Hình 1.5 Katalon logo Hình 1.6 Grove logo Hình 1.7 Visily logo Hình 1.8 Kaypay logo Hình 2.1 Kế hoạch học tập làm việc tập Hình 2.2 Target-typed new expression Hình 2.3 Các entity class EF Core Hình 2.4 Đọc liệu thỏa điều kiện vào collection entity 10 Hình 2.5 Mơ hình MVC 12 Hình 2.6 Chu TDD 17 Hình 2.7 Mơ hình hoạt động GraphQL 19 Hình 3.1 Giao diện Planning poker 28 Hình 3.1 Quá trình chơi planning poker 29 Võ Hoàng Việt Đỗ Phi Long Chương 1: Giới thiệu công ty thực tập Hình 1.1 Logo KMS Technology Giới thiệu cơng ty KMS Technology Được thành lập vào năm 2009, KMS Technology công ty chuyên cung cấp dịch vụ phát triển sản phẩm phần mềm, tư vấn triển khai giải pháp công nghệ khởi nghiệp Sau 12 năm hoạt động KMS xây dựng đội ngũ 1000 nhân viên Mỹ Việt Nam, phát hành sản phẩm phần mềm thị trường giới KMS bao gồm: • KMS Healthcare • KMS Solutions • Các công ty product 1.1 Về KMS Healthcare KMS Healthcare thành lập để phát triển giải pháp phần mềm phục vụ cho ngành y tế, chăm sóc sức khỏe Hình 1.2 Logo KMS Healthcare Võ Hồng Việt Đỗ Phi Long Các dịch vụ cung cấp KMS Healthcare tuân thủ theo quy định y tế HIPAA, ACA (Obamacare), FHIR,… Chúng bao gồm: • Phát triển phần mềm, ứng dụng y tế nhiều tảng • Kiểm thử phần mềm • Tư vấn giải pháp phần mềm • Phân tích liệu y tế 1.2 Về KMS Solutions KMS Solutions tập trung vào giải pháp phần mềm tài ngân hàng, phục vụ thị trường khu vực Châu Á-Thái Bình Dương Hình 1.3 Logo KMS Solution Các dịch vụ cung cấp KMS Solutions bao gồm: • Tư vấn giải pháp phần mềm cho kinh doanh • Phát triển phần mềm ngân hàng • Phân tích liệu • Kiểm thử phần mềm Sản phẩm cơng ty Trong q trình phát triển cơng ty, KMS triển khai thành công nhiều sản phẩm, phần lớn số lưu hành sử dụng nội đối tác khách hàng Một số sản phẩm công bố rộng rãi bao gồm: • Kobiton: Hệ thống kiểm thử phần mềm di động, cung cấp tính kiểm thử tự động hay thủ công thiết bị di động thật khơng sử dụng giả lập Võ Hồng Việt Đỗ Phi Long Hình 1.4 Kobiton logo • Katalon: Một hệ thống kiểm thử sử dụng công nghệ AI giúp tạo test case cách nhanh chóng dễ dàng cho trang web mobile Hình 1.5 Katalon logo • Grove: Hệ thống quản lý thông tin nhân cách nhanh chóng thuận tiện cho nhân viên cơng ty Hình 1.6 Grove logo • Visily: Trang web thiết kế UI tạo cho người designer áp dụng công nghệ AI Hình 1.7 Visily logo • Kaypay: Hệ thống tốn cách đơn giản thuận tiện Hình 1.8 Kaypay logo Võ Hoàng Việt Đỗ Phi Long Chương 2: Nội dung thực tập Đợt thực tập KMS Technology cho em thấy trình làm việc phát triển phần mềm môi trường chuyên nghiệp, bên cạnh việc giúp em học thêm nhiều kiến thức phát triển ứng dụng web Ngoải ra, em có hội cải thiện kỹ mềm giao tiếp thuyết trình Quá trình thực tập bắt đầu việc củng cố, trau dồi kiến thức cho thực tập sinh chủ đề công nghệ phổ biến, trình tự học kết hợp với trao đổi người phụ trách (mentor) thành viên team Sau đó, thực tập sinh giới thiệu với project phát triển, để thực suốt khoảng thời gian lại tập Thực tập sinh dành khoảng thời gian để đọc mã nguồn project tìm hiểu kiến thức, cơng nghệ sử dụng project Sau hiểu mã nguồn công nghệ sử dụng, thực tập sinh chọn ticket mở để thực Các ticket em chọn trình thực project tính tích hợp với đám mây, refactor mã nguồn Tìm hiểu cơng ty kỹ công ty Thời gian : ngày Nội dung : • Nhận thẻ nhân viên • Nhận thiết bị cần sử dụng công việc laptop, headset, thiết lập tài khoản nhân viên • Tham gia buổi hướng dẫn nhân viên mới: giới thiệu công ty, cấu tổ chức, phổ biến quy định nội quy, giới thiệu công cụ làm việc liên lạc, quy trình thơng tin liên lạc cần giúp đỡ • Hồn tất thủ tục giấy tờ hợp đồng • Gặp giới thiệu với team kỹ sư • Gặp trao đổi với mentor định hướng tương lai, kế hoạch tập lên kế hoạch cho task tìm hiểu Võ Hoàng Việt Đỗ Phi Long 19 Hình 2.7 Mơ hình hoạt động GraphQL • GraphQL vs REST: kiến trúc phương thức giao tiếp mà GraphQL đề thách thức lớn REST nhờ linh hoạt tiện dụng truy vấn mà mang lại Các lợi ích GraphQL so với REST sau: o Cải thiện Over-fetching: client tự định nghĩa cấu trúc liệu mà cần nên liệu trả từ GraphQL server sử dụng Ngược lại, REST định nghĩa cấu trúc liệu trả theo endpoint, endpoint có cấu trúc liệu cố định, dẫn đến dễ gửi client nhiều liệu không cần thiết, đặc biệt đối tượng liệu lớn có nhiều thuộc tính o Cải thiện Under-fetching: Ngược lại với over-fetching, under-fetching liệu trả từ endpoint REST không đủ để client thực tác vụ phải gửi thêm request để lấy thông tin có liên quan đến liệu vừa trả Điều dẫn đến tăng thời gian client cần để xử lý thơng tin Với GraphQL, client định nghĩa cấu trúc liệu bao gồm đối tượng liệu khác liên quan đến liệu gốc server trả đủ liệu client cần o Từ hai ưu điểm phát sinh thêm ưu điểm GraphQL so với REST, cải thiện hợp tác developer frontend developer backend, client định nghĩa liệu mà cần nên lập trình viên frontend khơng cịn phải phụ thuộc vào backend để cung Võ Hoàng Việt Đỗ Phi Long 20 cấp endpoint truy vấn cho nhiều loại liệu truy vấn khác Từ đó, hai phận frontend backend làm việc tương đối độc lập, tăng hiệu suất làm việc Tuy nhiên, với yêu cầu kết xuất liệu, GraphQL chưa thực mang lại đột phá, chưa có phương pháp để client định nghĩa lệnh kết xuất biến đổi liệu, nên frontend phải phụ thuộc phần vào backend để định nghĩa endpoint kết xuất liệu o Ngồi ra, GraphQL có nhược điểm so với REST phức tạp thành phần mà cần phải định nghĩa So với việc REST cần định nghĩa endpoint, GraphQL phải định nghĩa schema, type liệu, query, mutation subscription; đặc biệt làm việc với ORM EF Core ta cịn có class entity, lớp thành phần làm cho trình setup project tich hợp GraphQL trở nên lằng nhằng, ta cần thêm đối tượng liệu dễ quên thêm phiên type schema hay query tương ứng Nên với project nhỏ nhỏ-vừa, GraphQL dễ trở thành chướng ngại làm chậm tiến độ phát triển Ngược lại project lớn hơn, có nhiều đối tượng liệu phức tạp hơn, GraphQL đơn giản hóa cơng việc chia sẻ liệu client server nhiều so với REST • Một số server implement kiến trúc GraphQL: o Apollo Server: GraphQL server mã nguồn mở cho mơi trường Node.js, tương thích với tất GraphQL client o HotChocolate: GraphQL server cho môi trường NET Giúp ta thiết lập GraphQL cho Web API cách nhanh chóng HotChocolate hỗ trợ phong cách làm việc khác nhau: Annotation-based, Code-first Schemafirst Annotation-based cách đơn giản giới hạn thiết lập mà ta tinh chỉnh, Code-first Schema-first cung cấp khả tùy chỉnh mạnh mẽ yêu cầu nhiều code Kết quả: • Hiểu nguyên lý lợi ích/nhược điểm GraphQL • Biết cách làm việc với GraphQL server HotChocolate áp dụng vào xây dựng backend cho hệ thống quản lý thông tin sản phẩm (PIM system) Võ Hoàng Việt Đỗ Phi Long 21 Thực project Sau củng cố kiến thức học tập kiến thức tháng đầu tập, thực tập sinh transfer project trị chơi planning poker web, có tech stack sau: • Frontend: React, React Query, Ant Design • Backend: GraphQL, ASP NET Core Web API, EF Core, PostgreSQL Chi tiết đồ án nói phần sau Lịch làm việc Tuần Công việc - - - Võ Hồng Việt - Tìm hiểu công ty, cách tổ chức công ty Làm quen với công cụ làm việc công ty Học cách trao đổi, làm việc qua email, Google Chat Skype Tìm hiểu tính C# 9.0 Học SOLID Design pattern Học ASP NET Core MVC Học EF Core Tìm hiểu tính C# 10 Áp dụng ASP NET Core MVC EF Core vào làm trang ứng dụng web demo: đăng Người hướng dẫn Anh Việt Võ Hoàng Anh Võ Hoàng Việt Mức độ hoàn thành 100% Nhận xét người hướng dẫn 100% Đỗ Phi Long 22 - - - Võ Hoàng Việt nhập, đăng ký, thông tin cá nhân mật Học ASP NET Core MVC Tìm hiểu phương pháp lưu trữ liệu browser Hoàn thành tính ứng dụng web demo: Nhớ mật cách lưu cookie, đăng xuất người dùng đổi mật khẩu, cải thiện giao diện, thêm package FluentValidation để validate form Học ASP NET Core Web API Học migration EF Core Tạo thêm project Web API cho solution ứng dụng web demo làm số tính cho project Web API: endpoint đăng nhập, đăng xuất; endpoint cho thơng tin liên lạc Hồn thành chức cho ứng dụng web demo MVC: Thêm đối tượng liệu thông tin liên lạc Anh Võ Hoàng Việt 100% Anh Võ Hoàng Việt 100% Đỗ Phi Long 23 - - - - Võ Hoàng Việt cho người dùng, Tạo migration để cập nhật thay đổi liệu xuống database, Hoàn tất trang thông tin cá nhân thông tin liên lạc, Tạo trang đăng nhập cho project MVC, sử dụng ajax để gọi endpoint Web API Học phương Anh Võ Hoàng thức xác thực người Việt dùng Web API Áp dụng JWT để xác thực người dùng cho Web API Học Unit testing xUnit Áp dụng xUnit để viết unit test case cho login controller DefaultUserService MVC, contact controller Web API validator UserInfoValidator, hồn thành cơng việc ứng dụng demo MVC 100% Học React thư viện Bắt đầu làm frontend cho ứng dụng web demo sử dụng backend Web API thực thời gian vừa Đỗ Phi Long 24 - qua Thêm xác thực JWT, route trang Home, thơng tin liên lạc cho ứng dụng React - Tìm hiểu thêm EF Core - Làm slide thuyết trình EF Core - Cập nhật giao diện Anh Võ Hoàng test case cho Việt MVC - Thêm refresh token cho JWT Web API, hoàn thành backend Web API - - - - - Võ Hồng Việt 100% Tìm hiểu thư viện React hook form áp dụng vào ứng dụng React để validate liệu form Học Sass áp dụng vào để tạo file style cho ứng dụng React Thêm tính refresh token cho ứng dụng React Review thuyết trình với mentor, nhận feedback cải thiện thuyết trình Học TDD Anh Võ Hồng tham gia buổi thuyết Việt trình mentor Thuyết trình EF 100% Đỗ Phi Long 25 Core cho thành viên team, nhận ý kiến đóng góp - - - - - - - - Võ Hồng Việt Tìm hiểu cách làm animation React Dùng thư viện Framer motion để thêm animation cho tab header trang home, thông tin liên lạc ứng dụng React Thêm modal thông báo thêm animation cho chúng ứng dụng React, hoàn thành ứng dụng React Nhận transfer project planning poker Học GraphQL tìm hiểu GraphQL server Áp dụng GraphQL HotChocolate vào để làm backend cho hệ thống PIM Đọc code backend phần frontend project Tiếp tục học GraphQL HotChocolate Đọc code frontend project Chọn ticket import Anh Võ Hoàng Việt 100% Anh Võ Hoàng Việt 100% Đỗ Phi Long 26 - - 10 - - - - 11 - Võ Hoàng Việt ticket từ Azure DevOps vào Planning poker Tìm hiểu React Query đọc tài liệu API Azure DevOps Refactor code frontend tạo websocket thành hook để code không bị lặp lại nhiều component Làm giao diện thêm tính import ticket từ Azure DevOps thông qua Personal Access Token tự tạo Tìm hiểu cách xác thực người dùng Azure DevOps Tìm hiểu, đọc tài liệu code thư viện Microsoft Authentication Library for JS (MSAL) Tìm hiểu phương thức xác thực khác cho Azure DevOps ứng dụng React Học OAuth 2.0 Implement tính xác thực với tài khoản Microsoft xác thực không mật (silent login) người dùng đăng nhập trước đó, thư viện Anh Võ Hồng Việt 100% Anh Võ Hoàng Việt 100% Đỗ Phi Long 27 - - - - 12 - - MSAL Thay đổi tính import ticket để tích hợp với tài khoản Microsoft DevOps xác thực Chọn ticket cập nhật ticket thay đổi Planning poker lên Azure DevOps Tiếp tục học Anh Võ Hoàng API Azure Việt DevOps Làm lại giao diện import ticket từ Azure DevOps cho hợp mắt Thêm tính cập nhật liệu ticket sau chơi Planning poker lên Azure DevOps Hoàn thành tập thủ tục kết thúc 100% Chương 3: Chi tiết project Giới thiệu Planning Poker Planning poker, hay gọi Scrum poker, trò chơi sử dụng để ước tính thời gian độ phức tạp tính quy trình phát triển Agile Trong Planning poker, thành viên nhóm chọn có số tương ứng với độ phức tạp tính mà họ cân nhắc Các thành viên đặt úp chọn sau lật lúc tất người thảo luận, thay người nói ý kiến theo trình tự Điều tránh việc ý kiến nêu ảnh hưởng đến tất ý kiến sau đó, thành viên bị ảnh hướng cân nhắc lại quan Võ Hoàng Việt Đỗ Phi Long 28 điểm Kỹ thuật, trị chơi đưa năm 2002 James Grenning phổ biến Mike Cohn sách Agile Estimating and Planning Project em thực có ý tưởng giao diện lấy từ trang web có sẵn – planningpokeronline.com Hình 3.1 Giao diện Planning poker • Cách chơi planning poker: Planning Poker có với giá trị khác in mặt gồm số gần giống dãy Fibonacci: (0, 1, 2, 3, 5, 8, 13, 20, …) số ký tự khác Ký tự Ý nghĩa Task hoàn thành 1/2 Task nhỏ 1, 2, Task nhỏ 5, ,13 Task có giá trị tương đối 20, 40 Task lớn Võ Hoàng Việt Đỗ Phi Long 29 100 Task lớn ∞ Task lớn, không xác định trước ? Không biết task có giá trị Nghỉ giải lao (Coffee break) Các giá trị thể số điểm (story point), lý tưởng theo số ngày, đơn vị mà nhóm dự tính Các thành viên nhóm thảo luận tính đó, đặt câu hỏi với Product Owner cần thiết Khi tính thảo luận kỹ lưỡng, thành viên tự chọn để đưa ước tính Tất lật lên Nếu tất có giá trị giá trị chấp nhận ước tính tính vừa thảo luận Nếu không, thành viên nhóm thảo luận ước tính mà đưa Đặc biệt, thành viên có ước tính cao thấp cần đưa sở cho ước tính Sau hồi thảo luận, thành viên chọn để ước tính lại họ lại đồng thời lật lên Quy trình lặp lặp lại đạt đồng thuận thành viên họ định ước tính tính cần hỗn lại có thêm thơng tin bổ sung Hình 3.1 Q trình chơi planning poker Võ Hoàng Việt Đỗ Phi Long 30 Thực Do thời gian tham gia thực tập thực tập sinh có nhiều khác nên em tham gia project hầu hết bạn khác hoàn tất tập, đồng thời project sử dụng git fork flow nên đa phần thực tập sinh làm việc độc lập fork Trong trình thực chức cho Planning poker em có trao đổi với số thành viên team: • Bạn Phạm Phúc Nguyên • Anh Võ Hoàng Việt • Anh Trần Văn Chung Kế hoạch Giai đoạn bàn giao: • Tìm hiểu công nghệ tech stack project: React, TypeScript, ASP NET Core Web API, GraphQL, GraphQL Code Generator, HotChocolate, Entity Framework Core • Đọc codebase phần backend • Đọc codebase phần frontend Chọn cơng việc (ticket): • Chọn ticket “Import tickets from Azure DevOps” • Chọn ticket “Update tickets from Azure DevOps” Thực hiện: • Refactor lại code bị trùng, code không sử dụng, code hiệu component frontend • Thiết kế, thực giao diện import ticket • Thêm tính lấy ticket từ project Azure DevOps Personal Access Token (PAT) tự tạo Võ Hồng Việt Đỗ Phi Long 31 • Tích hợp tính xác thực tài khoản Microsoft, nhớ tài khoản xác thực tính đăng xuất khỏi tài khoản đăng nhập • Thay đổi tính import ticket PAT thành import ticket từ tài khoản Azure DevOps đăng nhập • Tích hợp tính cập nhật liệu ticket thay đổi chơi lên project Azure DevOps Các thông tin cập nhật gồm số điểm ticket, tên ticket mô tả Các ticket thay đổi cập nhật sau lượt vote kết thúc người chơi chủ động nhấn vào thay đổi thông tin ticket Kết quả: Đã hoàn thành toàn ticket chọn refactor lại codebase gọn nhiều nơi Áp dụng nhiều kiến thức học trình thực tập lên codebase có sẵn Võ Hồng Việt Đỗ Phi Long 32 TÀI LIỆU THAM KHẢO C#: • https://learn.microsoft.com/en-us/dotnet/csharp/ • https://learn.microsoft.com/en-us/dotnet/csharp/whats-new/csharp-11 Web API: • https://learn.microsoft.com/en-us/azure/architecture/best-practices/api-design • https://www.w3schools.com/js/js_api_intro.asp • https://learn.microsoft.com/en-us/aspnet/core/web-api/?view=aspnetcore-6.0 MVC: • https://learn.microsoft.com/en-us/aspnet/core/mvc/overview?view=aspnetcore-6.0 TDD: • https://en.wikipedia.org/wiki/Test-driven_development • https://www.browserstack.com/guide/what-is-test-driven-development GraphQL & HotChocolate: • https://chillicream.com/docs/hotchocolate • https://graphql.org/ • https://the-guild.dev/graphql/codegen Typescript: • https://www.typescriptlang.org/docs/ ReactJS: • https://reactjs.org/docs/getting-started.html Planning Poker: • https://en.wikipedia.org/wiki/Planning_poker • https://viblo.asia/p/su-dung-planning-poker-de-estimate-cac-du-an-trong-agilegkyzEonvRnv Võ Hoàng Việt Đỗ Phi Long 33 TỔNG KẾT Trong thời gian tháng thực tập KMS em học nhiều kiến thức chuyên môn có nhiều hội để trau dồi lực kỹ thuật nhận góp ý vơ hữu ích từ bậc tiền bối Những kiến thức mà em học giúp em có nhìn khách quan công nghệ, đánh giá điểm mạnh điểm hạn chế chúng, vấn đề tranh tổng thể mà chúng cố gắng giải Đồng thời, em vận dụng kiến thức học vào phần mềm dù chưa hồn chỉnh đóng vai trò bước đầu quãng đường nghiệp dài Không kiến thức chuyên môn, mà suốt thời gian học hỏi làm việc KMS em có nhiều hội cải thiện kỹ mềm kỹ giao tiếp, thuyết trình lên kế hoạch Bên cạnh kỹ cứng mềm cịn có học mà em tiếp thu nhận thấy chúng cịn có ảnh hưởng to lớn so với kỹ Thứ khả tiếp nhận trích đóng góp, thứ hai khả thừa nhận thiếu sót thân biết nên nhờ giúp đỡ Xin cảm ơn anh Võ Hoàng Việt tận tình hướng dẫn em trình thực tập team Clearwave KMS Anh Việt hòa đồng dễ trị chuyện, anh có trách nhiệm việc hướng dẫn định hướng cho em suốt tập công ty, anh thường xun cho em lời khun hữu ích cơng việc môi trường công sở Cuối cùng, em xin cảm ơn tập thể mentor team Clearwave tận tình giúp đỡ giải đáp thắc mắc em cách thân thiện đầy đóng góp Võ Hồng Việt Đỗ Phi Long ... nghệ GraphQL giúp định nghĩa kiến trúc cho Web API mơ hình giao tiếp chúng với client • ASP NET Core Web API: framework dùng để xây dựng Web API với ASP NET Core, có nhiều điểm giống với ASP NET... học tập kiến thức tháng đầu tập, thực tập sinh transfer project trị chơi planning poker web, có tech stack sau: • Frontend: React, React Query, Ant Design • Backend: GraphQL, ASP NET Core Web. .. dựng backend cho trang web demo với frontend sử dụng React Võ Hoàng Việt Đỗ Phi Long 15 2.6 Tìm hiểu React Thời gian: tuần Nội dung: Tìm hiểu React thuyết trình với mentor • React: thư viện frontend