1. Trang chủ
  2. » Luận Văn - Báo Cáo

Đồ án học phần phát triển ứng dụng web thiết kế và xây dựng website xem phim

39 0 0
Tài liệu đã được kiểm tra trùng lặp

Đ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

Tiêu đề Đồ án học phần phát triển ứng dụng web thiết kế và xây dựng website xem phim
Tác giả Hoàng Đăng Hải, Nguyễn Cảnh Đức
Người hướng dẫn TS. Cao Thanh Sơn
Trường học Trường Đại Học Vinh
Chuyên ngành Kỹ Thuật Phần Mềm
Thể loại Đồ án
Năm xuất bản 2023
Thành phố Nghệ An
Định dạng
Số trang 39
Dung lượng 7,59 MB

Nội dung

Yêu cầu bài toán Bài toán xem phim đặt ra một số yêu cầu quan trọng để đáp ứng nhu cầu và mong đợi của người dùng.. 1.3 Quản lí danh mục phim Cho phép thêm,sửa,xóa các danh 2.1 Trang đăn

Trang 1

TRƯỜNG ĐẠI HỌC VINHVIỆN KỸ THUẬT VÀ CÔNG NGHỆ

ĐỒ ÁN HỌC PHẦN PHÁT TRIỂN ỨNG DỤNG WEB

THIẾT KẾ VÀ XÂY DỰNG WEBSITE

XEM PHIMNHÓM: 11

GVHD: TS Cao Thanh Sơn

Nhóm sinh

viên:

Hoàng Đăng Hải, 215748020110001

Nguyễn Cảnh Đức, 215748020110202

Trang 2

Nghệ An, 12/2023

MỤC LỤC

GIỚI THIỆU ĐỀ TÀI 2

CHƯƠNG 1 GIỚI THIỆU TỔNG QUAN BÀI TOÁN XEM PHIM .3

1.1 Bài toán xem phim 3

1.2 Yêu cầu bài toán 3

1.3 Một số website phim liên quan 5

CHƯƠNG 2 PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG XEM PHIM 9

2.1 Phân tích hệ thống xem phim 9

2.2 Thiết kế hệ thống xem phim 20

CHƯƠNG 3 ỨNG DỤNG ASP.NET CORE MVC XÂY DỰNG WEBSITE XEM PHIM 24

3.1 Tổng quan về ASP.NET CORE MVC 24

3.2 Công cụ và công nghệ sử dụng 27

3.3 Xây dựng giao diện người dùng 29

3.4 Xây dựng giao diện quản trị viên 33

KẾT LUẬN 35

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

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

TÀI LIỆU THAM KHẢO 36

Trang 3

GIỚI THIỆU ĐỀ TÀIXem phim trực tuyến đã trở thành một phần không thể thiếu

trong cuộc sống hiện đại Với một cú click chuột, chúng ta mở ra một

thế giới phim ảnh đa dạng từ hành động kịch tính đến những câu

chuyện lãng mạn đầy cảm xúc Đây không chỉ là giải trí mà còn là

cách thư giãn, giảm căng thẳng và tận hưởng những câu chuyện

tuyệt vời

Thực tế, không phải lúc nào chúng ta cũng có thời gian hoặc cơ

hội để đến rạp chiếu phim Thay vào đó, các ứng dụng web xem

phim trực tuyến đang trở thành sự lựa chọn phổ biến Đây là nơi

chúng ta có thể dễ dàng tìm kiếm và xem phim yêu thích, bất kể ở

đâu và khi nào

Đó là lý do tại sao dự án xây dựng một website xem phim trở

nên quan trọng Nó không chỉ là một dự án áp dụng công nghệ

thông tin, mà còn là cách mang lại trải nghiệm xem phim tốt nhất

cho người dùng Đặc biệt, mục tiêu không sử dụng quảng cáo và

giảm gián đoạn là điều rất quan trọng Điều này đảm bảo người

dùng có thể thưởng thức phim mình yêu thích mà không bị làm

phiền bởi những quảng cáo gây gián đoạn

Đề Tài "Xây dựng Website Xem Phim" không chỉ là một dự án

đào tạo, mà còn là một cam kết thúc đẩy công nghệ và giúp người

dùng thư giãn sau những giờ học và làm việc căng thẳng Rất vui

được chia sẻ với người dùng những tính năng và trải nghiệm tuyệt

vời mà dự án này mang lại

Trang 4

