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

báo cáo bài tập lớn nguyên lý hệ điều hành

25 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 đề Báo Cáo Bài Tập Lớn Nguyên Lý Hệ Điều Hành
Tác giả Lê Ngọc Hiếu, Nguyễn Xuân Quang, Nguyễn Đức Long
Người hướng dẫn TS. Vũ Minh Hoàng
Trường học Trường Đại Học Thăng Long
Chuyên ngành Nguyên Lý Hệ Điều Hành
Thể loại báo cáo
Năm xuất bản 2023
Thành phố Hà Nội
Định dạng
Số trang 25
Dung lượng 5,56 MB

Nội dung

Mô hình Client – ServerTìm hiểu về mô hình Client – Server cài đặt và lập trình một phần mềm quản lý sinh viên và môn học mô phỏng mô hình Client – Server.Phần mềm được lập trình bằng fr

Trang 1

BỘ GIÁO DỤC VÀ ĐÀO TẠO

TRƯỜNG ĐẠI HỌC THĂNG LONG

BÁO CÁO BÀI TẬP LỚN

NGUYÊN LÝ HỆ ĐIỀU HÀNH

Trang 2

Mục lục

PHẦN 1 MÔ TẢ BÀI TOÁN 3

1.1 Mô hình Client – Server 3

1.2 Dịch vụ Cloud Server ( Firebase ) 3

PHẦN 2 CƠ SỞ LÝ THUYẾT 4

2.1 Mô hình Client – Server 4

2.1.1 Client 4

2.1.2 Server 5

2.1.3 Ưu điểm của mô hình Client-Server 5

2.2 Firebase 5

2.2.1 Các tính năng của Firebase 6

2.2.2 Ưu và nhược điểm của việc sử dụng Firebase 7

PHẦN 3 CÀI ĐẶT CHƯƠNG TRÌNH VÀ KẾT QUẢ 8

3.1 Mô hình Client – Server ( ExpressJs, MongoDB) 8

3.1.1 Tổ chức code theo mô hình MVC 8

3.1.2 Cài đặt lập trình phần mềm 9

3.1.3 Mô tả về cách thức hoạt động của phần mềm 12

3.2 Firebase (Java, Firebase) 13

Trang 3

PHẦN 1 MÔ TẢ BÀI TOÁN

1.1 Mô hình Client – Server

Tìm hiểu về mô hình Client – Server cài đặt và lập trình một phần mềm quản lý sinh viên

và môn học mô phỏng mô hình Client – Server

Phần mềm được lập trình bằng framework ExpressJs và sử dụng cơ sở dữ liệuMongoDB

1.2 Dịch vụ Cloud Server ( Firebase )

Tìm hiểu về dịch vụ Cloud Server Firebase cài đặt và lập trình một Android app sử dụngngôn ngữ lập trình Java và cơ sở dữ liệu thời gian thực

Trang 4

PHẦN 2 CƠ SỞ LÝ THUYẾT

2.1 Mô hình Client – Server

Client server là mô hình mạng máy tính gồm có 2 thành phần chính đó là máy khách(client) và máy chủ (server) Server chính là nơi giúp lưu trữ tài nguyên cũng như cài đặtcác chương trình dịch vụ theo đúng như yêu cầu của client Ngược lại, Client bao gồmmáy tính cũng như các loại thiết bị điện tử nói chung sẽ tiến hành gửi yêu cầu đến server

Người dùng nhập URL (Uniform Resource Locator) của trang web hoặc tệp Sau

đó, Trình duyệt sẽ yêu cầu Máy chủ DNS (HỆ THỐNG TÊN MIỀN)

DNS Server tra cứu địa chỉ của WEB Server

Máy chủ DNS phản hồi bằng địa chỉ IP của Máy chủ WEB

Trình duyệt gửi yêu cầu HTTP/HTTPS tới IP của Máy chủ WEB (do máy chủDNS cung cấp )

Máy chủ gửi qua các tập tin cần thiết của trang web

