1. Trang chủ
  2. » Thể loại khác

ĐẠI HỌC ĐÀ NẴNG KHOA CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG ĐỒ ÁN CƠ SỞ ĐỀ TÀI XÂY DỰNG ỨNG DỤNG MẠNG XÃ HỘI

37 41 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 37
Dung lượng 14,86 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Chương 1 GIỚI THIỆU1.1 - Tên dự án Ứng dụng mạng xã hội trên Android 1.2 - Sinh viên thực hiện  Phan Thanh Tùng - MSV: 18IT115 1.3 – Đặt vấn đề Cùng với sự phát triển của Internet thì

Trang 1

KHOA CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG

Giảng Viên Hướng Dẫn: TS Nguyễn Đức Hiển

Sinh Viên Thực Hiện: Phan Thanh Tùng 18IT2

Trang 2

LỜI MỞ ĐẦU

Ngày nay, ứng dụng công nghệ thông tin và việc mọi người kết nối với nhau đểtương tác, trao đổi thông tin, là một trong những nhu cầu thiết yếu giúp mọingười dễ dàng kết nối với nhau, từ đó giúp mọi người có thể xích lại gần nhauhơn Mạng Internet là một trong những sản phẩm có giá trị hết sức lớn lao vàngày càng trở nên một công cụ không thể thiếu, là nền tảng chính cho sự truyềntải, trao đổi thông tin trên toàn cầu

Với mong muốn tạo ra một “Mạng xã hôi” để đáp ứng nhu cầu nêu trên, chúng

em đã tìm hiểu và thiết kế “Mạng xã hội ZBIO” dành cho người dùng Việt Namchúng ta Với sự hướng dẫn tận tình của thầy Nguyễn Đức Hiển, người đã cónhững đóng góp ý kiến để em có thể hoàn thành đồ án này Mặc dù đã tìm hiểu kĩ

và phân tích thiết kế nhưng khó tránh khỏi những thiếu sót không mong muốn.Chúng em kính mong nhận được sự thông cảm và góp ý của các quý thầy cô

Em xin kính chúc quý thầy cô dồi dào sức khỏe, tiếp tục đào tạo ra những thế hệtrẻ, nguồn nhân lực chất lượng tốt cho đất nước Em xin chân thành cảm ơn!

Trang 3

NHẬN XÉT CỦA GVHD

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

Đà Nẵng, tháng 8 , năm 2020

CHỮ KÍ GVHD

TS NGUYỄN ĐỨC HIỂN

Trang 4

MỤC LỤC

Trang

Chương 1 GIỚI THIỆU 1

1.1 - Tên dự án 1

1.2 - Sinh viên thực hiện 1

1.3 – Đặt vấn đề 1

1.3.1 - Mạng xã hôi là gì? 1

1.3.2 – Những mạng xã hội phổ biến hiện nay 1

1.3.3 Đặc điểm chung các mạng xã hội 3

1.3.4 – Nhu cầu sử dụng mạng xã hội của người Việt 3

1.3.5 Lợi ích của mạng xã hội 4

1.4 - Mục tiêu dự án 4

1.5 - Phương pháp thực hiện: 4

1.6 - Nội dụng thực hiện 4

1.7 - Kế hoạch thực hiện 5

Chương 2 NGHIÊN CỨU VÀ THIẾT KẾ 7

2.1 Framework hổ trợ, ngôn ngữ và công cụ lập trình được sử dụng: 7

2.1.1 Laravel Framework: 7

2.1.2 Android Studio: 7

2.1.3 Visual Studio Code (VS Code hay VSC): 8

2.1.4 XamPP: 8

2.1.5 Java (Android): 8

2.1.6 PHP (Hypertext Preprocessor): 8

2.1.7 Restful API: 9

2.1.8 Postman: 9

2.2 Phân tích thiết kệ hệ thống website: 9

2.2.1 Các actor và phân tích chức năng: 9

2.2.2 Sơ đồ phân tích thiết kế hệ thống: 10

2.2.3 Mô tả các chức năng chính 10

Chương 3 TRIỂN KHAI XÂY DỰNG 12

3.1 Kết quả xây dựng cơ sở dữ liệu: 12

Trang 5

3.1.1 Mô tả cấu trúc một số bảng cơ sở dữ liệu: 12

3.1.2 Cơ sở dữ liệu tổng thể: 14

3.2 Giao diện website 15

3.2.1 Trang đăng nhập 15

