Uploaded by Anh Nguyễn Phương

BÁO CÁO GIỮA KÌ KTLT

advertisement
BỘ GIÁO DỤC VÀ ĐÀO TẠO
ĐẠI HỌC QUỐC QUA THÀNH PHỐ HỒ CHÍ MINH
TRƯỜNG ĐẠI HỌC KINH TẾ - LUẬT
____________________________
BÁO CÁO NHÓM GIỮA KỲ
Học kỳ 2/2022-2023
KỸ THUẬT LẬP TRÌNH
ĐỀ TÀI: THƯ VIỆN DJANGO
GVHD: Thầy Trương Hoài Phan
MÃ HỌC PHẦN: 222IS4906
NHÓM SINH VIÊN THỰC HIỆN:
STT
HỌ VÀ TÊN
MÃ SỐ SINH VIÊN
1
Nguyễn Phương Anh
K224161804
MỨC ĐỘ HOÀN
THÀNH
Đạt
2
Huỳnh Đức Hiếu
K224161814
Đạt
3
Bùi Thị Huyền My
K224161825
Đạt
4
Nguyễn Hồng Ngọc Mỹ
K224161826
Đạt
TP. HỒ CHÍ MINH 04/2023
MỤC LỤC
I. Giới thiệu ....................................................................................................................3
1. Vấn đề thực tế...........................................................................................................3
2. Django là gì?............................................................................................................3
II. Nội dung ....................................................................................................................3
1. Tìm hiểu chi tiết về Django ......................................................................................3
1.1. MVT Pattern của Django...................................................................................3
1.2. Các thành phần cơ bản của Django ..................................................................4
2. Ưu và nhược điểm của thư viện Django ..................................................................5
2.1. Ưu điểm ..............................................................................................................5
2.2. Nhược điểm ........................................................................................................6
3. Ứng dụng thư viện vào đồ án nhóm cuối kỳ.............................................................6
4. Cài đặt Django .......................................................................................................13
III. Kết luận ..................................................................................................................15
IV. Danh mục tài liệu tham khảo : .............................................................................16
2
I. Giới thiệu
1. Vấn đề thực tế
Ở thời điểm hiện tại, phát triển các ứng dụng web đang trở thành một trong những xu
hướng phát triển phổ biến nhất trong ngành công nghiệp công nghệ thông tin. Để đáp
ứng nhu cầu ngày càng tăng của thị trường, các framework web đã được phát triển để
giúp người phát triển web tạo ra các ứng dụng web nhanh chóng và dễ dàng hơn.
Với sự ra đời của Python, một trong những ngôn ngữ lập trình phổ biến nhất hiện nay,
thư viện Django đã được phát triển nhằm hỗ trợ việc phát triển các ứng dụng web một
cách nhanh chóng và hiệu quả. Django là một framework web được xây dựng trên
ngôn ngữ Python, cung cấp cho người dùng nhiều tính năng và công cụ để tạo ra các
ứng dụng web động và trang web có nội dung động một cách nhanh chóng và dễ dàng.
2. Django là gì?
Django là loại framework cấp cao được viết bằng Python, được thiết kế để đáp ứng
nhu cầu phát triển các website an toàn và dễ bảo trì.
Django được xây dựng bởi các nhà phát triển có kinh nghiệm nên nó có khả năng xử
lý hầu hết những phần phức tạp của việc phát triển web. Do đó, bạn có thể tập trung
vào việc viết app mà không cần phải dừng lại để kiểm tra.
Django miễn phí và là open-source (mã nguồn mở).
Django tập trung vào tính năng “có thể tái sử dụng” và “có thể tự chạy” của các thành
phần, tính năng phát triển nhanh, không làm lại những gì đã làm.
II. Nội dung
1. Tìm hiểu chi tiết về Django
1.1. MVT Pattern của Django
MVT (Model-View-Template) là một kiến trúc thiết kế phổ biến trong Django. Đây là
một phương pháp để phân chia ứng dụng web thành các phần riêng biệt để dễ dàng
quản lý và phát triển.
Trong MVT Pattern, Django chia ứng dụng web thành ba phần chính:
Models: Đây là thành phần đại diện cho cơ sở dữ liệu của ứng dụng web. Models được
sử dụng để định nghĩa các đối tượng và trường dữ liệu tương ứng. Các đối tượng sẽ
được lưu trữ trong cơ sở dữ liệu và các trường dữ liệu sẽ giúp mô tả các thông tin liên
quan đến đối tượng đó. Models còn có nhiệm vụ xử lý các thao tác CRUD (Create,
Read, Update, Delete) để thao tác với dữ liệu trong cơ sở dữ liệu.
Views: Đây là thành phần xử lý các yêu cầu từ người dùng. View sẽ tiếp nhận yêu cầu
từ người dùng, thực hiện các xử lý tương ứng và trả về kết quả cho người dùng. Trong
quá trình xử lý yêu cầu, View sẽ sử dụng Models để lấy và cập nhật dữ liệu trong cơ
sở dữ liệu. Sau khi xử lý hoàn tất, View sẽ trả về các kết quả cho Template.
Templates: Đây là thành phần định dạng dữ liệu trước khi trình bày cho người dùng.
Template định nghĩa cách hiển thị dữ liệu cho người dùng. Trong quá trình xử lý,
3
Template sẽ nhận kết quả từ View và định dạng dữ liệu để hiển thị lên giao diện người
dùng.
Khi một yêu cầu được gửi đến ứng dụng Django, nó được xử lý bởi một View. View
tương tác với Models để lấy dữ liệu, sau đó định dạng và trả về phản hồi cho người
dùng thông qua Templates.
1.2. Các thành phần cơ bản của Django
Thành phần của Django bao gồm các cài đặt cấu hình cơ sở dữ liệu, tùy chọn cụ thể và
các cài đặt cụ thể trong dự án. Trong đó:
4
mysite/: Đây là thư mục gốc của dự án Django.
manage.py: Đây là file Python để quản lý các tác vụ như chạy server, tạo app, tạo
superuser, sync database, ...
__init__.py: Đây là file trống, cho biết thư mục này là một Python package.
settings.py: Đây là file chứa các cấu hình của dự án, bao gồm cấu hình cơ sở dữ liệu,
thiết lập templates, xác thực người dùng, cấu hình middleware, ...
urls.py: Đây là file chứa các đường dẫn (URL) của ứng dụng. Các URL này được điều
hướng tới các hàm xử lý (view) tương ứng.
wsgi.py: Đây là file để ứng dụng chạy trên môi trường WSGI (Web Server Gateway
Interface) để thao tác các dự án của người dùng.
Nếu muốn kiểm tra, dự án của bạn có đang chạy không, bạn có thể kiểm tra nó bằng
lệnh sau: python manage.py runserver
2. Ưu và nhược điểm của thư viện Django
2.1. Ưu điểm
Django là công cụ khiến cho việc lập trình web trở nên dễ dàng hơn, dưới đây là một
vài lợi ích được xem là lý do mà nhiều công ty lớn sử dụng Django cho các chương
trình của họ:
Nhanh và đơn giản: Framework Django là 1 bộ khung đã bao gồm sẵn những đoạn
code, thư viện, hình ảnh được đóng gói sẵn phục vụ cho lập trình web nên không cần
phải code lại từ đầu.
Hiệu suất cao: Django có thể xử lý nhiều yêu cầu đồng thời và cũng có các công cụ tối
ưu hóa để tăng tốc độ xử lý của ứng dụng web.
Bộ thư viện/module đầy đủ: sở hữu nhiều tính năng bổ sung để phát triển web một
cách dễ dàng
Tính bảo mật: Django được thiết kế để giúp bảo vệ ứng dụng web khỏi các cuộc tấn
công. Nó có tính năng bảo vệ chống lại các cuộc tấn công như SQL injection (Kỹ thuật
tấn công bằng cách chèn vào các câu lệnh SQL độc hại để truy cập trái phép dữ liệu)
và Cross-site scripting (XSS) (Kỹ thuật tấn công bằng cách chèn mã độc vào trang
web).
Tính mở rộng: Django cung cấp khả năng mở rộng ứng dụng bằng cách sử dụng các
ứng dụng bên thứ ba và các thư viện trong Python. Điều này cho phép người dùng tùy
chỉnh và mở rộng ứng dụng của mình theo nhu cầu.
Tính tương thích, đa nền tảng: Django hoạt động trên nhiều nền tảng, bao gồm cả
Windows, Linux và macOS, và hỗ trợ nhiều loại cơ sở dữ liệu khác.
Có sự hỗ trợ từ cộng đồng: Django có một cộng đồng lớn và sôi nổi, cung cấp các tài
liệu hướng dẫn, thư viện và các công cụ hỗ trợ phát triển ứng dụng web phong phú.
5
2.2. Nhược điểm
Mặc dù Django là một framework sở hữu nhiều ưu điểm nổi trội nhưng nó vẫn có một
số nhược điểm có thể kể đến như:
Khó học thời gian đầu: Django có một số khái niệm và cấu trúc phức tạp, vì vậy việc
học và làm quen với framework này cần nhiều thời gian và nỗ lực hơn so với các
framework khác.
Khả năng mở rộng: Django không phải là một framework mở rộng linh hoạt, đặc biệt
là khi xử lý các ứng dụng web quy mô lớn hoặc có yêu cầu đặc biệt. Việc mở rộng ứng
dụng có thể gặp phải một số thách thức, do các khái niệm và cấu trúc của Django có
thể làm giảm tính linh hoạt và khả năng tùy biến của ứng dụng.
3. Ứng dụng thư viện vào đồ án nhóm cuối kỳ
Sử dụng thư viện Django để tạo một trang web bán sách
Bước 1: Tạo mô hình dữ liệu
Định nghĩa các mô hình dữ liệu cho các đối tượng của bạn như sách, tác giả, nhà xuất
bản và đơn hàng.
Bước 2: Thiết lập cơ sở dữ liệu
Tạo cơ sở dữ liệu và đảm bảo rằng các mô hình dữ liệu của bạn được đồng bộ hóa với
cơ sở dữ liệu.
6
Bước 3: Xây dựng chức năng tìm kiếm
Tạo chức năng tìm kiếm sách và hiển thị kết quả tìm kiếm trên trang web của bạn.
Bước 4: Xây dựng chức năng giỏ hàng
Thiết lập giỏ hàng để khách hàng có thể thêm các sản phẩm vào giỏ hàng và thanh
toán khi đã hoàn tất.
7
8
Bước 5: Xây dựng chức năng thanh toán
Tạo các trang thanh toán và thanh toán bằng cách sử dụng các dịch vụ thanh toán của
bên thứ ba như PayPal hoặc Stripe.
9
Bước 6: Thiết lập giao diện người dùng
Tạo giao diện người dùng bằng cách sử dụng các công cụ như HTML, CSS và
JavaScript.
10
Bước 7: Xây dựng chức năng đăng nhập và đăng ký
Tạo chức năng đăng nhập và đăng ký để khách hàng có thể lưu trữ thông tin cá nhân
và lịch sử mua hàng của họ.
11
Bước 8: Triển khai ứng dụng
12
4. Cài đặt Django
Cài đặt Python: Django được viết bằng Python, vì vậy chúng ta cần cài đặt Python
trước khi cài đặt Django. chúng ta có thể tải Python từ trang chủ của nó tại
https://www.python.org/downloads/. Lưu ý, Django hỗ trợ các phiên bản Python từ 3.6
trở lên.
Cài đặt Django: Sau khi cài đặt Python, chúng ta có thể cài đặt Django bằng cách sử
dụng pip, trình quản lý gói Python. chúng ta có thể mở cửa sổ dòng lệnh và chạy lệnh
sau đây để cài đặt Django:
13
Mở terminal.
Gõ pip install django sau đó nhấn enter để khởi chạy.
Để kiểm tra thư viện django có thật sự đã được cài đặt hay chưa thì ta làm như sau:
Mở cmd và gõ lệnh python -m django --version hoặc django-admin - - version và
nhấn enter để khởi chạy.
14
III. Kết luận
Django là một framework web phổ biến và mạnh mẽ được sử dụng rộng rãi bởi các
nhà phát triển web để xây dựng các ứng dụng web động. Nó cung cấp các công cụ và
thư viện để giúp xử lý các tác vụ phức tạp như xử lý yêu cầu HTTP, quản lý cơ sở dữ
liệu, tạo giao diện người dùng động, xử lý lỗi và bảo mật.
Django cung cấp nhiều lợi ích cho nhà phát triển web như tiết kiệm thời gian, hiệu suất
cao, độ bảo mật tốt và quản lý dữ liệu dễ dàng. Nó cũng được hỗ trợ bởi một cộng
đồng lớn và đầy nhiệt huyết của các nhà phát triển trên toàn thế giới, cho phép bạn tìm
kiếm các tài liệu và hỗ trợ trực tuyến một cách dễ dàng.
Tuy nhiên, để sử dụng Django hiệu quả, người sử dụng cần có kiến thức chuyên môn
về framework và kinh nghiệm trong xây dựng ứng dụng web.
Tóm lại, Django là một lựa chọn tuyệt vời cho những người muốn xây dựng các ứng
dụng web động, và nó cung cấp các công cụ và tính năng cần thiết để thực hiện các tác
vụ phức tạp một cách dễ dàng. Tuy nhiên, việc sử dụng Django đòi hỏi kiến thức
chuyên môn và kinh nghiệm, và nó không phải là một lựa chọn phù hợp cho những
người mới bắt đầu trong lĩnh vực này.
15
IV. Danh mục tài liệu tham khảo :
1. Sách tự học lập trình Python căn bản-NXB Đại Học Quốc Gia HCM
2. Sách điện tử Learn python the hard way.
3. https://docs.djangoproject.com/en/3.0/
4. http://phocode.com/python/django/django-host-website-voipythonanywhere/
16
Download