Trình duyệt sau đó hiển thị các tập tin và trang web được hiển thị Việc kết xuấtnày được thực hiện với sự trợ giúp của trình thông dịch DOM (Mô hình đối tượngtài liệu), trình thông dịch CSS và Công cụ JS được gọi chung là Trình biên dịchJIT hoặc (Just in Time)

2.1.1 Client

Client chính là khách hàng sử dụng dịch vụ Nó có thể là một tổ chức hay cá nhân cụ thểnào đó Và khi khái niệm này được sử dụng trong lĩnh vực kỹ thuật số thì cũng mang ý

Trang 5

nghĩa tương tự như vậy Trong Client Server thì Client chính là một máy tính (Host).Chúng có khả năng nhận thông tin từ nhà cung cấp và sử dụng dịch vụ cụ thể (Server).2.1.2 Server

Server là từ dùng để nói về một máy chủ hoặc một phương tiện được sử dụng để phục vụcác dịch vụ nào đó Khi khái niệm này được sử dụng trong lĩnh vực công nghệ thì Server

là một máy tính từ xa Chúng có chức năng là cung cấp các thông tin (dữ liệu) cho mộtdịch vụ cụ thể nào đó hoặc quyền truy cập đối với dịch vụ

2.1.3 Ưu điểm của mô hình Client-Server

Ưu điểm của mô hình Client-Server:

Hệ thống tập trung với tất cả dữ liệu ở một nơi duy nhất

Chi phí hiệu quả đòi hỏi ít chi phí bảo trì hơn và có thể phục hồi dữ liệu.Dung lượng của Máy khách và Máy chủ có thể được thay đổi riêng biệt

Nhược điểm của mô hình Client-Server:

Máy khách dễ bị nhiễm vi-rút, Trojan và sâu nếu có trong Máy chủ hoặc được tảilên Máy chủ

Máy chủ dễ bị tấn công từ chối dịch vụ (DOS)

Các gói dữ liệu có thể bị giả mạo hoặc sửa đổi trong quá trình truyền

Lừa đảo hoặc lấy thông tin đăng nhập hoặc thông tin hữu ích khác của người dùng

là phổ biến và các cuộc tấn công MITM (Người đàn ông ở giữa) là phổ biến

Trang 6

2.2.1 Các tính năng của Firebase

a) Xây dựng các ứng dụng tốt hơn

Các dịch vụ bao gồm trong tính năng này là:

- Cơ sở dữ liệu thời gian thực

- Cloud Firestore

- Xác thực

- Cấu hình từ xa

- Lưu trữ

- Nhắn tin đám mây Firebase (FCM)

b) Cải thiện chất lượng ứng dụng

Trang 7

Gói miễn phí cho người mới bắt đầu.

Cơ sở dữ liệu thời gian thực có sẵn

Trang 8

PHẦN 3 CÀI ĐẶT CHƯƠNG TRÌNH VÀ KẾT QUẢ

3.1 Mô hình Client–Server ( ExpressJs, MongoDB)

3.1.1 Tổ chức code theo mô hình MVC

Controller tiếp nhận kết quả từ model chọn View phù hợp để hiển thị kết quả chongười dùng

Quá trình trên ra một luồng hoạt động mạch lạc giữa các thành phần của mô hìnhMVC, giúp quá trình phát triển và bảo trì ứng dụng dễ dàng hơn

Trang 9

3.1.2 Cài đặt lập trình phần mềm

Bước 1: Cài đặt các thư viện cần thiết

Bước 2: Cấu hình các tuyến đường

Trang 10

Bước 3: Cấu hình Model

Trang 11

Bước 4: Lập trình các chức năng trong Controller để tương tác với model

Trang 12

Từ đó Model tiếp nhận và tương tác với Database

Bước 5: Lập trình giao diện

3.1.3 Mô tả về cách thức hoạt động của phần mềm

Từ phía Client sẽ tương tác với phần mềm qua Browser

Người dùng sẽ tương tác với các URL tương ứng với các chức năng đã được càiđặt trong phầm mềm

Trang 13

