Đăng ký Đăng nhập
Trang chủ Giáo dục - Đào tạo Cao đẳng - Đại học Công nghệ thông tin Lập trình web với nodejs và reactjs (báo cáo thực tập)...

Tài liệu Lập trình web với nodejs và reactjs (báo cáo thực tập)

.PDF
16
1
133

Mô tả:

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 NODEJS VÀ REACTJS Công ty thực tập : Hitek Group JSC Người phụ trách : Trịnh Minh Tuấn Thực tập sinh : Trần Hậu Đạt TP. Hồ Chí Minh, tháng 12 năm 2021 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 hoá. 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 JavaScript 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 JavaScript 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 Hitek Group 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. 1 LỜI CẢM ƠN Trân trọng gửi lời cảm ơn Công ty Hitek đã 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 Trịnh Minh Tuấn, trainer chính đã hướng dẫn, giúp đỡ cho em tận tình tìm hiểu công nghệ Nodejs, ReactJs và giúp em thích nghi với môi trường mới. Cuối cùng, em 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. Trần Hậu Đạt Tp.HCM, 12/2021 2 NHẬN XÉT CỦA KHOA 3 Mục lục LỜI MỞ ĐẦU 1 LỜI CẢM ƠN 2 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. Các dịch vụ của công ty 6 Chương 2: 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 2. Nghiên cứu kỹ thuật 3. 8 8 8 2.1 Quy trình 8 2.2 Tìm hiểu cơ bản về frontend 8 2.3 Tìm hiểu về ReactJs 9 2.4 Tìm hiểu NodeJs và Express framework 9 2.5 Tìm hiểu về Sequelize ORM 9 2.6 Tìm hiểu về Jest 10 2.7 Tìm hiểu sơ lược về Nginx 10 2.8 Thực hiện project 10 Lịch làm việc 11 Chương 3: Chi tiết project 13 1. Thông tin 13 2. Công nghệ sử dụng 13 TỔNG KẾT 14 TÀI LIỆU THAM KHẢO 15 4 Chương 1: Giới thiệu công ty thực tập 1. Giới thiệu công ty Hitek Group thành lập năm 2017. Kể từ khi bắt đầu cuộc hành trình từ năm 2017, giá trị cốt lõi của công ty vẫn được giữ nguyên không bao giờ thay đổi: Đẳng cấp, Định hướng khách hàng, Bảo mật tối đa, Làm việc bằng Tâm huyết và Đam mê. Chúng tôi mang đến cho khách hàng những giải pháp tuyệt vời phù hợp với nhu cầu, ngân sách và thời gian của họ. Năm 2017, Hitek được thành lập chỉ với 5 kỹ sư phần mềm, làm việc tự do, tập trung vào phát triển web và ứng dụng di động cho thị trường Việt Nam. Năm 2018, lần đầu nhận được hợp đồng gia công phần mềm cho thị trường Hàn Quốc, Hitek đã thay đổi chiến lược kinh doanh mở rộng sang thị trường nước ngoài. Năm 2019-2020, chúng tôi tiếp tục phát triển công nghệ tại Hàn Quốc. Gần 90% các dự án đến từ thị trường này. Năm 2021, Hitek cung cấp các dịch vụ gia công phần mềm và cung cấp phần mềm cho các khách hàng đến từ Mỹ, Canada, Đức, Hàn Quốc. 5 2. Các dịch vụ của công ty  Dịch vụ xây dưng offshore center: Được tích lũy kinh nghiệm từ các dự án xây dựng offshore center với các khách hàng từ khắp nơi trên thế giới, Hitek tự tin rằng chúng tôi là một trong số ít những nhà cung cấp dịch vụ xây dựng offshore center phù hợp và hiện đại nhất.  Dịch vụ custom phần mềm: Là một công ty phát triển phần mềm custom hàng đầu Việt Nam, chúng tôi đã hoàn thành xuất sắc hàng trăm dự án cho các khách hàng trên toàn thế giới. Thành lập từ năm 2017, Hitek luôn áp dụng các phương pháp mới một cách thuần thục.  Dịch vụ outsourcing theo dự án: Đã và đang có nhiều cơ hội thực hiện những dự án Outsourcing cho các quốc gia phát triển trên thế giới như Mỹ, Canada, Hàn Quốc,... chúng tôi tự tin rằng Hitek có đủ kinh nghiệm để xử lý những dự án phức tạp nhất.  Dịch vụ phát triển phần mềm dài hạn: Phát triển phần mềm dài hạn là một quá trình xây dựng phức tạp, bởi không phải ai cũng được đào tạo bài bản và có kiến thức chuyên sâu để tự mình xử lý các dự án phát triển phần mềm dài hạn.  Dịch vụ phát triển web: Với hơn 5 năm kinh nghiệm trong nghề, chúng tôi rất thành thạo trong việc phát triển web tùy chỉnh sử dụng .NET, NodeJS, Java, PHP và các công nghệ front-end hiện đại khác (Angular, ReactJS, Jquery, HTML5, CSS3… ), Hitek rất hân hạnh đồng hành cùng bạn trong các dự án phát triển website  Dịch vụ migrate Server: Trong số các dịch vụ, ý tưởng công nghệ hỗ trợ doanh nghiệp, dịch vụ Cloud Migration - từ các nhà cung cấp chính như Amazon Web Service (AWS), Microsoft Azure - có lẽ là yếu tố thúc đẩy khách hàng TIN TƯỞNG và LỰA CHỌN Hitek.  Dịch vụ phát triển mobile app: Luôn đặt chất lượng lên hàng đầu, Hitek sở hữu đội ngũ trẻ, năng động, sáng tạo. Với hơn 30 lập trình viên có kỹ thuật cao, chúng tôi đã hoàn thành xuất sắc hơn 100 dự án trong vòng 5 năm. 6  Dịch vụ kiểm thử phần mềm: Là một trong những công ty phát triển phần mềm tại Việt Nam, Hitek vượt trội trong việc xây dựng trải nghiệm web và thiết bị di động cho khách hàng trên toàn thế giới. 7 Chương 2: Nội dung thực tập Đợt thực tập với chủ đề “Lập trình Web với Nodejs và ReactJs” 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ệ để làm web application, đồ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ư NodeJs, ReactJs. Ngoài ra, thực tập sinh được trực tiếp hướng dẫn bởi 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 buổi Nội dung : Giới thiệu về công ty, cách tổ chức, chính sách 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 Hitek, 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 Quy trình và công cụ Thời gian : 1 buổi 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 - Công cụ sử dụng trong làm việc - Cài đặt môi trường Thực hiện : Tìm hiểu quy trình và sử dụng các phần mềm đã nêu trên. 2.2 Tìm hiểu cơ bản về frontend 8 Thời gian : 7 ngày Nội dung : Tìm hiểu về HTML, CSS, JavaScript và TypeScript - Tìm hiểu về HTML - Tìm hiểu về CSS - Tìm hiểu về JavaScript - Tìm hiểu về TypeScript - Tìm hiểu về Webpack Thực hiện: - Tìm hiều tổng quan về Frontend programming (như trên). - Học và làm các bài tập để kiểm tra lại kiến thức đã học Kết quả: Hiểu và hoàn thành bài kiểm tra đánh giá. 2.3 Tìm hiểu về ReactJs Thời gian : 7 ngày Nội dung : Tìm hiểu về ReactJs - Tìm hiểu JSX - Tìm hiểu props và state - Tìm hiểu React lifecycle - Tìm hiểu React routing - Tìm hiểu React Hooks Thực hiện: - Học và làm các bài tập để kiểm tra lại kiến thức đã học Kết quả: Hiểu và hoàn thành các bài tập. 2.4 Tìm hiểu NodeJs và Express framework Thời gian : 5 ngày Nội dung : Tìm hiểu về framework Express - Tìm hiểu express framework Thực hiện: - Học và làm các bài kiểm tra đánh giá. Kết quả: Hiểu và hoàn thành bài kiểm tra đánh giá. 2.5 Tìm hiểu về Sequelize ORM Thời gian : 7 ngày 9 Nội dung : Tìm hiểu về Sequelize ORM Thực hiện: Tìm hiểu về các vấn đề: - Setup - Sequelize CLI - Association - Migration - Query Kết quả: Sử dụng được thư viện cơ bản và đáp ứng được yêu cầu của anh Mentor 2.6 Tìm hiểu về Jest Thời gian : 2 ngày Nội dung : Tìm hiểu về việc viết Unit Test với Jest - Unit Testing với Jest - Thực hành 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 Tìm hiểu sơ lược về Nginx Thời gian : 2 ngày Nội dung : Tìm hiểu về Nginx - Khái niệm - Cơ bản về Nginx - Thực hành 2.8 Thực hiện project Thời gian : 2 tháng Nội dung : Áp dụng các kiến thực đã học vào làm project - Đọc hiểu yêu cầu - Design Database - Frontend ReactJS - Backend API(NodeJs + Sequelize) Database (PostgreSQL) Unit test 10 - AWS + gitlab source control Thực hiện: Làm project và báo cáo kết quả cho anh Tuấn Kết quả: Nắm các kiến thức của module trước và áp dụng vào project 3. Lịch làm việc Tuần 1 1 1, 2 3 Công việc - Tìm hiểu về công ty, cách tổ chức của công ty. - Tìm hiểu quy trình phát triển phần mềm. - Setup môi trường Tìm hiểu về Frontend:  Tìm hiểu về HTML  Tìm hiểu về CSS  Tìm hiểu về Javascript  Tìm hiểu về TypeScript  Tìm hiểu về webpack Tìm hiểu về ReactJs:  Tìm hiểu về JSX  Tìm hiểu props, state  Tìm hiểu về lifecycle  Tìm hiểu về routing  Tìm hiểu về React Hooks Tìm hiểu về NodeJs và Express  Tìm hiểu Express  Tìm hiểu mô hình MVC  Tìm hiểu Json Web Token Người hướng dẫn Hoàn thành Đánh giá Anh Trịnh Minh Tuấn 100% Hoàn thành tốt Anh Trịnh Minh Tuấn 100% Hoàn thành tốt Anh Trịnh Minh Tuấn 100% Hoàn thành tốt Anh Trịnh Minh Tuấn 100% Hoàn thành tốt 11 3+4 4 4-8 8-13 Tìm hiểu về Sequelize ORM  Sequelize CLI  Model  Association  Migration  Query Thực hiện Unit Test và Nginx  Đọc tài liệu đặc tả yêu cầu.  Unit Testing với Jest  Tìm hiểu về Nginx Thực hiện Project backend  Đọc tài liệu đặc tả yêu cầu.  Thiết kế CSDL  Đọc tài liệu chi tiết thiết kế API  Coding Convention  Code chức năng dùng NodeJs và TypeScript  Viết Unit Test cho chức năng  Dùng postman test API  Deploy server lên AWS server Thực hiện Project frontend  Đọc tài liệu thiết kế  Coding Convention  Code giao diện sử dụng ReactJs  Test  Deploy Anh Trịnh Minh Tuấn 100% Hoàn thành tốt Anh Trịnh Minh Tuấn 100% Hoàn thành tốt Anh Trịnh Minh Tuấn 100% Hoàn thành tốt Anh Trịnh Minh Tuấn 100% Hoàn thành tốt 12 Chương 3: Chi tiết project 1. Thông tin Ứng dụng về xe (Thông tin về bảo dưỡng các thiết bị trên xe + Ghi lại thông đường đi qua GPS và chia sẻ lịch trình, ảnh trên đường đi) 2. Công nghệ sử dụng Mobile: Flutter Backend: NodeJs Frontend: ReactJs Database: PostgreSQL Do chính sách của công ty nên chi tiết thông tin về project không được trình bày. 13 TỔNG KẾT Như vậy, chỉ trong vòng hơn ba 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 và các công cụ trong ngành hiện này như Nodejs, ReactJs, Gitlab,.. 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 chuyên 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 Trịnh Minh Tuấn đã nhiệt tình giúp đỡ em hoà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. 14 TÀI LIỆU THAM KHẢO NodeJS: https://nodejs.org/api/ TypeScript: https://www.typescriptlang.org/ ReactJs: https://reactjs.org/ Sequelize ORM: https://sequelize.org HTML+CSS+JS: https://www.w3schools.com/ 15
- Xem thêm -

Tài liệu liên quan