DJANGO
CÁC CHỦ ĐỀ
BÀI MỚI NHẤT
MỚI CẬP NHẬT

Thông báo: Download 4 khóa học Python từ cơ bản đến nâng cao tại đây.

Django là gì? Có nên sử dụng Django để làm website?

Trong bài viết này mình sẽ giới thiệu Django là gì? Đây là một framework Python được dùng để xây dựng ứng dụng website.

test php

banquyen png
Bài viết này được đăng tại freetuts.net, không được copy dưới mọi hình thức.

Nói đến làm website thì nhiều người sẽ nghĩ tới PHP, .NET, ASP, ... nhưng có lẽ nhiều người không biết rằng Python có thể làm được, không những vậy mà còn rất mạnh là đằng khác, điển hình là các ông lớn như: Disqus, Instagram, Knight Foundation, MacArthur Foundation, Mozilla, National Geographic ...

Và để làm được website bằng Python thì không thể không nhắc đến Django, một framework được xếp đầu trong danh sách những web framework của Python.

1. Django là gì?

django png

Bài viết này được đăng tại [free tuts .net]

Django là một Python-based web framework cho phép bạn tạo ra một ứng dụng website một cách nhanh chóng mà không cần phải thực hiện quá nhiều công đoạn như những framework khác.

Khi bạn xây dựng một ứng dụng web thì phải chia ra rất nhiều components. Chẳng hạn như trong admin thì cần phải xây dựng các chức năng quản lý người dùng, đăng nhập và đăng xuất, quản lý media, upload file ... Tất cả những điều này đã được Django cung cấp sẵn.

Dưới đây là những lý do cơ bản mà bạn nên chọn Django:

  • Rất dễ dàng chuyển đổi database trong Django
  • Giao diện trang quản trị rất trực quan
  • Có đầy đủ các tính năng của một website
  • Có nhiều package có sẵn
  • Dễ mở rộng

Phần này mình chỉ giải thích Django dùng để làm gì thôi nhé. Bây giờ ta sẽ phân tích sâu vào những lý do mà bạn nên chọn Django để làm website chứ không phải là những FW khác.

2. Có nên chọn Django để làm website không?

Nói về độ phổ biến thì Django không thể qua mặt WordPress được, nhưng nói về tính mở rộng và hiệu năng thì Django vẫn nằm trên WordPress.

Đương nhiên tùy vào nhu cầu của mỗi người cũng như sở thích mà chọn một framework riêng cho bản thân. Ví dụ mình là lập trình viên PHP thì đương nhiên mình sẽ chọn WP, nhưng nếu mình đang làm việc với Python thì mình sẽ chọn Django.

Vì trong series này chúng ta đang bàn đến Python Framework dùng để làm website nên mình sẽ phân tích dựa vào những framework anh em của nó như: CherryPy, Pyramid, Grok, TurboGears, Web2Py ...

Django rất phổ biến

Có rất nhiều website sử dụng Django làm nền tảng như: Disqus, Instagram, Knight Foundation, MacArthur Foundation, Mozilla, National Geographic ... và hàng ngàn những website lớn nhỏ khác.

Các trang web đánh giá mức độ phổ biến thường sẽ dựa vào số lượng dự án được đăng lên Github, và trong danh sách đó thì Django được xếp hạng thứ 6.

Django rất linh hoạt

Django có thể được dùng để xây dựng mọi loại website như: Blog, tin tức, shopping, bất động sản ... và nó cũng có thể trả về client ở nhiều định dạng khác nhau như HTML, XML, JSON, ...

Một số thể loại website sử dụng Django phổ biến nhất đó là các trang về kiến thức(wiki), mạng xã hội (socials), trang tin tức (news) ...

Django bảo mật cao

Django framework ra đời nhằm giúp tạo ra website một cách nhanh chóng nhất, vì vậy bản thân nó đã được lập trình sẵn những vấn đề liên quan đến bảo mật cần thiết cho một trang web.