CHƯƠNG 1 GIỚI THIỆU TỔNG QUAN BÀI TOÁN XEM PHIM1.1 Bài toán xem phim

Trong thời đại số hóa và phát triển công nghệ, xem phim đã

trở thành một hoạt động giải trí phổ biến và phổ quát trong

cuộc sống hàng ngày của con người Bài toán xem phim đặt ra

những thách thức và yêu cầu cần được đáp ứng để mang lại trải

nghiệm tốt nhất cho người dùng Bài toán xem phim không chỉ

đơn giản là việc chọn một bộ phim và xem nó trên màn hình

1.2 Yêu cầu bài toán

Bài toán xem phim đặt ra một số yêu cầu quan trọng để đáp

ứng nhu cầu và mong đợi của người dùng Dưới đây là các yêu cầu

chính của bài toán xem phim:

- Đa dạng nội dung: Người dùng mong muốn có sự đa dạngtrong lựa chọn nội dung phim Điều này bao gồm các thể loại phim

khác nhau như hành động, tình cảm, viễn tưởng, hài hước, kinh dị,

v.v Yêu cầu này đảm bảo rằng người dùng có nhiều sự lựa chọn và

có thể tìm thấy phim phù hợp với sở thích của mình

- Chất lượng hình ảnh và âm thanh: Một yêu cầu quan trọng

khác là chất lượng hình ảnh và âm thanh của phim Người dùng

mong muốn có trải nghiệm xem phim với hình ảnh rõ nét, màu sắc

sống động và âm thanh chất lượng cao Điều này đòi hỏi sự hỗ trợ

của thiết bị phát phim và mạng Internet để đảm bảo truyền tải nội

dung phim một cách mượt mà và chất lượng

- Sự tiện lợi và linh hoạt: Người dùng muốn có sự tiện lợi và linhhoạt trong việc truy cập và xem phim Họ mong muốn có nhiều

phương thức truy cập như xem phim trực tiếp, tải về, thuê hoặc mua

phim Đồng thời, người dùng cũng muốn có khả năng xem phim trên

Trang 5

nhiều thiết bị và nền tảng khác nhau như máy tính, điện thoại di

động, TV thông minh, v.v

- Sự tương tác và phản hồi: Người dùng mong muốn có khả năng

tương tác với nội dung phim và nhận phản hồi từ nền tảng xem

phim Điều này có thể bao gồm khả năng đánh giá phim, viết bình

luận, chia sẻ ý kiến và khám phá nội dung liên quan khác như trailer,

phỏng vấn diễn viên, v.v Người dùng muốn có cơ hội tham gia vào

cộng đồng xem phim và chia sẻ trải nghiệm của mình

1.1.1 Yêu cầu chức năng

I HỆ THỐNG QUẢN TRỊ

1.1 Trang đăng nhập Đăng nhập vào hệ thống quản trị

1.2 Quản lí phim Cho phép thêm, sửa, xóa danh

sách trên website người dùng

1.3 Quản lí danh mục phim Cho phép thêm,sửa,xóa các danh

2.1 Trang đăng nhập Cho phép người dùng đăng

nhập vào hệ thống website

Trang 6

2.4 Yêu thích phim Cho phép người dùng yêu thích

phim2.5 Đánh giá phim Cho phép người dùng đánh giá

phim

1.1.2 Yêu cầu phi chức năng

Cấu trúc rõ ràng, giao diện đơn giản, dễ nhìn, dễ sử dụng

Hiển thị tốt trên các thiết bị cuối như: PC, Laptop, Tablet,Mobile…

Thời gian thực hiện các chức năng nhanh; hạn chế các thôngtin không cần thiết; hạn chế lạm dụng hiệu ứng, hình ảnh

Thư viện phim đa dạng: Cung cấp một bộ sưu tập phim đadạng với nhiều thể loại và nguồn nội dung

Chất lượng hình ảnh và âm thanh cao cấp: Hỗ trợ phát phimvới chất lượng hình ảnh cao (HD, 4K) và âm thanh vòm để cải thiện

trải nghiệm xem phim

1.3 Một số website phim liên quan

Dưới đây là một số các website xem phim phổ biến

1.3.1 Trang web hhtq.net

Địa chỉ website: hhtq.net

Các chức năng chính của website:

Trang 7

thiệu những tin tức nổi bật qua các hình ành, tiếp đến là giới thiệu

các mặt hàng cùng với giá của sản phẩm rất tiện cho người dùng có

