You are on page 1of 12

ĐẠI HỌC CÔNG NGHỆ THÔNG TIN TP.

HCM
TRUNG TÂM PHÁT TRIỂN CÔNG NGHỆ THÔNG TIN

ĐỒ ÁN MÔN HỌC
KỸ NĂNG NGHỀ NGHIỆP
ĐỀ TÀI

XÂY DỰNG TRÒ CHƠI RẮN SĂN MỒI

GV hướng dẫn: ThS. Nguyễn Văn Toàn


Nhóm sinh viên thực hiện:

Họ và tên MSSV Mã lớp


Trần Hoàng Phúc 22730091 CN1.2022.3
Nguyễn Nữ Kim Sa 22730092 CN1.2022.3
Kiều Xuân Ảnh 22730063 CN1.2022.3
Võ Tấn Phát 22730089 CN1.2022.3
Lê Nguyễn Hoàng Bảo Lâm 22730078 CN1.2022.3

TP. Hồ Chí Minh, 24.08.2023


Mục lục

1 MỞ ĐẦU 2

2 NỘI DUNG 3
2.1 HỢP ĐỒNG THÀNH LẬP NHÓM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
2.1.1 Thông tin chung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
2.1.2 Thành viên trong nhóm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
2.1.3 Mục đích thành lập nhóm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
2.1.4 Phân công nhiệm vụ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
2.1.5 Nguyên tắc hoạt động nhóm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
2.1.6 Hiệu lực hợp đồng . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2.2 ĐỒ ÁN SNAKE GAME . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2.2.1 Giới thiệu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2.2.2 Cấu trúc chương trình . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2.2.3 Những kỹ năng, kiến thức tâm đắc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
2.3 ĐÁNH GIÁ HỢP ĐỒNG NHÓM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
2.3.1 Đánh giá mức độ hoàn thành nhiệm vụ . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
2.3.2 Tiêu chí đánh giá thành viên . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.3.3 Kết quả đánh giá thành viên . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.3.4 Xác nhận của các thành viên . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

3 KẾT LUẬN 10
3.1 THUẬN LỢI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
3.2 KHÓ KHĂN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
3.3 TỔNG KẾT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

4 NỘI DUNG THAM KHẢO 11

1
Chương 1

MỞ ĐẦU

Trong ngành Công Nghệ Thông Tin, kỹ năng làm việc nhóm là yếu tố cần thiết và bắt buộc phải có. Vì
vậy, với mục đích rèn luyện và kiểm tra khả năng làm việc chung với nhau, kết hợp, ứng dụng những kiến thức
đã học trong môn học, thầy đã đưa ra một dự án rất thực tế với kịch bản đầy đủ và chi tiết.
Với đề tài này, chúng em được lồng ghép thêm những kỹ năng nghề nghiệp thực tế, như phân chia dự
án, phân công công việc bằng các công cụ như Trello, Github. Bên cạnh đó, việc tham gia thực hành phát triển
dự án game này, chúng em được trau dồi thêm kiến thức nền về việc làm thế nào để phát triển một dự án, phải
xây dựng cấu trúc dự án như thế nào, tiến độ hoàn thành được theo dõi ra sao.
Kỹ năng mềm cũng được học tập và hình thành tốt hơn trong quá trình xây dựng đồ án này, chúng em
phát triển được kỹ năng giao tiếp, đối thoại và lắng nghe nhau, cách xử lý tình huống khi có bất đồng ý kiến
xảy ra, làm thế nào để giải quyết những vấn đề đó.
Chúng em rất cám ơn thầy đã theo sát và góp ý trong quá trình chúng em thực hiện đồ án, những góp
ý của thầy rất quý giá và hữu ích đối với nhóm chúng em, làm hành trang cho chúng em sau này.

Trân trọng,

Nhóm PPSAL

2
Chương 2

NỘI DUNG

2.1 HỢP ĐỒNG THÀNH LẬP NHÓM


2.1.1 Thông tin chung
ˆ Tên nhóm: PPSAL
ˆ Link Trello: https://trello.com/b/CbAt9jle/

ˆ Link GitHub: https://github.com/HoangPhuc1998HPT/PPSALTEAM/tree/main

2.1.2 Thành viên trong nhóm


Tên thành viên Mã số sinh viên Vai trò
Trần Hoàng Phúc 22730091 Trưởng nhóm
Nguyễn Nữ Kim Sa 22730092 Phó nhóm
Kiều Xuân Ảnh 22730063 Thành viên
Võ Tấn Phát 22730089 Thành viên
Lê Nguyễn Hoàng Bảo Lâm 22730078 Thành viên