3.2.2 Trang đăng ký 15

3.2.3 Trang chủ 16

3.2.4 Trang cá nhân 17

3.2.5 Trang Nổi Bật 18

3.2.6 Trang Thông báo 19

3.2.7 Trang Tìm kiếm 20

3.2.8 Trang lời mời và gợi ý kết bạn 20

3.2.9 Trang quản trị viên (admin) 21

3.3 Giao diện ứng dụng trên Android 24

3.3.1 Màn hình chờ 24

3.3.2 Đăng nhập, đăng ký 25

3.3.3 Trang chủ 26

3.3.4 Giao diện lời mời và gợi ý kết bạn 26

3.3.5 Thông báo 27

3.3.6 Trang cá nhân 28

3.3.7 Tìm kiếm 29

3.3.8 Chi tiết bài viết và chi tiết bình luận 30

3.3.9 Tạo bài viết 31

Chương 4 KẾT LUẬN 32

4.1 Kết quả đạt được 32

4.2 Hướng phát triển 32

Chương 5 TÀI LIỆU THAM KHẢO 33

Trang 6

DANH MỤC HÌNH ẢNH

Trang

Hình 2-1 Sơ đồ Use-case 7

Hình 3-1 Cơ sở dữ liệu 11

Hình 3-3 Giao diện website đăng nhập 12

Hình 3-4 Giao diện website đăng ký 13

Hình 3-5 Giao diện website Trang chủ 13

Hình 3-6 Giao diện website Trang cá nhân -1 15

Hình 3-7 Giao diện website Trang cá nhân -2 15

Hình 3-8 Giao diện website Trang Nổi Bật 16

Hình 3-9 Giao diện website Thông báo 16

Hình 3-10 Giao diện website Tìm kiếm 17

Hình 3-11 Giao diện website Lời mời và gợi ý kết bạn 18

Hình 3-12 Giao diện đăng nhập admin 18

Hình 3-13 Giao diện website Trang quản trị viên -1 19

Hình 3-14 Giao diện website Trang quản trị viên -2 20

Hình 3-15 Giao diện website Trang quản trị viên -3 20

Hình 3-16 Giao diện ứng dụng: Màn hình chờ 21

Hình 3-17 Giao diện ứng dụng: Đăng nhập / Đăng ký 22

Hình 3-18 Giao diện ứng dụng: Trang chủ 23

Hình 3-19 Giao diện ứng dụng: Lời mời và gợi ý kết bạn 24

Hình 3-20 Giao diện ứng dụng: Thông báo 24

Hình 3-21 Giao diện ứng dụng: Trang cá nhân 25

Hình 3-22 Giao diện ứng dung: Tìm kiếm 26

Hình 3-23 Giao diện ứng dụng: Chi tiết bài viết và chi tiết bình luận 27

Hình 3-24 Giao diện ứng dụng: Tạo bài viết 28

Trang 7

DANH MỤC CÁC BẢNG

TrangBảng 3-1 Cấu trúc bảng – User 11Bảng 3-2 Cấu trúc bảng - Relationship 12Bảng 3-3 Cấu trúc bảng – Posts 12

Trang 8

Chương 1 GIỚI THIỆU

1.1 - Tên dự án

Ứng dụng mạng xã hội trên Android

1.2 - Sinh viên thực hiện

 Phan Thanh Tùng - MSV: 18IT115

1.3 – Đặt vấn đề

Cùng với sự phát triển của Internet thì mạng xã hội cũng phát triển không ngừng vàđang ngày càng lớn mạnh với số lượng người dùng lên tới hàng chục triệu, trăm triệu hayhàng tỷ Có thể kể đến một số mạng xã hội phổ biến hiện nay như: Facebook, Instagram,Youtube, Twitter, TikTok,… Mạng xã hội cho phép người dùng giao lưu và chia sẻ thôngtin một cách có hiệu quả, vượt ra ngoài những giới hạn về địa lý và thời gian

Ở Việt Nam đã có rất nhiều mạng xã hội được ra đời, nhưng rất ít trong số đó tồn tạiđược quá lâu Zalo.vn có lẽ là mạng xã hội thành công nhất của Việt Nam từ trước đếnnay, hiện đã thu hút được hơn 100 triệu tài khoản người dùng tại Việt Nam Điểm mạnhcủa Zalo là sự riêng tư, theo mặc định nội dung phần bình luận của người khác chỉ hiển thịcho người xem nếu họ đã kết bạn với nhau

