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

Đề Tài Lập Trình Fullstack Với Nestjs, React Và React Native.docx

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 (960.75 KB, 20 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 Fullstack với NestJs, React và
React Native

Công ty thực tập: Công ty TNHH Playground
Lớp: SE501.N11.PMCL
Sinh viên thực hiện: Nguyễn Hữu Phát – 19521996

TP. Hồ Chí Minh, ngày 15 tháng 12 năm 2022


NHẬN XÉT
(Của giảng viên)

............................................................................................................................................................
............................................................................................................................................................
............................................................................................................................................................
............................................................................................................................................................
............................................................................................................................................................
............................................................................................................................................................
............................................................................................................................................................
............................................................................................................................................................
............................................................................................................................................................
............................................................................................................................................................
............................................................................................................................................................
............................................................................................................................................................
............................................................................................................................................................


............................................................................................................................................................
............................................................................................................................................................
............................................................................................................................................................
............................................................................................................................................................
............................................................................................................................................................
............................................................................................................................................................
............................................................................................................................................................
........................................................................................................................


MỤC LỤC

MỤC LỤC
LỜI NÓI ĐẦU
LỜI CẢM ƠN
Chương 1: Giới thiệu công ty thực tập
1. Giới thiệu công ty Playground
2. Sản phẩm của công ty
Chương 2: Nội dung thực tập
2.1. Hướng dẫn những quy tắc cơ bản khi làm việc nhóm và những quy định
của công ty
2.2. Làm quen với React Native
Thực hiện project
2.3. Lịch làm việc
Chương 3: Chi tiết về project
3.1. Giới thiệu về dự án Another Universe
3.2. Chi tiết ứng dụng
TÀI LIỆU THAM KHẢO
TỔNG KẾT



LỜI NĨI ĐẦU
Ngày nay điện thoại di động thơng minh đã trở thành phần không thể thiếu
của nhiều người trong cuộc sống hằng ngày. Các thiết bị di động thông minh có
một sự tăng trưởng và phát triển mạnh mẽ với sự ra đời liên tục của một loạt các
máy tính bảng hiện đại, điện thoại thơng minh có tính cạnh tranh cao, do đó thị
trường xây dựng các ứng dụng trên các thiết bị này trở nên vô cùng màu mỡ.
Việc lập trình trên thiết bị di động sẽ trở thành xu hướng mới trong ngành công
nghiệp phần mềm. Vì vậy, em quyết định chọn lập trình di động làm định hướng
cho việc học tập của mình.
Để trở thành lập trình viên ứng dụng di động, em đã đăng ký học các mơn
như nhập mơn lập trình di động, lập trình ứng dụng di động, ngơn ngữ lập trình
java, phát triển ứng dụng di động trên thiết bị di động.
Sau ba năm học tập trên trường, em muốn được cọ xát hơn với môi trường
làm việc thực tế nên đã quyết định đi làm ở môi trường công ty chun nghiệp khi
cịn ngồi trên giảng đường đại học. Vì vậy, em đã ứng tuyển và may mắn được vào
Công ty TNHH Playground ở vị trí Fresher mobile developer.


LỜI CẢM ƠN
Trân trọng gửi lời cảm ơn tới Công ty TNHH Playground đã tạo điều kiện và
học tập tại công ty.
Trong thời gian vừa qua nhờ sự giúp đỡ của các anh trong công ty mà em
học hỏi được nhiều từ kiến thức chuyên ngành trong việc phát triển phần mềm, vận
hành dự án cho tới những kỹ năng mềm như giao tiếp, làm việc nhóm,…
Đặc biệt cảm ơn anh Bùi Thái Hồng - mentor chính của em trong giai đoạn
đầu mới vào công ty. Anh đã hướng dẫn, giúp đỡ cho em về những quy trình cần
nắm, các kiến thức nền, cách làm việc với các nhóm và cách giải quyết những khó
khăn trong cơng việc.
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.
Nguyễn Hữu Phát
TP.HCM, ngày 15 tháng 12 năm 2022


DANH MỤC CÁC CỤM TỪ VIẾT TẮT
CD : Client Development 
API : Application Programming Interface
BE : Back end


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

1.

Giới thiệu công ty Playground
Playground được chính thức thành lập từ ngày 27/04/2021
Lĩnh vực kinh doanh chính là cơng nghệ thơng tin và blockchain. Bằng cách phát
triển và sản xuất các trò chơi khác nhau và các nhiệm vụ liên quan đến metaverse,
NFT game, tiền ảo…
Playground có nhiều chi nhánh tại Mỹ, Hàn Quốc, Singapore và Việt Nam

2.

Sản phẩm của công ty
Playground hiện tại đã và đang cung cấp các sản phẩm dịch vụ liên quan đến lĩnh
vực blockchain, NFT... Đặc biệt phải kể đến các sản phẩm công nghệ như Game,
Sàn Swap, DAO, Marketplace, …



Chương 2: Nội dung thực tập
Đợt thực tập, được đào tạo lập trình Backend bằng NestJs, lập trình web bằng
React và lập trình di động bằng React native. Bên cạnh kĩ thuật, sinh viên được tham gia
vào dự án với mơ hình làm việc Scrum, được rèn luyện kĩ năng mềm như làm việc nhóm
theo Scrum, thuyết trình, giao tiếp, sử dụng công cụ quản lý công việc Trello.
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 startup năng động.

1.

Hướng dẫn những quy tắc cơ bản khi làm việc nhóm và những quy định
của công ty
Thời gian : 1 ngày
Nội dung :
- Giới thiệu về hệ thống nhân sự và lịch sử phát triển của công ty.
- Hướng dẫn những quy định của công ty và những yêu cầu cơ bản khi làm
việc nhóm.
- Giới thiệu những dự án hiện tại của cơng ty và những chính sách của cơng
ty với nhân viên.
Kết quả :
- Hiểu được những khó khăn khi trở thành startup công nghệ.
- Hiểu được sứ mệnh và hướng phát triển của công ty.
- Hiểu được cách thức làm việc của quy trình chuyên nghiệp.

2.

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

-


Làm quen với React Native

Thời gian: 2 tuần.
Nội dung:
Tìm hiểu các kiến thức cơ bản về React Native và Javascript.
Tìm hiểu về Component, State, Props.
Tìm hiểu về vịng đời của một Component.
Tìm hiểu về Navigation.


-

Tìm hiểu về Redux, Redux Saga.

Kết quả: Nắm được các kiến thức cơ bản về React Native và cách làm một ứng
dụng đơn giản với React Native

2.2.

-

Thời gian: 2 tuần.
Nội dung:
Đọc hiểu source code BE.
Viết API cho BE cho tính năng Treasure và advertisement.
Kết quả: Nắm được các kiến thức cơ bản về BE

2.3.


-

3.

Lập trình BE với NestJs và database Postgres

Tạo module wallet crypto trong app

Thời gian: 2 tuần.
Nội dung:
Tìm hiểu thư viện Web3js
Viết module wallet có thể tạo hoặc import wallet
Tương tác với contract qua Wallet
Kết quả: Đã xây dựng được wallet trong ứng dụng

Thực hiện project

Sau thời gian 6 tuần tiếp cận với React native dưới sự chỉ dạy tận tình thơng quan
các buổi seminar và được tiếp cận với những dự án thực tế. Trong thời gian các tuần tiếp
theo em đã có thể đóng góp kiến thức của mình để giúp các anh tiếp tục hồn thành dự án
Another Universe với support cho bên BE và bên web.

4.

Lịch làm việc

Tuần
1

Cơng việc


-

Tìm hiểu về cơng ty, cách tổ
chức của công ty.
Học cách trao đổi, làm việc qua
email.

Người
hướng dẫn
Anh Hoàng

Mức độ
hoàn
thành

Nhận xét của
người hướng
dẫn


-

Làm quen với các cơng cụ làm việc
trong cơng ty.
Tìm hiểu về git và quy trình quản
lý source code của cơng ty
Tìm hiểu các kiến thức cơ bản Anh Hồng
về React Native và Javascript.
Tìm hiểu về Component, State,

Props.
Tìm hiểu về vịng đời của một
Component.
Tìm hiểu về Navigation.
Tìm hiểu về Redux, Redux
Saga.

-

2

-

3

-

4

5

-

6

7
8

-


Nghiên cứu Threejs để tạo web
tương tác với hành tinh 3d
Support BE build api để quản lý
tính năng Treasure
Thêm giao diện vào web
Dashboard để quản lý Treasure
mình làm
Build bot cronjob ở BE để update
data dưới BE
Support BE build api để quản lý
tính năng Advertisement
Thêm giao diện vào web
Dashboard để quản lý
Advertisement mình làm
Tạo module ví web3 để tương tác
với blockchain từ trong app
Thực hiện các giao dịch bằng
wallet trong app

Anh Hoàng
Anh Hoàng

Anh Hoàng
Anh Hoàng

Anh Hoàng
Anh Hoàng


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

1.

Giới thiệu về dự án Another Universe

Another Universe là 1 dự án làm về mảng web3. Ở đó người dùng có thể
tương tác với dải ngân hà. Người dùng có thể sử dụng crypto để mua các
hành tinh là những nft trên marketplace trong app.


2.

Chi tiết ứng dụng

Trang chủ của ứng dụng Another Universe nơi người dùng có thể tương tác
với dải ngân hà


Marketplace là nơi người dùng có thể mua ngơi tương ứng với những
NFT cho mình


Màn hình chi tiết 1 ngơi sao
Màn hình chi tiết 1 ngơi sao, người có thể tương tác với object 3D này. Ngơi sao
này có Treasure nên người dùng có thể bấm vào rương để xem quảng cáo và nhận
phần thưởng


Ví crypto trong ứng dụng



Module Treasure API ở BE


Màn hình dashboard quản lý treasure


TÀI LIỆU THAM KHẢO
React native
/>ReactJS
/>NestJS
/>

TỔNG KẾT
Kết quả đạt được:
1. Lý thuyết:
- Sau quá trình thực tập, với những kiến thức cơ bản và được bổ sung thêm khi
thực tập tại cơng ty.
- Ngồi kiến thức về lập trình ứng dụng di động cơng ty đã bổ sung thêm các kiến
thức liên quan đến lập trình web và chia sẻ kiến thức quản trị nhân lực tại công ty.

2. Kỹ năng:
- Về kỹ năng công ty đã truyền đạt những kỹ năng lập trình như cách tổ chức cấu
trúc chung của dự án theo mô hình, các tiêu chuẩn khi lập trình và các kỹ năng khi
làm việc với các công cụ quản lý mã nguồn.
- Ngồi kỹ năng cứng, cơng ty đã chia sẻ những kỹ năng mềm như kỹ năng thuyết
trình, kỹ năng làm việc nhóm và kỹ năng giao tiếp với đồng nghiệp, khách hàng...

3. Kinh nghiệm:
- Kinh nghiệm của bản thân sau khi thực tập được nâng cao với những kinh
nghiệm làm việc theo từng dự án sao cho tối ưu nhất khi bảo trì phần mềm, kinh

nghiệm liên quan đến phong cách lập trình dễ đọc dễ hiểu.
- Học tập được nhiều hơn về cách phân bổ thời gian sao cho khơng làm chậm tiến
trình của dự án.
- Với kinh nghiệm của các anh chị khi được làm việc chung đã truyền đạt kinh
nghiệm làm việc nhóm sao cho hiệu quả nhất tránh việc không mong muốn xảy ra


trong quá trình phát triển phần mềm. Khả năng giao tiếp với khách hàng sao cho
khách hàng dễ nắm bắt, dễ hiểu...



×