Giới thiệu về MongoDB

Một phần của tài liệu xây dựng website bán hàng trực tuyến với reactjs (Trang 26 - 30)

CHƯƠNG 2: Cơ sở lý thuyết

2.5 Giới thiệu về MongoDB

MongoDB là một hệ quản trị cơ sở dữ liệu (Database Management System

- DBMS) phi tuyến tính (NoSQL) phổ biến, được phát triển bởi MongoDB, Inc.

Nó được thiết kế để lưu trữ và quản lý dữ liệu trong các tài liệu JSON tương tự với BSON (Binary JSON), cho phép lưu trữ dữ liệu có cấu trúc linh hoạt và mở rộng

dễ dàng. Dưới đây là một số điểm chính về MongoDB:

Cấu trúc dữ liệu linh hoạt: MongoDB không yêu cầu cấu trúc cố định cho dữ

liệu, cho phép bạn lưu trữ các tài liệu với các trường khác nhau trong cùng một bộ sưu tập (collection). Điều này rất hữu ích cho các ứng dụng có dữ liệu thay đổi thường xuyên.

Tài liệu JSON/BSON: Dữ liệu trong MongoDB được biểu diễn dưới dạng các tài

liệu JSON (JavaScript Object Notation) hoặc BSON (Binary JSON), là một phiên bản nhị phân của JSON. Điều này giúp MongoDB hiệu quả hơn trong việc lưu trữ

và truy xuất dữ liệu so với các hệ quản trị cơ sở dữ liệu SQL truyền thống.

Copies for internal use only in Phenikaa University

Mã nguồn mở và cộng đồng mạnh mẽ: MongoDB là một dự án mã nguồn mở

với một cộng đồng lớn của các nhà phát triển và người dùng. Điều này đồng nghĩa với việc có sẵn nhiều tài liệu, tài liệu học tập và hỗ trợ từ cộng đồng.

Tích hợp dễ dàng: MongoDB cung cấp các giao diện và thư viện cho nhiều ngôn

ngữ lập trình, bao gồm Python, Node.js, Java, và nhiều ngôn ngữ khác. Điều này giúp phát triển ứng dụng dễ dàng và linh hoạt.

Replication và Sharding: MongoDB hỗ trợ sao chép dữ liệu (replication) và chia

nhỏ dữ liệu (sharding) để tăng tính sẵn sàng và khả năng mở rộng của hệ thống. Điều này rất hữu ích cho các ứng dụng đòi hỏi độ tin cậy và khả năng mở rộng cao.

Query mạnh mẽ: MongoDB hỗ trợ các truy vấn phức tạp và mạnh mẽ, bao gồm

truy vấn theo điều kiện, truy vấn theo mảng, và nhiều tính năng khác để truy xuất

dữ liệu theo cách hiệu quả.

Sử dụng cho nhiều ứng dụng: MongoDB phù hợp cho nhiều loại ứng dụng, bao

gồm các ứng dụng web, ứng dụng di động, phân tích dữ liệu, và nhiều tình huống lưu trữ dữ liệu đa dạng.

Tích hợp bảo mật: MongoDB cung cấp các tính năng bảo mật như xác thực,

quyền hạn truy cập và mã hóa dữ liệu để bảo vệ dữ liệu của bạn.

MongoDB đã trở thành một trong những hệ quản trị cơ sở dữ liệu NoSQL phổ biến nhất trên thị trường, và nó được sử dụng rộng rãi trong nhiều ứng dụng và dự án công nghệ khác nhau.

2.6 MVC

Mô hình MVC (Model-View-Controller) là một kiến trúc phát triển phần mềm phổ biến được sử dụng để tổ chức mã nguồn trong ứng dụng web và các ứng dụng khác. Mô hình này chia ứng dụng thành ba phần chính, mỗi phần có một trách nhiệm cụ thể trong quá trình xây dựng và hoạt động của ứng dụng. Dưới đây

là giới thiệu về ba phần chính của kiến trúc MVC:

Model (M):

Copies for internal use only in Phenikaa University

- Model đại diện cho dữ liệu và quản lý nó. Đây là nơi bạn định nghĩa các cấu trúc dữ liệu, truy cập cơ sở dữ liệu, xử lý logic kinh doanh và cung cấp dữ liệu cho các phần khác của ứng dụng.

- Model không biết gì về cách dữ liệu được hiển thị hoặc được tương tác với người dùng. Nó hoàn toàn độc lập với giao diện người dùng và quyết định cách

dữ liệu nên được lưu trữ và truy xuất.

View (V):

- View là phần của ứng dụng hiển thị dữ liệu cho người dùng. Nó đảm nhận vai trò biểu diễn dữ liệu từ Model và hiển thị nó dưới dạng giao diện người dùng. Các thành phần giao diện, chẳng hạn như trang web, biểu đồ, hoặc các thành phần khác, thuộc về phần này.

- View không chứa logic kinh doanh hoặc dữ liệu thay đổi. Nó chỉ biết cách hiển thị dữ liệu mà Model cung cấp.

Controller (C):

- Controller là trung tâm điều khiển của ứng dụng. Nhiệm vụ của nó là xử lý các yêu cầu từ người dùng và tương tác với Model và View tương ứng. Controller

là nơi thực hiện logic ứng dụng và quyết định cách dữ liệu nên được hiển thị.

- Controller nhận các sự kiện từ View, thực hiện các hành động tương ứng, sau

đó cập nhật Model hoặc View (hoặc cả hai) dựa trên kết quả của các hành động

đó.

Mô hình MVC có nhiều ưu điểm, bao gồm:

- Phân chia trách nhiệm rõ ràng: Nó giúp phân chia trách nhiệm giữa các phần của ứng dụng, làm cho mã nguồn dễ dàng bảo trì và mở rộng.

- Tái sử dụng mã nguồn: Bạn có thể tái sử dụng Model và View trong nhiều phần của ứng dụng hoặc trong các ứng dụng khác.

- Độc lập với giao diện người dùng: Model và Controller không phụ thuộc vào giao diện người dùng cụ thể, cho phép bạn thay đổi giao diện mà không ảnh hưởng đến logic ứng dụng.

- Mô hình MVC đã trở thành một tiêu chuẩn trong phát triển phần mềm và được sử dụng rộng rãi trong các ứng dụng web, ứng dụng di động và nhiều lĩnh vực khác. Tuy nhiên, có nhiều biến thể khác của kiến trúc này như

Copies for internal use only in Phenikaa University

MVVM (Model-View-ViewModel) và MVP (Model-View-Presenter) được

sử dụng trong các ngữ cảnh cụ thể.

Copies for internal use only in Phenikaa University

Một phần của tài liệu xây dựng website bán hàng trực tuyến với reactjs (Trang 26 - 30)

Tải bản đầy đủ (PDF)

(56 trang)