Theo số liệu thống kê Internet Việt Nam đầu năm 2020, có tới 65 triệu người dùngmạng xã hội trên thiết bị di động tính đến đầu năm 2019, chiếm tỉ lệ 67% tổng toàn bộ dân

số Việt Nam và cũng theo số liệu thu được, người dùng Việt Nam dùng trung bình 2 giờ

33 phút mỗi ngày để dùng mạng xã hội, cao hơn so với mức trung bình trên thế thới là 2giờ 16 phút Từ số liệu thống kê trên cho thấy nhu cầu sử dụng mạng xã hội của ngườiViệt Nam là rất lớn và đang ngày một tăng lên

1.4 - Mục tiêu dự án

- Xây dựng ứng dụng trên nền tảng android dựa trên nền tảng webstite đã xây dựng

- Back-end restful API (Laravel Framework)

Trang 9

- Kiểm tra, khắc phục lỗi trên website đã xây dựng.

- Phân tích thiết kế hệ thống và cơ sở dữ liệu

- Tìm hiểu và xây dựng web service restful api

- Tìm hiểu các công nghệ sử dụng cho android

- Thiết kế giao diện và chức năng

- Hoàn thiện, kiểm tra và sửa lỗi

- Thực hiện làm báo cáo Word và bản thuyết trình

Trang 10

Tuần thứ bảy

( Từ 22/06-28/06)

- Tiếp tục xây dựng giao diện và phát triển chức năng:

+Danh sách bạn bè online+ Đóng góp ý kiến của người dùng ( trên website và app)+Một số chức năng khác (nếu có)

Tuần thứ tám

( Từ 29/06-05/07)

- Hoàn thiện giao diện và các chức năng

- Kiểm tra và khắc phục các lỗi (nếu có)

Các tuần còn lại

(Từ 06/07 trở đi)

- Thực hiện làm báo cáo Word và bản thuyết trình

Trang 11

Chương 2 NGHIÊN CỨU VÀ THIẾT KẾ

2.1 Framework hổ trợ, ngôn ngữ và công cụ lập trình được

sử dụng:

2.1.1 Laravel Framework:

2.1.1.1 Framework:

Framework là một thư viện các lớp đã được xây dựng hoàn chỉnh, bộ khung để phát

triển các Phần mềm ứng dụng Có thể ví Framework như các “Vật liệu” ở từng lĩnh vực chongười lập trình viên, thay vì họ phải mất nhiều thời gian để tự thiết kế trước khi dùng Dovậy,người lập trình viên chỉ cần tìm hiểu và khai thác các vật liệu này rồi thực hiện để gắnkết chúng lại với nhau, tạo ra sản phẩm

2.1.1.2 Laravel Framework:

Laravel là một PHP Framework mã nguồn mở và miễn phí, được phát triển bởi Taylor

Otwell và nhắm mục tiêu hổ trợ phát triển các ứng dụng dụng web theo cấu trúc view-controller (MVC) Những tính năng nổi bật của laravel bao gồm cú pháp dễ hiểu-rõràng, một hệ thống đóng gói Modular và quản lý gói phụ thuộc, nhiều cách khác nhau đểtruy cập vào các cơ sở dữ liệu quan hệ, nhiều tiện ích khác nhau hỗ trợ việc triển khai vàobảo trì ứng dụng

model-Laravel được phát hành theo giấy phép MIT, với mã nguồn được lưu trữ tại Github

2.1.2 Android Studio:

Android Studio là một phầm mềm bao gồm các bộ công cụ khác nhau dùng để phát

triển ứng dụng chạy trên thiết bị sử dụng hệ điều hành Android như các loại điện thoại

smartphone, các tablet Android Studio được đóng gói với một bộ code editor, debugger,

các công cụ performance tool và một hệ thống build/deploy (trong đó có trình giả lậpsimulator để giả lập môi trường của thiết bị điện thoại hoặc tablet trên máy tính) cho phépcác lập trình viên có thể nhanh chóng phát triển các ứng dụng từ đơn giản tới phức tạp

Trang 12

2.1.3 Visual Studio Code (VS Code hay VSC):

Là một trình biên tập lập trình code miễn phí dành cho Windows, Linux và macOS,

Visual Studio Code được phát triển bởi Microsoft Nó được xem là một sự kết hợp hoàn

hảo giữa IDE và Code Editor

Visual Studio Code hỗ trợ chức năng debug, đi kèm với Git, có syntax highlighting, tự