Ví dụ: Mật khẩu người dùng thay vì lưu trữ trực tiếp trong cookie thì nó đã được băm trước khi lưu trữ, vì vậy bạn không thể thấy nó khi cố tình tìm trong cookie.

Django dễ mở rộng

Các website làm bằng Django được mở rộng theo chiều ngang - chỉ cần kích hoạt thêm khi cần. Instagram và Disqus là hai websiet sử dụng Django, họ có hàng triệu người dùng nhưng vẫn hoạt động rất tốt.

Ngoài ra tất cả các mã Django đều được code bằng Python nên có thể được chạy trên nhiều nền tảng khác nhau. Vì vậy bạn có thể thuê VPS là Windows, Linux hay Mac OS đều có thể chạy Django.

3. Lấy tài liệu Django tiếng Việt ở đâu?

Tại Việt Nam thì Django vẫn là một FW tương đối mới mẻ nên tài liệu của nó vẫn chưa có nhiều.

Khi mình soạn ra series này thì mình mong muốn sẽ gửi đến độc giả một bộ series học Python từ căn bản đến nâng cao bằng tiếng Việt hay nhất. Mình sẽ biên soạn nội dung theo hướng step by step nhằm giúp người chưa biết gì cũng có thể học được.

Và đương nhiên, để học được Django thì bạn phải thành thạo Python. Vì vậy bạn hãy tham khảo 2 series dưới đây trước khi học Django nhé:

Lời kết: Qua bài này chắc hẳn bạn đã biết được Django là gì rồi phải không nào? Nếu trong quá trình học có gì thắc mắc thì bạn hãy bình luận xuống phía dưới bài học nhé.

Cùng chuyên mục:

Cách tạo thư mục lồng nhau (nested directory) trong Python

Cách tạo thư mục lồng nhau (nested directory) trong Python

Cách thêm số 0 vào đầu chuỗi trong Python

Cách thêm số 0 vào đầu chuỗi trong Python

Sự khác biệt giữa @classmethod, @staticmethod và instance methods trong Python

Sự khác biệt giữa @classmethod, @staticmethod và instance methods trong Python

Sự khác biệt giữa str và repr trong Python

Sự khác biệt giữa str và repr trong Python

Các cách nối hai danh sách trong Python

Các cách nối hai danh sách trong Python

Sự khác biệt giữa append() và extend() trong list Python

Sự khác biệt giữa append() và extend() trong list Python

5 lỗi thường gặp trong Python

5 lỗi thường gặp trong Python

Các tính năng mới trong Python 3.10

Các tính năng mới trong Python 3.10

Tạo app ghi chú trong Python với nhận dạng giọng nói và API Notion

Tạo app ghi chú trong Python với nhận dạng giọng nói và API Notion

Làm chủ Pattern Matching trong Python 3.10

Làm chủ Pattern Matching trong Python 3.10

Cách yêu cầu người dùng nhập liệu đến khi nhận được phản hồi hợp lệ trong Python

Cách yêu cầu người dùng nhập liệu đến khi nhận được phản hồi hợp lệ trong Python

8 Mẹo Refactor Code Python nhanh gọn (Phần 2)

8 Mẹo Refactor Code Python nhanh gọn (Phần 2)

Cách sao chép file trong Python

Cách sao chép file trong Python

31 Phương thức xử lý chuỗi (String) quan trọng trong Python

31 Phương thức xử lý chuỗi (String) quan trọng trong Python

Cách xóa file và thư mục trong Python

Cách xóa file và thư mục trong Python

Tìm hiểu về *args và **kwargs trong Python

Tìm hiểu về *args và **kwargs trong Python

Cách làm phẳng danh sách lồng nhau trong Python

Cách làm phẳng danh sách lồng nhau trong Python

Phân tích dữ liệu Apple Health bằng Python

Phân tích dữ liệu Apple Health bằng Python

Cách loại bỏ phần tử trùng lặp khỏi danh sách (List) trong Python

Cách loại bỏ phần tử trùng lặp khỏi danh sách (List) trong Python

Cách cắt (slicing) chuỗi trong Python

Cách cắt (slicing) chuỗi trong Python

Top