thể tham khảo Giao diện chính được thể hiện trong Hình 1.1, Hình

1.2,Hình 1.3

Hình 1.1 Giao diện chính của web hhtq.net

Trang 8

Hình 1.2 Giao diện danh mục phim hoạt hình 3d

Hình 1.3 Giao diện thông tin phim

1.3.2 Trang web tvhay2.net

Địa chỉ website: tvhay2.net

Các chức năng chính của website:

Xem danh Phim: Xem danh sách phim theo chủ đề, khi clickvào danh mục bất kì website sẽ hiển thị các bộ phim thuộc danh

mục đó

Xem chi tiết phim: Xem chi tiết bộ phim bao gồm các thông

Trang 9

tin: tên đạo diễn,ngày phát hành,tên diễn viên,

Giao diện chính của trang web được thiết kế theo phong cáchlanding page, ngoài phần menu chính, tiếp theo là thanh trượt giới

thiệu những tin tức nổi bật qua các hình ành, tiếp đến là giới thiệu

các mặt hàng cùng với giá của sản phẩm rất tiện cho người dùng có

thể tham khảo

Hình 1.4 Giao diện trang chính của web

Hình 1.5 Giao diện danh mục phim chiếu rạp

Trang 10

Hình 1.6 Giao diện chi tiết phimCHƯƠNG 2 PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG XEM

PHIM2.1 Phân tích hệ thống xem phim

Hệ thống có 2 đối tượng sử dụng bao gồm: người dùng và quản

trị viên

Người dùng là những người thông qua website Có thể đăng ký tài

khoản thành viên, đăng nhập vào hệ thống để xem phim, nêu có nhu

cầu xem các bộ phim người dùng chỉ cần nhấn vào bộ phim đó là có

thể xem được Cùng với đó người dùng có thể bình luận các bài viết

trên trang, cũng như là trả lời các bình luận của những thành viên

khác

Quản trị viên là người quản trị các thông tin của website baogồm: Quản lý menu website và các hình ảnh, slide trên website

Ngoài ra quản trị viên cũng quản lý các loại mặt hàng, sản phẩm

trên website, quản lý người dùng, cho phép khóa các tài khoản người

dùng.Thống kê báo cáo các thông tin liên quan đến cửa hàng như:

Thống kê doanh thu,lượt xem,lượt đánh giá bộ phim

Trang 11

Biểu đồ ca sử dụng của hệ thống được mô tả như Hình 2.1 với

2 tác nhân: Khách hàng và Quản trị viên

Trang 12

3) Hệ thống kiểm tra thông tin và ghi thông tin tàikhoản vào cơ sở dữ liệu đồng thời thông báocho người dùng biết đã đăng ký thành công vàchuyển tới trang đăng nhập

Các bước bổ

sung

Trong bước 2, nếu số điện thoại hoặc mật khẩu bị trống thì hệ thống sẽ thông báo và yêu cầunhập dữ liệu

Các ngoại lệ Nếu số điện thoại hoặc email đã tồn tại trong

cơ sở dữ liệu thì dữ liệu sẽ không được ghi vào cơ

sở dữ liệu và thông báo cho người dùng biết

Trang 13

Trong bước 2, nếu số điện thoại hoặc mật khẩu

bị trống thì hệ thống sẽ thông báo và yêu cầu nhập

dữ liệu

Các ngoại lệ Nếu thông tin đăng nhập không chính xác hoặc

tài khoản có vấn đề thì hệ thống sẽ thông báo cho người dùng biết

Tham chiếu Không

2.1.1.3 Danh sách phim

Mục đích Người dùng có thể xem danh sách các bộ phim

với thông tin tóm tắt như tiêu đề, thể loại, quốc gia,

Trang 14

Các ngoại lệ Không

Tham chiếu Không

2.1.1.4 Phim theo thể loại

Mục đích Cho phép người dùng lọc danh sách phim theo thể loại

mong muốn, giúp họ tìm kiếm phim dễ dàng hơn

Trang 15

Tham chiếu Không

2.1.1.5 Tìm kiếm phim

Mục đích Người dùng có thể tìm kiếm phim dựa trên tên phim, đạo

diễn hoặc diễn viên

Trang 16

Mục đích Người dùng có thể đánh dấu các bộ phim mình thích và

thêm chúng vào danh sách phim yêu thích

Trang 17

Tham chiếu Không

2.1.1.8 Chức năng phim yêu thích

Mục đích Cho phép người dùng tạo và quản lý danh sách các bộ phim