2.1.3 Mục đích thành lập nhóm


ˆ Hoàn thành Đồ án cuối kỳ - Game Con Rắn - môn Kỹ Năng Nghề Nghiệp.

ˆ Hoàn thiện kỹ năng làm việc nhóm qua các công cụ như Trello, Git. . .

ˆ Hỗ trợ lẫn nhau giữa các thành viên cùng trao đổi kiến thức, kinh nghiệm làm việc.

3
2.1.4 Phân công nhiệm vụ
Nhiệm vụ Hoàng Phúc Kim Sa Xuân Ảnh Tấn Phát Bảo Lâm
1 X x
2 x X
3 X X X X X
4 X X X X X
5 X x
6 x x X
7 x X
8 x X
9 X X X X X
10.1 x X
10.2 X x
10.3 x X
10.4 x X
10.5 x X
10.6 x X
10.7 x X
10.8 x X
10.9 x X
10.10 X x

Ghi chú:
X - Phụ trách chính x - Hỗ trợ

Chi tiết nhiệm vụ Xây dưng, phát triển game


1 - Quản lý Trello, Git..của nhóm 10.1 - Vẽ tường
2 - Quản lý tiến độ, phân chia công việc 10.2 - Khởi tạo menu
3 - Tổng hợp nội dung 10.3 - Khởi tạo, vẽ con rắn
4 - Báo cáo, phản biện 10.4 - Xử lí di chuyển
5 - Giới thiệu game 10.5 - Xử lí chạm tường
6 - Soạn hợp đồng nhóm 10.6 - Xử lí ăn mồi, độ dài rắn
7 - Đánh giá hợp đồng nhóm. 10.7 - Xử lí tốc độ di chuyển
8 - Liên hệ - phát ngôn 10.8 - Xử lí điểm, khung hiển thị điểm
9 - Kiểm thử 10.9 - Xử lí tăng cấp, độ khó
10.10 - Đồ họa, màu sắc

2.1.5 Nguyên tắc hoạt động nhóm


ˆ Tất cả thành viên được bình đẳng tham gia các nhiệm vụ theo sự thống nhất phân công của Nhóm.

ˆ Tôn trọng tất cả các ý kiến đóng góp của các thành viên trong nhóm.

ˆ Các thành viên hoàn thành công việc được giao đúng thời hạn

ˆ Các thành viên hỗ trợ nhau khi gặp sự cố phát sinh, tất cả vì mục đích chung là hoàn thành tốt công việc
của nhóm.
ˆ Nếu có bất đồng ý kiến sẽ giải quyết theo nguyên tắc biểu quyết đa số.

ˆ Trong trường hợp không thể áp dụng nguyên tắc biểu quyết đa số, quyền quyết định cuối cùng thuộc về
trưởng nhóm.

4
2.1.6 Hiệu lực hợp đồng
ˆ Thời gian thành lập nhóm: 17-07-2023
ˆ Thời gian kết thúc hợp đồng nhóm: 30-08-2023
ˆ Hợp đồng này được lập thành 05 bản có giá trị như nhau, mỗi thành viên giữ 01 bản.
ˆ Xác nhận của các thành viên:

Nguyễn Nữ Kim Sa Trần Hoàng Phúc Võ Tấn Phát


(đã ký) (đã ký) (đã ký)
Kiều Xuân Ảnh Lê Nguyễn Hoàng Bảo Lâm
(đã ký) (đã ký)

2.2 ĐỒ ÁN SNAKE GAME


2.2.1 Giới thiệu
Snake - tựa game từng thống trị 1 thời trên các thiết bị đồ chơi điện tử, các thiết bị di động đời đầu
của Nokia, Motorola, Sony Erikson, Samsung . . . và là một thời tuổi thơ của rất nhiều người. Bằng những kiến
thức đã được học, nhóm PPSAL đã tái hiện lại trò chơi này bằng giao diện Console của ngôn ngữ C++ quen
thuộc. Nội dung trò chơi được xây dựng xung quanh hình ảnh một chú rắn con háu ăn ham lớn, chú đi khắp
nơi tìm thức ăn để nhanh lớn, nhanh dài ra. Tuy nhiên, càng ăn càng lớn, chú rắn lại cố di chuyển nhanh hơn
để tìm những con mồi mới, những miền đất mới, điều đó khiến chú đôi lúc có những màn đăng xuất đi vào vũ
trụ vô cùng bất ngờ. Mời bạn tham gia chuyến hành trình trở về tuổi thơ và cùng nhau trải nghiệm sự tinh
nghịch của chú rắn háu ăn này cùng nhóm PPSAL. . .

