Database có phải là quan trọng nhất trong hệ thống? (1)

Chào các bạn, với nhiều anh em lập trình viên có lẽ code là một cái gì đó cao siêu và thể hiện được trình độ của lập trình viên.

Nhưng liệu những dòng code có phải là quan trọng nhất trong một hệ thống hay không? Bạn đã từng đặt ra những câu hỏi kiểu như vậy chưa?

Vậy thì để mình trả lời luôn: Tất nhiên là không rồi ! Ngày nay, một hệ thống hay nói đơn giản là một ứng dụng hoặc một phần mềm không chỉ có code và giao diện.

Mà quan trọng hơn rất nhiều đó là cơ sở dữ liệu (database) của hệ thống đó. Vậy câu hỏi đặt ra là tại sao cơ sở dữ liệu lại quan trọng như vậy?

Vâng, thì trong bài viết này mình sẽ cùng anh em chỉ ra 5 lý do thuyết phục để trả lời cho câu hỏi tại sao bên trên nhé.

#1. Không có database thì rất khó để kiểm thử

Ứng dụng hay phần mềm nào mà chẳng có lỗi và bugs, gần như đó là một tất yếu trong quá trình xây dựng và phát triển phần mềm.

Chính vì vậy, chúng ta phải có khâu kiểm thử phần mềm để hạn chế tối đa các lỗi phát sinh và nâng cao chất lượng phần mềm.

Nhưng sự thật là việc kiểm thử đôi khi lại rất phụ thuộc vào dữ liệu (có thể là dữ liệu test hoặc dữ liệu thật)..

Điều này nghĩa là sao? Mình lấy ví dụ về các ứng dụng quản lý là các ứng dụng có mức độ tương tác với database tương đối cao.

Khi tester thực hiện các thao tác trên giao diện họ phải vào database để kiểm tra xem dữ liệu có được cập nhật hay thêm đúng hay không.

Thậm chí trong nhiều trường hợp (case) họ phải có được data chính xác mới kiểm tra được chức năng chạy đúng hay không.

Nói chung là bộ phận kiểm thử (tester) là những người phải nắm được cấu trúc của database, biết cách lọc, truy xuất dữ liệu từ database.

#2. Giảm mức độ tính toán cho bộ phận khác trong hệ thống

Mình lấy ví dụ về các hệ thống web app thường được chia thành 3 phần đó là:

  • Font-end: Là những gì phục vụ hiển thị cho người dùng cuối (giao diện, hiệu ứng…)
  • Back-end: Có chức năng tương tác với database để lấy dữ liệu, cập nhật dữ liệu, nhận và trả về dữ liệu cho font-end hiển thị.
  • Database: Là bộ phận lưu trữ dữ liệu của hệ thống, cung cấp các chức năng giúp theo tác với dữ liệu.

Vậy tại sao hệ thống database lại giảm mức độ tính toán cho các bộ phận khác? Thì đơn giản đó là các hệ quản trị cơ sở dữ liệu cung cấp các câu query (câu truy vấn), các function (hàm) giúp thao tác với dữ liệu.

Các bộ phận trung gian như hệ thống back-end chỉ cần định nghĩa các câu query, hàm và truyền xuống cho database thực hiện rồi nhận lại kết quả.

Chính vì vậy đôi khi có nhiều thao tác yêu cầu các truy vấn phức tạp thì database đã lo hết rồi. Back-end và font-end chỉ việc lấy dữ liệu đó lên để hiển thị.

Cũng từ đó việc thiết kế một cơ sở dữ liệu tốt và hiệu năng cao sẽ rất có ích cho các bộ phận khác.

Tham khảo khóa học lập trình web 6 tháng, đảm bảo 100% công việc đầu ra!

Nguồn: https://topdev.vn/blog/khong-phai-source-code-database-moi-la-quan-trong-nhat-trong-he-thong/


Hãy tham gia nhóm Học lập trình để thảo luận thêm về các vấn đề cùng quan tâm.

Bài viết liên quan

Leave a Reply

Your email address will not be published.

TÀI LIỆU DEV WORLD
Cẩm nang phát triển bền vững với nghề lập trình!