Trang 18

Tham chiếu Không

2.2.2 Các chức năng dành cho quản trị

Trang 19

diện trang chủ

Các bước bổ

sung

Trong bước 2, nếu số điện thoại hoặc mật khẩu

bị trống thì hệ thống sẽ thông báo và yêu cầu nhập

dữ liệu

Các ngoại lệ

Nếu thông tin đăng nhập không chính xác hoặctài khoản có vấn đề thì hệ thống sẽ thông báo chongười dùng biết

Tham chiếu Không

Trang 20

3) Hệ thống kiểm tra các yêu cầu và trả ra kếtquả cho người dùng hoặc cập nhật kết quả vào

cơ sở dữ liệu

Các bước bổ Khi thêm phim mới, nếu dữ liệu bị trống hoặc

sai định dạng thì yêu cầu nhập lại dữ liệu

Trang 21

sung

Các ngoại lệ

Không

Tham chiếu Không

2.1.1.4 Thống kê, báo cáo

Mục đích Xem thống kê, báo cáo về số lượt xem phim

Các ngoại lệ Không

Tham chiếu Không

Trang 22

2.2 Thiết kế hệ thống xem phim

2.2.1 Thiết kế cơ sở dữ liệu

Dựa trên các thực thể đã thiết kế, chúng tôi thực hiện các bước

chuẩn hóa 1NF, 2NF và 3NF để có được các bảng dữ liệu sau:

a) Bảng User (Người dùng) dùng lưu trữ thông tin người dùng của hệthống:

định

Ràngbuộc

Ghichú

b) Bảng Genres ( Thể Loại ) lưu trữ thể loại phim

định

Ràngbuộc

Ghichú

1

Mã thể loại GenreId

2 Tên thể loại GenreName NVARCHAR(30) Not null

c) Bảng Movie ( Phim ) dùng để lưu các bộ phim:

Trang 23

định

Ràngbuộc

Ghichú

d) Bảng FavoriteMovie ( Các bộ phim yêu thích) dùng để lưu

thông tin các bộ phim yêu thích

Trang 24

định

Ràngbuộc

Ghichú

thích phim

FavoriteMoviesId

2 Tên người

dùng

e) Bảng Movieviews (Lượt xem phim) dùng để lưu thông tin lượt

xem

định

Ràngbuộc

Ghichú

Trang 25

định

Ràngbuộc

Ghichú

Ghichú

2.2.2 Mô hình cơ sở dữ liệu quan hệ

Trang 26

Mô hình MVC là một kiến trúc thiết kế của một phần mềm công

nghê thông tin, trong đó có cả PHP Khi một phần mềm sử dụng mô

hình này thì nó sẽ phải chia ra thành ba phần chính

Model-View-Controller (MVC) với 3 nhiệm vụ khác nhau:

Model: là thành phần chứa tất cả các phương thức xử lý, truyxuất database, đối tượng mô tả dữ liệu như các Class, hàm xử lý…

View: Là phần đảm nhận việc hiển thị thông tin, tương tác vớingười dùng Hoặc chúng ta có thể hiểu nôm na đó là phần giao diện

Trang 27

của ứng dụng

Controller: Controller là phần xử lý và điều hướng các hànhđộng của client, từ đó đưa ra các xử lý với database nếu có Hay nói

các khác thì controller là cầu nối giữa view và Model

Hình 3.1 Mối liên hệ mô hình MVC

3.1.2 ASP NET Core MVC là gì ?

ASP.NET Core MVC là một framework “nhẹ”, opensource, giúptối ưu hóa hiệu năng của ứng dụng với ASP.NET Core

ASP.NET Core MVC cung cấp các tính năng dựa trên mô hìnhxây dựng website động cho phép phân chia rõ ràng các khối lệnh

Nó cung cấp cho bạn toàn quyền kiểm soát đánh dấu, hỗ trợ phát

triển với TDD-friendly và sử dụng các tiêu chuẩn web mới nhất

Tính năng của ASP.NET Core MVC bao gồm:

Routing: Routing sẽ xác định URL và điều khiển thông tintương ứng với URL mà người dùng web nhập vào Tất cả các cấu hìnhRouting của một ứng dụng ASP.NET MVC được lưu trữ trongRouteTable, nó đóng vai trò định tuyến các URL để xác định các lớp

xử lý tương ứng khi có request được gửi đến từ người dùng web