2.2.2 Cấu trúc chương trình


ˆ Nguyên lý game: Con rắn được điều khiển 4 hướng: lên/xuống/trái/phải để di chuyển tới 1 điểm có thức
ăn, sau khi ăn thức ăn rắn dài ra thêm. Và được giới hạn bới 4 bức tường.
ˆ Điều kiện game: người chơi thất bại khi rắn tự cắn mình hoặc chạm tường.
ˆ Dựa theo nguyên lý trên, ta có các bước tiến hành như sau:
– Bước 1 : Khởi tạo 01 con rắn
– Bước 2: Làm cho rắn di chuyển được
– Bước 3: Tạo thức ăn cho rắn
– Bước 4: Xử lý các thao tác di chuyển cho rắn khi rắn ăn mồi phải dài thêm 1 đơn vị
– Bước 5: Xây tường cho rắn, các khung có thể thêm màu sắc
– Bước 6: Xây dựng các điều kiện để thắng và thua.
– Bước 7: Kiểm tra trò chơi, chơi thử và cải tiến.
ˆ Nội dung các bước:
– Bước 1: Tạo 1 con rắn thông qua hàm “void Khoitaotoadoran(int toadox[]”, int toadoy[]) và hàm vẽ
rắn “void VeRan (int toadox[] , int toadoy[])” sau khi khởi tạo ta có 1 hình mẫu rắn tùy ý định nghĩa
có thể là 0ooo hoặc Xxxx khi in rắn ra sau lệnh lập. Khởi tạo main cho chạy khi màn hình xuất hiện
là đạt yêu cầu.
– Bước 2 : làm cho rắn di chuyển được thông qua các hàm:
* void Xoavitricu (int toadox[] , int toadoy[]);
* void Dichuyeran(int toadox[],int toadoy[], int x , int y,int &toadothucanx,int &toadothucany);
* void them(int a[] , int x );
* void Xoa (int a[] , int vt);
Lúc này, rắn đã có thể di chuyển được theo 1 hướng. Cần tạo các phương thức nhận lại điều khiển từ
bàn phím. Sau khi tạo xong ta có thể di chuyển rắn theo hướng chúng ta muốn. Sau bước xử lý này
các chức năng cơ bản của rắn đã được hình thành. Các vấn đề phát sinh sẽ được xử lý dần ở main.
– Bước 3 + Bước 4:

