Framework là gì? Giải thích dễ hiểu nhất

0
framework là gì

Nếu bạn là người trong lĩnh vực IT chắc hẳn bạn đã từng nghe đến từ khóa “framework” rồi phải không? Liệu bạn có dám chắc hiểu rõ ý nghĩa và cách hoạt động của framework? Hôm nay mình sẽ giải thích sơ qua về ý nghĩa của từ framework trong lập trình để bạn có cái nhìn rõ hơn.

Framework là gì trong lập trình?

Khi đề cập đến phần mềm máy tính, một framework là một nền tảng với mức độ phức tạp cụ thể (dựa trên cấp độ người dùng) mà lập trình viên có thể mở rộng bằng cách sử dụng các đoạn mã của riêng họ. Nó có thể bao gồm một tập các thư viện phần mềm, trình biên dịch, hay một API. Nói chung, nó cung cấp cho chúng ta một môi trường, tạo điều kiện thuận lợi cho một loại lập trình cụ thể cho một dự án phát triển phần mềm.

Thông thường, các chương trình máy tính định nghĩa luồng điều khiển của chương trình và thực hiện các cuộc gọi tới thư viện để phục vụ cho các tính năng riêng mà chương trình đó có. Tuy nhiên, khi sử dụng framework, mối quan hệ này bị đảo ngược: framework sẽ quản lý toàn bộ luồng điều khiển và tạo ra các cuộc gọi tới code của lập trình viên khi cần thiết. Một framework cho phép các nhà phát triển tập trung vào các đặc tính, chi tiết cụ thể cho dự án và bỏ qua các yêu cầu gọi là quá chung chung.

Ví dụ các framework phần mềm như: AJAX APIs, ASP MVC, Django là các Framework sử dụng khá phổ biến trong lập trình website hiện nay.

Ví dụ lợi ích khi sử dụng framework

Chắc bạn cũng đã từng nghe nói tới ngôn ngữ lập trình python rồi phải không, đây là một ngôn ngữ lập trình thông dụng và được sử dụng khá nhiều hiện nay. Bây giờ mình muốn viết một trang web sử dụng python, tạo ra một web server mình sẽ dùng wsgi làm web server và viết thêm các function để xử lý cho từng loại truy vấn từ người dùng. Và với mỗi truy vấn đó sẽ có rất nhiều thứ phức tạp bên trong mình phải xử lý thêm để client và webserver tương tác tốt hơn.

Khi mình muốn tạo phần giao diện admin, mình sẽ phải làm rất nhiều thứ khác nhau như phân quyền, tạo các group tài khoản, tạo thuật toán mã hóa password,…. Và bạn có nghĩ rằng, đối với bất kỳ website nào cũng có phần quản lý cho tài khoản admin không? Tại sao chúng ta lại phải mất công để xây dựng từng dòng code cho thành phần không phải trọng tâm của dự án?

Khi có Django Framework, tất cả những vấn đề không phải trọng tâm sẽ có sẵn hết trong Framework này rồi, bạn chỉ cần viết thêm các chức năng của riêng bạn. Những thành phần xử lý từng request, hay giao diện phần admin đã có framework lo rồi,…  Và Framework còn giúp ta xây dựng vô số các chức năng cao siêu phức tạp nữa đấy. Tới đây chắc hẳn bạn đã hiểu framework là gì và có lợi ích như thế nào rồi đấy.

5/5 (1 Review)