Model binding: Trong ASP.NET Core MVC Model binding chuyểnđổi dữ liệu yêu cầu từ phía client (form values, route data, query string

Trang 28

parameters, HTTP headers) vào bên trong đối tượng để controller cóthể xử lí Kết quả là Controller của bạn không phải thực hiện công

việc tìm ra dữ liệu từ đâu đến Nó chỉ đơn giản là kiểm tra dữ liệu và

tham số từ phương thức action

Model validation: ASP.NET Core MVC hỗ trợ ràng buộc dữliệu cho các thuộc tính trong model của bạn, các thuộc tính sẽ được

kiểm tra ở client xem có hợp lệ không trước khi giá trị của thuộc tính

đó được gửi về server Cũng như trên server trước khi action của

controller gọi

Dependency injection: Trong ASP.NET Core MVC controller

có thể gửi yêu cầu cần thiết đến các service thông cấu trúc xây

dựng của chúng

Filters: Filters giúp các lập trình viên đóng gói “cross-cutting

concerns” giống như là xử lý ngoại lệ và phân quyền Filter được

kích hoạt để chạy trước và sau các action của controller Ví dụ về

phân quyền [Authorize] được đặt trước action

Areas: Khi một website ASP.NET MVC trở nên quá lớn quá vàphức tạp,số Controller chắc chắn sẽ tăng lên, với nhiều controller

như vậy bạn sẽ thấy chúng có thể thuộc về một nhóm như phần

Administrator, phần sản phẩm, phần nhóm sản phẩm… Areas cho

phép bạn chia các Controllers,models và views tới các vị trí khác

nhau trong solution với cùng một thư mục độc lập

Web APIs: Ngoài việc là một nền tảng tuyệt vời để xâydựng các trang web ASP.NET Core MVC hỗ trợ rất nhiều cho việc xâydựng API Web Bạn có thể xây dựng các dịch vụ tiếp cận nhiều kháchhàng bao gồm trình duyệt web và thiết bị di động

Testability: Việc xây dựng các framework’s sử dụng các

interface và DI làm cho việc kiểm tra ứng dụng trở nên dễ dàng hơn

và framework’s bao gồm các tính năng (like a TestHost and

InMemory provider for Entity Framework) chúng giúp ích cho lập

trình viên rất nhiều

Trang 29

Razor view engine: ASP.NET Core MVC views sử dụng Razor

view engine để render các code html đến view.Razor được sử dụng để

tự động tạo nội dung web trên máy chủ

Tag Helpers: Tag Helpers cho phép mã phía máy chủ tham

gia vào việc tạo và hiển thị các phần tử HTML trong các tệp razor

View Components: View Component là cơ chế tái sử dụng

trong Razor Pages hướng tới xây dựng các thành phần tương đối độc

lập, phức tạp với các logic xử lý dữ liệu riêng

3.1.3 Ưu điểm của ASP NET Core

ASP.NET Core có một số thay đổi kiến trúc dẫn đến modular

framework nhỏ

ASP.NET Core không còn dựa trên System.Web.dll Nó dựa

trên một tập hợp nhiều yếu tố của Nuget packages

Điều này cho phép bạn tối ưu ứng dụng của mình chỉ

cần những NuGet packages cần thiết

Lợi ích của diện tích bề mặt ứng dụng nhỏ hơn thì bảo mật

chặt chẽ hơn, giảm dịch vụ, cải thiện hiệu suất và giảm chi phí

3.2 Công cụ và công nghệ sử dụng

3.2.1 Phần mềm Visual Studio Code

Visual Studio Code chính là ứng dụng cho phép biên tập, soạn thảo các đoạncode để hỗ trợ trong quá trình thực hiện xây dựng, viết mã nguồn một cách nhanhchóng Visual Studio Code hỗ trợ đa dạng các chức năng kiểm tra lỗi, đi kèm với Git.Đặc biệt là tự hoàn thành mã thông minh và khả năng cải tiến mã nguồn

Ưu điểm của Visual Studio Code:

- Miễn phí và mã nguồn mở: Visual Studio Code là một công cụ mã nguồn mở

và hoàn toàn miễn phí, nó mang lại sự tiện lợi về chi phí cho các nhà phát triển

- Hỗ trợ đa ngôn ngữ: Visual Studio Code hỗ trợ nhiều ngôn ngữ lập trình, giúpngười dùng dễ dàng chuyển đổi giữa các dự án và các ngôn ngữ lập trình khác nhau -

Ngày đăng: 07/02/2025, 10:39