Framework là gì? Những điều cần biết về Framework

Framework là gì? Những điều cần biết về Framework

0 Comments

Framework là gì? là câu hỏi rất khó cho những người ngoài ngành công nghệ thông tin. Vậy nên, chúng tôi sẽ chia sẻ cho các bạn những thông tin cần biết về Framework để các bạn hiểu rõ hơn.

Framework là gì?

Framework là các đoạn code đã được viết sẵn để cấu thành nên bộ khung và thư viện lập trình đã được đóng gói. Chúng cung cấp các tính năng có sẵn như mô hình, API và các yếu tố khác để tối giản nhất cho việc phát triển các ứng dụng web phong phú và năng động. Các framework giống như khung nhà được làm sẵn nền móng cơ bản, các bạn chỉ cần vào xây dựng và thiết kế nội thất theo ý mình.

Framework là gì
Tìm hiểu về framework

Các loại Framework phổ biến nhất hiện nay

Hiện nay có rất nhiều framework cho backend, front end, ứng dụng mobile,… Nhưng phổ biến nhất có lẽ là các web framework và các framework dành cho mobile. Chúng ta hãy cùng nhau tìm hiểu kỹ hơn về từng loại nhé!

Framework dành cho web

Đây là các framework phần mềm được sử dụng để sắp xếp hợp lý cho các ứng dụng web, phát triển trang web, các dịch vụ và các tài nguyên web. Một loại framework ứng dụng web phổ biến nhất là kiến trúc Model-View-Controller (MVC). Như chúng ta đã biết để lập trình ra một website, chúng ta sử dụng tới 3 ngôn ngữ thành phần là HTML, CSS và Javascript. Sau đó, chúng được kết hợp với ngôn ngữ kịch bản máy chủ như PHP, ASP.NET, JAVA,… để đưa ra các framework khác nhau.

Framework cho ứng dụng di động

Framework cho ứng dụng di động giúp các bạn có thể viết code một lần và có thể chạy được trên iOS và Android. Đó chính là điểm mạnh của nó giúp giảm thời gian phát triển các sản phẩm so với native code. Hiện tại, các framework này đa số dùng Javascript làm ngôn ngữ phát triển nổi bật như React Native của Facebook, Xamarin của Microsoft dùng C#, Flutter dùng ngôn ngữ Dart của Google.

Các tính năng cốt lõi của Framework web

Framework giúp làm tăng hiệu suất, mở rộng thêm các chức năng và cung cấp các thư viện sẵn có để các nhà phát triển không phải làm lại từ đầu. Một framework cho web sẽ bao gồm các tính năng sau đây.

Tính năng của Framework là gì
Framework là gì? Tìm hiểu về các tính năng của framework
  • Libraries (thư viện): Là các đoạn mã xây dựng sẵn cho một chức năng nào đó. Các bạn có thể tái sử dụng chức năng này mà ko phải code lại từ đầu. Có rất nhiều tools giúp quản lý thư viện tốt như NPM, Composer,…
  • API: Là phương thức trao đổi dữ liệu giữa các ứng dụng chính với ứng dụng khác. 
  • Scaffolding: Một bộ khung các quy tắc mà framework MVC sử dụng để quy hoạch cơ sở dữ liệu có thể truy cập như thế nào?
  • AJAX: Update thông tin lên database mà không cần phải load lại trang.
  • Caching: Giúp giảm request đến máy chủ và tăng tốc độ load trang.
  • Security: Là Framework xác thực và ủy quyền user.
  • Compilers: Trình phiên dịch từ code của bạn qua ngôn ngữ cho máy.

Các Framework dùng để phát triển ứng dụng Mobile

Viết một nơi, chạy muôn nơi” là code được viết một lần duy nhất ở trên một platform, nhưng lại có thể chạy ở trên nhiều platform khác nhau. Với sự đa dạng ngày càng gia tăng của các thiết bị di động, lập trình viên hiện đang gặp rất nhiều khó khăn để cho ra được ứng dụng tốt nhất vì user hiện đang phân bố ở nhiều platform khác nhau. Chúng tôi sẽ giới thiệu cho các bạn framework tốt nhất hiện nay dùng được trên nhiều nền tảng.

React Native

React Native là một framework cho phép các lập trình viên phát triển thiết kế các ứng dụng di động đa nền tảng với sự trợ giúp của javascript. Với React Native, lập trình viên có thể sử dụng một bộ mã duy nhất cho cả 2 nền tảng iOS và Android.

Ưu điểm của Framework này là có hiệu quả về mặt thời gian khi các bạn muốn phát triển một ứng dụng nhanh chóng, hiệu năng tương đối ổn định, tiết kiệm chi phí. Tuy nhiên, nó vẫn còn tồn tại các nhược điểm là hiệu năng sẽ thấp hơn so với app thuần native code, bảo mật không cao do dựa trên JS và khả năng tùy biến cũng không thực sự tốt đối với một vài module.

Flutter 

Flutter là mobile UI framework của Google nhằm tạo ra các giao diện native có chất lượng cao trên iOS và Android trong khoảng thời gian ngắn sử dụng ngôn ngữ Dart. Flutter hoạt động với một source code có sẵn và được sử dụng bởi các nhà phát triển, các tổ chức trên khắp thế giới. Đồng thời, framework này open-source và dùng miễn phí.

Xamarin 

Đây là nền tảng lập trình ứng dụng di động cross-platform. Xamarin có những đặc điểm rất riêng biệt và hiếm có so với các framework hiện tại trên thị trường. 

Framework là gì
Framework rất quan trọng cho xây dựng ứng dụng

Ưu điểm nổi bật của Xamarin:

  • Ứng dụng mẫu của Xamarin sẽ giúp cho công việc có khởi đầu suôn sẻ hơn.
  • Xamarin có thể chia sẻ đến 75% code đã được viết ra cho các nền tảng di động lớn, từ đó tiết kiệm được rất nhiều thời gian và chi phí.
  • Cung cấp functionality testing và quality assurance cho vô số các thiết bị để đảm bảo tích hợp cho chuẩn xác.

Nhược điểm của Xamarin:

  • Không thể sử dụng được nhiều thư viện nguồn mở cho iOS và Android.
  • Phiên bản miễn phí hạn chế nhiều tính năng và rất khó dùng trong các project lớn.

PhoneGap

PhoneGap cũng là một framework dành cho ứng dụng di động đa nền tảng. Với nguồn mở cho phép các lập trình viên xây dựng bằng HTML, CSS và Javascript giúp bổ trợ cho các lập trình viên tạo ra các ứng dụng nổi bật.

Ưu điểm của framework phonegap:

  • Cho phép tạo ra ứng dụng lai bằng những công nghệ web phổ biến nhất (HTML5, CSS3 và JavaScript).
  • Cho phép các bạn deploy một codebase duy nhất lên nhiều nền tảng khác nhau.
  • Cho phép áp dụng plugin, mở rộng APIs thiết bị và mang lại nhiều lợi ích khác.
  • Cho phép thanh toán tích hợp/in-app thông qua App Store dành cho iOS, Google Play Store cho Android,…

Khuyết điểm của framework phonegap là:

  • Khả năng hỗ trợ đồ họa còn hạn chế cho ứng dụng. 
  • Plugin cho một số platform cần thiết có thể bị lỗi thời hoặc bị bỏ ngang.

Bên trên là những thông tin chúng tôi chia sẻ cho các bạn về framework là gì? Hy vọng bài viết mang đến cho các bạn những kiến thức mới hữu ích cho các bạn.

Trả lời