5
* Bước này khá phức tạp và rối ren, gây rất nhiều lỗi. Từ việc mồi xuất hiện 2 lần xong biến mất,
rắn ăn mồi xong không dài thêm. Rắn ăn mồi xong dài gấp đôi đơn vị.
* Phần khởi tạo các hàm cũng rất quan trọng nên đồng bộ ngay từ đầu vì chương trình này không
viết theo dạng hướng đối tượng.
· void KhoiTaoToaDoThucAn(int toadoranx[], int toadorany[],int &toadothucanx, int &toadothu-
cany);
· bool checkRanDeLenThucAn (int toadoranx[], int toadorany[],int toadothucanx, int toadothu-
cany);
· bool XuLyRanAnThucAn (int toadoranx, int toadorany,int toadothucanx, int toadothucany);
* Sau khi khởi tạo tọa độ thức ăn ta tạo theo hướng cho hàm chạy tọa độ x, y ngẫu nhiên theo
thời gian thực.
* Tạo tiếp hàm xử lý rắn sau khi ăn thức ăn cho rắn ăn thức ăn bằng cách kiêm tra tọa độ của
rắn có trùng với thức ăn hay không. Sau đó gán ngược hàm lên vị trí hàm xử lý di chuyển của
rắn. mục đích sau khi ăn quả rắn dài thêm 1 đơn vị.
* Tại vị trí gán hàm này sẽ phát sinh 1 lỗi: sau khi rắn ăn quả đầu tiên thì tăng lên 2 đơn vị. hiện
chưa giải thích được nên lấy độ dài rắn trừ đi 1 để giảm lại đúng kích thước.
* Sau khi đạt được điều kiện rắn đã ăn thức ăn ta cho tọa độ thức ăn khởi tạo lại.
* Cùng lúc tích hợp chức năng tăng tốc độ rắn “tocdochay = tocdochay – 10” thực tế là từ hàm
sleep ra có tạo thêm điều kiện gán thay vì cho chỉnh tốc độ ở main.
* Hàm sleep này có 1 nhược điểm khi tốc độ bị trừ về tới 0 thì rắn tự chết. Chưa xử lý tối ưu được
nên tạm xem đây là 1 chức năng. Khi rắn đạt mức điểm quá cao sẽ chết, tạo ra điều kiện để qua
màn tiếp theo. Sau khi tính toán lại thì phải viết lại toàn bộ chương trình theo dạng hướng đối
tượng mới xử lý được chức năng này. Nên nhóm thống nhất lại giới hạn mức điểm của trò chơi.
– Bước 5: Xây tường cho rắn, có thể thêm màu cho các khung
* Thực tế đây là bước đơn giản nhất, được tạo trước cả bước tạo con rắn. Nhưng để hợp lý toàn
bộ trò chơi nên nhóm đưa nó xuống thành bước 5 sau khi các chức năng hoàn chỉnh. Vì các chức
năng không hoàn chỉnh thì bước này cũng vô nghĩa.
* Ta tạo các hàm vẽ tường bằng cách cho chạy lệnh vòng lặp theo phương x hoặc phương y. Cố
định và giới hạn điều kiện. Sau đó gom tất cả lại trong 1 hàm void VeTuong();
– Bước 6: Xây dựng các điều kiện để thắng và thua.
Sau khi có đủ các chức năng hình thành con rắn, việc tiếp theo là xử lý các chức năng để kết thúc
trò chơi.
* bool RanChamTuong (int toadox , int toadoy );
* bool Ranchamduoi (int toadox[], int toadoy[] );
* bool checkdieukienGameover (int toadox[] , int toadoy[] );
Ban đầu các điều kiện này được viết trên main. Sau khi phát sinh lên mọi người đã đưa thành hàm
để dễ kiểm soát.
– Bước 7: Kiểm tra trò chơi, chơi thử và cải tiến
Việc kiểm tra chơi thử phát sinh rất nhiều lỗi qua các lần chỉnh sửa trực tiếp trên thân hàm. Và
cũng đã được tích hợp lại vào các bước cho đỡ phần nghiệp dư. Trên thực tế khi tạo xong hàm xử lý
răn di chuyển phát sinh các lỗi cực kì khó chịu như: rắn bị đè khi gán hàm rắn ăn thức ăn vào, rắn
vừa ăn xong thì end cả game...v.v

2.2.3 Những kỹ năng, kiến thức tâm đắc


Qua đồ án này, chúng em học được nhiều kỹ năng và kiến thức hơn, sau đây, chúng em xin tổng hợp lại
những điều tâm đắc đã học được.
ˆ Phát triển 1 chương trình:
Quá trình thực hiện đồ án game này giúp chúng em cải thiện khả năng lập trình và tổ chức chương trình
của cá nhân cũng như tập thể, sao cho chương trình dễ hiểu, dễ chạy thử, đặc biệt là sự kết hợp code của
từng thành viên lại với nhau.
ˆ Trello: Đây là công cụ khá hữu ích trong việc phân chia công việc của từng thành viên. Tại đây, chúng
em chia công việc thành 3 phần chính:

– Cần làm: là những việc đang cần thực hiện, phân công cho ai, mốc thời gian hoàn thành.

6
– Đang làm: là mục thể hiện tiến độ làm việc của các thành viên trong nhóm. Mỗi thành viên sẽ cập
nhật liên tục tình trạng hoàn thành công việc của mình, để những thành viên khác xem và góp ý
thêm, nhóm trưởng dễ dàng theo dõi tiến độ này.
– Đã hoàn thành: phần này là những việc đã hoàn thành xong của các thành viên.

Hình 2.1: Bảng theo dõi công việc bằng công cụ Trello

ˆ Git và Github: Là một hệ thống quản lý dự án phiên bản code, Github là công cụ cần thiết và hữu ích với
chúng em. Với tính năng “Pull”, chúng em dễ dàng kéo đồ án về máy cá nhân. Chúng em được thực hành
“commit” code sau khi code từng công đoạn, từng phần của mình, sau đó là “Push” lên cho mọi người
theo dõi tiến độ.
Được tìm hiểu về Git và Github, chúng em có thêm kiến thức về việc quản lý code cá nhân cũng như tập
thể, đây là kỹ năng thiết yếu cho chúng em trên con đường phát triển trong ngành sau này.