hoàn thành mã thông minh, snippets, và cải tiến mã nguồn Nhờ tính năng tùy chỉnh, VisualStudio Code cũng cho phép người dùng thay đổi theme, phím tắt, và các tùy chọn khác

2.1.4 XamPP:

Xampp là một mã nguồn mở máy chủ web đa nền được phát triển bởi Apache Friends,

bao gồm chủ yếu là Apache HTTP Server, MariaDB database, và interpreters dành chonhững đối tượng sử dụng ngôn ngữ PHP và Perl Xampp là viết tắt của Cross-Platform (đanền tảng-X), Apache (A), MariaDB (M), PHP (P) và Perl (P) Nó phân bố Apache nhẹ vàđơn giản, khiến các lập trình viên có thể dễ dàng tạo ra máy chủ web local để kiểm tra vàtriển khai trang web của mình Tất cả mọi thứ cần cho phát triển một trang web - Apache(ứng dụng máy chủ), Cơ sở dữ liệu (MariaDB) và ngôn ngữ lập trình (PHP) được gói gọntrong 1 tệp Xampp cũng là 1 đa nền tảng vì nó có thể chạy tốt trên cả Linux, Windows vàMac Hầu hết việc triển khai máy chủ web thực tế đều sử dụng cùng thành phần nhưXAMPP nên rất dễ dàng để chuyển từ máy chủ local sang máy chủ online

2.1.5 Java (Android):

Java là ngôn ngữ chính thức để phát triển Android Đây là ngôn ngữ có sự hỗ trợ nhiều

nhất từ Google Nó cũng là ngôn ngữ mà hầu hết các ứng dụng trên Play Store được xâydựng Nó cũng là ngôn ngữ chính thức của Android Hệ điều hành Android của Google sử

dụng Java như là cơ sở cho tất cả các ứng dụng Android.

2.1.6 PHP (Hypertext Preprocessor):

Thường được viết tắt thành PHP là một ngôn ngữ lập trình kịch bản hay một loại mã

lệnh chủ yếu được dùng để phát triển các ứng dụng viết cho máy chủ, mã nguồn mở, dùngcho mục đích tổng quát Nó rất thích hợp với web và có thể dễ dàng nhúng vào trangHTML Do được tối ưu hóa cho các ứng dụng web, tốc độ nhanh, nhỏ gọn, cú pháp giống C

và Java, dễ học và thời gian xây dựng sản phẩm tương đối ngắn hơn so với các ngôn ngữkhác nên PHP đã nhanh chóng trở thành một ngôn ngữ lập trình web phổ biến nhất thế giới

Trang 13

2.1.7 Restful API:

RESTful API là một tiêu chuẩn dùng trong việc thiết kế API cho các ứng dụng web

(thiết kế Web services) để tiện cho việc quản lý các resource Nó chú trọng vào tài nguyênhệ thống (tệp văn bản, ảnh, âm thanh, video, hoặc dữ liệu động…), bao gồm các trạng tháitài nguyên được định dạng và được truyền tải qua HTTP

2.1.8 Postman:

Postman là một App Extensions, cho phép làm việc với các API, nhất là REST, giúp ích

rất nhiều cho việc kiểm thử Hỗ trợ tất cả các phương thức HTTP (GET, POST, PUT,DELETE, OPTIONS, HEAD ) Postman cho phép lưu lại các lần sử dụng Sử dụng cho cánhân hoặc team lớn

2.2 Phân tích thiết kệ hệ thống website:

2.2.1 Các actor và phân tích chức năng:

Các tác nhân và chức năng:

Administrator(admin):

 Đăng nhập bằng quyền admin

 Quản lý người dùng: khóa, xóa tài khoản người dùng

 Quản lý các bài đăng: khóa, xóa bài viết của người dùng

 Nhận và trả lời phản hồi người dùng

Người sử dụng (Users):

 Đăng nhập, đăng ký tài khoản

 Xem trang cá nhân của mình và người khác

 Chỉnh sửa thông tin cá nhân

 Đăng, chỉnh sửa, xóa bài viết của người dùng

 Xem bảng tin: các bài viết của mọi người

 Thích, bình luận và phản hồi bình luận

Trang 14

 Xem chi tiết bài viết

 Sao chép nội dung hoặc đường dẫn bài viết

 Tìm kiếm: người dùng và các bài viết liên quan

 Xem lời mời, gợi ý kết bạn: trả lời lời mời hoặc thêm bạn bè mới

 Xem thông báo của mình