Khi người dùng muốn cập nhật hay thêm một đối tượng vào phầm mềm sẽ tươngtác qua một form data và khi submit form sẽ gửi lên server một action và mộtforrm data.

Trang 14

hiệu quả và nhanh chóng thông qua REST API và SDK Firebase Điều này giúp ứngdụng của bạn cung cấp các tính năng như chat thời gian thực, cập nhật trực tiếp và đồng

bộ dữ liệu trên nhiều người dùng

- Cấu trức dữ liệu các bảng trên Realtime Database

- Cách thức, vai trò của từng bảng dữ liệu:

Bảng Bags : Chứa dữ liệu giỏ hàng của từng User gồm các sản phẩm tươngứng trong bảng Products khi được người dùng chọn thêm vào giỏ hàng.Bảng HomePageImageLinks: Chứa các link ảnh quảng bá thương hiệu, giớithiệu sản phẩm

Bảng Products: Chứa dữ liệu từng sản phẩm

Bảng Users: Chứa dữ liệu của mỗi người dùng

3.2.1.2 Storage Storage là dịch vụ lưu trữ đám mây được cung cấp để lưu trữ tệp tin và nội dung

đa phương tiện Với Firebase Storage, bạn có thể lưu trữ hình ảnh, video, âm thanh và cácloại tệp tin khác một cách an toàn và dễ dàng truy cập từ ứng dụng của mình FirebaseStorage cũng cung cấp tính năng quản lý phân quyền truy cập tệp tin, giúp bạn kiểm soátviệc chia sẻ và truy cập dữ liệu một cách linh hoạt

- Cấu trúc dữ liệu trên Storage

- Cách thức, vai trò của từng folder:

Trang 15

Folder HomePageImageLinks: Chứa các ảnh của quảng bá thương hiệu,giới thiệu sản phẩm trong phần mềm.

Folder Products: Chứa các ảnh của từng sản phẩm

- Xác thực tài khoản người dùng bằng email và password:

3.2.2 Cài đặt lập trình phầm mềm:

3.2.2.1 Thêm các thư viện Firebase cần thiết:

Trang 16

- Đăng nhập vào tài khoản người dùng

3.2.2.3 Sử dụng Realtime Database

- Tạo đối tượng người dùng mới

Trang 17

Model hồ sơ người dùng

Trang 18

- Đọc các đối tượng sản phẩm

Model sản phẩm

Trang 20

- Xóa đối tượng sản phẩm khỏi giỏ hàng

- Cập nhập đối tượng sản phẩm trong giỏ hàng

Trang 21

3.2.3 Mô tả cách hoạt động

- Tạo tài khoản người dùng

Giao diện:

Trang 22

Cách thức hoạt động:

Khi người dùng nhập email và mật khẩu vào các ô và click vào “LOGIN” thì trên Firebase Authentication sẽ kiểm tra các tài khoản có tương ứng với email và mật khẩu mà người dùng đã nhập bên trên không Nếu đúng thì sẽ đăng nhập vào tài khoản, và không thì sẽ không cho đăng nhập

- Đọc dữ liệu các sản phẩm

Giao diện:

Trang 23

Cách thức hoạt động

Ứng dụng đọc dữ liệu từ đối tượng cha “Products” trên Realtime Database,đọc từng đối tượng con bên trong , mỗi đối tượng con là 1 đối tượng sảnphẩm và đọc các thuộc tính của mỗi sản phẩm và hiển trị lên trên ứng dụng

- Thêm sản phẩm vào giỏ hàng

Giao diện:

Trang 24

Cách thức hoạt động:

Trang 25

Khi người dùng chọn màu và kích thước sản phẩm và nhấn “Add to Bag”,ứng dụng sẽ truy cập tới giỏ hàng của người dùng và thêm sản phẩm vàogiỏ hàng với các màu sắc, kích thước tương ứng.

- Cập nhập và xóa dữ liệu sản phẩm trong giỏ hàng

Giao diện

Ngày đăng: 03/05/2024, 12:50

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w