Hình 2.2: Biểu đồ thể hiện quá trình làm việc trên Git của từng thành viên

ˆ Latex: Việc soạn thảo văn bản bằng Latex giúp chúng em chuyên nghiệp hơn trong việc trình bày văn

7
bản, dễ dàng phân chia bố cục của văn bản, định dạng văn bản cũng rõ ràng, logic, nhất quán và đẹp mắt
hơn.
ˆ Ngoài những kỹ năng bổ ích trên, chúng em được thực hành những bài học trong môn Kỹ năng nghề
nghiệp như cách tổ chức nhóm, phân chia vai trò, và quá trình làm việc nhóm.

2.3 ĐÁNH GIÁ HỢP ĐỒNG NHÓM


2.3.1 Đánh giá mức độ hoàn thành nhiệm vụ
Mức độ
Nhiệm vụ Hoàng Phúc Kim Sa Xuân Ảnh Tấn Phát Bảo Lâm hoàn
thành (%)
1 X x 100
2 x X 100
3 X X X X X 90
4 X X X X X 90
5 X x 100
6 x x X 100
7 x X 100
8 x X 90
9 X X X X X 90
10.1 x X 100
10.2 X x 100
10.3 x X 100
10.4 x X 100
10.5 x X 100
10.6 x X 100
10.7 x X 100
10.8 x X 90
10.9 x X 90
10.10 X x 80

Ghi chú: X - Phụ trách chính x - Hỗ trợ

Chi tiết nhiệm vụ Xây dưng, phát triển game


1 - Quản lý Trello, Git..của nhóm 10.1 - Vẽ tường
2 - Quản lý tiến độ, phân chia công việc 10.2 - Khởi tạo menu
3 - Tổng hợp nội dung 10.3 - Khởi tạo, vẽ con rắn
4 - Báo cáo, phản biện 10.4 - Xử lí di chuyển
5 - Giới thiệu game 10.5 - Xử lí chạm tường
6 - Soạn hợp đồng nhóm 10.6 - Xử lí ăn mồi, độ dài rắn
7 - Đánh giá hợp đồng nhóm. 10.7 - Xử lí tốc độ di chuyển
8 - Liên hệ - phát ngôn 10.8 - Xử lí điểm, khung hiển thị điểm
9 - Kiểm thử 10.9 - Xử lí tăng cấp, độ khó
10.10 - Đồ họa, màu sắc
Đánh giá tổng thể: đã hoàn thành ước tính 90 % nhiệm vụ đặt ra trong hợp đồng nhóm

8
2.3.2 Tiêu chí đánh giá thành viên
Tiêu chí Nổi bật Tốt Bình thường Kém
Thái độ làm việc Chủ động nhận Hoàn thành Hoàn thành Không hoàn
và hoàn thành nhiệm vụ được nhiệm vụ sau khi thành nhiệm vụ
tốt nhệm vụ giao được nhắc nhở được giao
Quản lý thời gian Hoàn thành Hoàn thành Hoàn thành Không hoàn
nhiệm vụ trước nhiệm vụ đúng nhiệm vụ trễ thành nhiệm vụ
hạn hoặc đúng hạn hoặc trễ không quá 24h hoặc trễ quá 24h
hạn theo lịch không quá 12h theo lịch phân theo lịch phân
phân công theo lịch phân công công
công-
Giải quyết vấn Chủ động tìm Tìm kiếm giải Không tìm được Không tham gia
đề được giao kiếm giải pháp pháp vấn đề theo giải pháp nhưng giải quyết vấn đề
giải quyết vấn đề phân công có tìm kiếm và
góp ý kiến
Đóng góp ý kiến Chủ động đưa ra Chỉ nêu ý kiến Chỉ đưa ý kiến Không tham gia
ý kiến, ý tưởng liên quan phần khi được hỏi góp ý cho nhóm
việc cá nhân
Giữ liên lạc Chủ động liên lạc Luôn giữ liên lạc Thỉnh thoảng Không liên lạc
với các thành với nhóm mất liên lạc với được
viên trong nhóm nhóm trong 24h

2.3.3 Kết quả đánh giá thành viên