+ Đăng nhập: Khi có tài khoản thì người dùng có thể đăng nhập và sử dụng ZBIO

- Bảng tin: Hiện thị nội dung chính của ứng dụng bao gồm:

+ Tạo bài viết : Người dùng có thể tạo bài viết mình muốn tại đây

Trang 15

+ Bảng tin: Hiện thị các bài viết của người dùng và bạn bè Tại đây người dùng cóthể like, bình luận các bài viết mình muốn.

- Lời mời và gợi ý kết bạn: Hiện thị danh sách các lời mời và gợi ý kết bạn : Ngườidùng có thể chấp nhận hoặc hủy các yêu cầu kết bạn cũng như gửi lời mời cho nhữnggợi ý kết bạn

- Thông báo: Hiển thị danh sách những thông báo của người dùng: Người dùng có thểbấm vào xem cụ thể từng thông báo của mình

- Tìm kiếm: Người dùng có thể tìm kiếm bạn bè hoặc các bài viết tại đây

- Tin nhắn: Người dùng có thể nhắn tin với bạn bè của mình

- Menu bao gồm:

+ Trang cá nhân: người dùng có thể bấm vào xem trang cá nhân của mình tại đây+ Danh sách bạn bè : Xem danh sách bạn bè online và offline

+ Hỗ trợ người dùng: Người dùng có thể gửi hỗ trợ và ý kiến tại mục này

+ Đăng xuất : Người dùng có thể đăng xuất ứng dụng bằng cách nhấn nút này

Trang 16

Chương 3 TRIỂN KHAI XÂY DỰNG

3.1 Kết quả xây dựng cơ sở dữ liệu:

3.1.1 Mô tả cấu trúc một số bảng cơ sở dữ liệu:

3.1.1.1 Bảng User:

Tên Kiểu Mô tả

username varchar Tên đăng nhập

firstName varchar Tên

lastName varchar Họ

password varchar Mật khẩu

gender varchar Giới tính

phone varchar Điện thoại

img_avt varchar Ảnh đại diện

img_cover varchar Ảnh bìa

fbID bigint ID đăng nhập facebook của người dùng

status int Trạng thái tài khoản: + 0: hoạt động

+ 1: khóaauth int Loại tài khoản: + 0: người dùng

+ 1: admincreated_at datetime Thời gian tạo tài khoản

update_at datetime Thời gian chỉnh sửa tài khoản gần nhất

Bảng 3-1 Cấu trúc bảng – User

3.1.1.2 Bảng quan hệ bạn bè (Relationship):

Tên Kiểu Mô tả

relaID bigint ID relationship

UserID_1 bigint ID người dùng 1

UserID_2 bigint ID người dùng 2

Status int Trạng thái quan hệ:

0: đã gửi lời mời kết bạn1: bạn bè

Trang 17

2: chặnAction_userID bigint ID người dùng gửi hành động cuối

Bảng 3-2 Cấu trúc bảng – Relationship

3.1.1.3 Bảng bài viết (Posts)

Tên Kiểu Mô tả

postID bigint ID bài viết

userID bigint ID người dùng đăng bài viết

post_Content varchar Nội dung bài viết

post_Image varchar Ảnh của bài viết

Trạng thái bài viết:

0: hiển thị1: khóa bởi quản trị viêncreated_at datetime Thời gian tạo tài bài viết

update_at datetime Thời gian chỉnh sửa bài viết

Bảng 3-3 Cấu trúc bảng – Posts

3.1.2 Cơ sở dữ liệu tổng thể:

Trang 19

Hình 3-3 Giao diện website đăng nhập

3.2.2 Trang đăng ký

- Người dùng có thể đăng ký tài khoản mới tại đây Khi đăng ký thành côngngười dùng được chuyển tới trang đăng nhập Nếu đã có tài khoản người dùng

có thể nhấp nút Đăng nhập để chuyển tới trang đăng nhập

Hình 3-4 Giao diện website đăng ký

Trang 20

3.2.3 Trang chủ

Hình 3-5 Giao diện website Trang chủ

- Giao diện trang chủ gồm có:

o Header (trên cùng trang web) bao gồm:

 Logo

 Nút chuyển hướng tới bảng tin

 Nút chuyển hướng tới mục Nổi Bật

 Nút chuyển hướng tới Trang cá nhân

Ngày đăng: 20/04/2021, 22:24

TỪ KHÓA LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w