Tiêu chí
Thái độ Quản lý Giải quyết Đóng Giữ liên Đánh giá
Thành
làm việc thời vấn đề góp ý lạc chung (*)
viên gian được giao kến
Hoàng Phúc Nổi bật Tốt Nổi bật Nổi bật Nổi bật Nổi bật
Kim Sa Nổi bật Nổi bật Tốt Nổi bật Nổi bật Nổi bật
Xuân Ảnh Nổi bật Tốt Nổi bật Nổi bật Tốt Nổi bật
Tấn Phát Tốt Tốt Bình Thường Tốt Bình Tốt
Thường
Bảo Lâm Tốt Tốt Tốt Tốt Bình Tốt
Thường
(*) Kết quả đánh giá dựa trên ý kiến các thành viên theo nguyên tắc đồng thuận đa số như đã cam kết trong
hợp đồng.

2.3.4 Xác nhận của các thành viên


-Các thành viên đồng ý với bản đánh giá hợp đồng nhóm và ký xác nhận ngày 21-8-2023

Nguyễn Nữ Kim Sa Trần Hoàng Phúc Võ Tấn Phát


(đã ký) (đã ký) (đã ký)
Kiều Xuân Ảnh Lê Nguyễn Hoàng Bảo Lâm
(đã ký) (đã ký)

9
Chương 3

KẾT LUẬN

3.1 THUẬN LỢI


ˆ Tất cả các thành viên luôn cầu thị, cố gắn, chia sẻ kiến thức, tích cực học hỏi.

ˆ Luôn luôn cố gắn hoàn thành thời hạn đề ra.

ˆ Hoàn thành công việc đúng chỉ tiêu.

ˆ Đoàn kết, mọi thành viên đều được đóng góp ý kiến và được lắng nghe.

3.2 KHÓ KHĂN


ˆ Tiếp cận nhiều kiến thức mới, những công cụ mới nên các thành viên còn nhiều bỡ ngỡ.

ˆ Các thành viên đều vừa đi học, vừa đi làm, nên thời gian còn hạn chế và khó thống nhất thời gian với
nhau.

3.3 TỔNG KẾT


ˆ Đồ án hoàn thành tốt đẹp là kết quả của việc hợp tác, cùng nhau tìm tòi, học hỏi, nỗ lực, chia sẻ kiến
thức cùng nhau của các thành viên.
ˆ Hình thức học trực tuyến có ưu điểm cho phép sinh viên linh động giờ giấc học tập, nhưng cũng mang lại
cho chúng em những trở ngại không nhỏ. Ngoài những giờ học tập trên lớp trực tuyến, chúng em không
có nhiều cơ hội giao lưu, trò chuyện, học tập cùng với nhau bên ngoài. Do đó, việc chúng em có cơ hội
được làm việc chung trong môn học này là một niềm vui, một trải nghiệm thú vị. Ngoài những kiến thức
chia sẻ với nhau, những kinh nghiệm rút ra khi cùng nhau làm việc, còn là những sự đồng cảm, giúp đỡ,
cùng vượt qua khó khăn của tất cả các thành viên.
ˆ Cuối cùng, chúng em trân trọng cảm ơn thầy ThS. Nguyễn Văn Toàn đã tận tình giảng dạy, tạo cơ hội
và hướng dẫn nhóm chúng em hoàn thành đồ án này. Trong lần đầu tiên tiếp cận những điều mới mẻ để
hoàn thành đồ án này, chúng em không thể tránh khỏi những thiếu sót. Do đó, những ý kiến góp ý của
thầy là rất quý giá, là hành trang tương lai cho chúng em sau này.

Nhóm PPSAL

10
Chương 4

NỘI DUNG THAM KHẢO

Để hoàn thành đồ án này, ngoài những kiến thức đã được học, những kinh nghiệm được chia sẽ cùng
nhau, nhóm chúng em còn tham khảo một số nguồn khác để bổ sung thông tin và những kiến thức mới. Bao
gồm:
1. Giáo trình Ngôn ngữ lập trình C++ và Cấu trúc dữ liệu - TS.Nguyễn Việt Hương - NXB Giáo dục - 2008.
2. https://cafedev.vn/tu-hoc-c-tim-hieu-ve-file-header-trong-c/

3. https://youtube.com/playlist?list=PLimFJKGsbn1m_z8pjCh5TdjyM5s5NlxU_
4. https://learn.codegym.vn/courses/nhap-mon-git-github-mien-phi/lessons/branching-collaboration

11

You might also like