Đồ án tốt nghiệp Công nghệ thông tin: Tìm hiểu lập trình python và ứng dụng phát triển ứng dụng web với Django

77 235 2
Đồ án tốt nghiệp Công nghệ thông tin: Tìm hiểu lập trình python và ứng dụng phát triển ứng dụng web với Django

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Nội dung của đồ án gồm 3 chương với các nội dung ngôn ngữ lập trình python; phát triển ứng dụng web với Django; xây dựng khung web site bán hàng. Mời các bạn cùng tham khảo đồ án để nắm chi tiết hơn nội dung nghiên cứu.

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC DÂN LẬP HẢI PHÒNG -o0o - ISO 9001:2015 ĐỒ ÁN TỐT NGHIỆP NGHÀNH CÔNG NGHỆ THÔNG TIN HẢI PHÒNG 2020 BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC DÂN LẬP HẢI PHÒNG -o0o - TÌM HIỂU LẬP TRÌNH PYTHON VÀ ỨNG DỤNG PHÁT TRIỂN ỨNG DỤNG WEB VỚI DJANGO ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY Ngành: Cơng nghệ Thơng tin HẢI PHỊNG 2019 BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC DÂN LẬP HẢI PHÒNG -o0o - TÌM HIỂU LẬP TRÌNH PYTHON VÀ ỨNG DỤNG PHÁT TRIỂN ỨNG DỤNG WEB VỚI DJANGO ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY Ngành: Công nghệ Thông tin Sinh viên thực hiện: Nguyễn Đại Cường Giáo viên hướng dẫn: TS Đỗ Văn Chiểu Mã sinh viên: 1512111007 HẢI PHÒNG 2020 BỘ GIÁO DỤC VÀ ĐÀO TẠO CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM TRƯỜNG ĐẠI HỌC DÂN LẬP HẢI PHÒNG Độc lập - Tự - Hạnh phúc -o0o NHIỆM VỤ THIẾT KẾ TỐT NGHIỆP Sinh viên: Nguyễn Đại Cường Mã số: 1512111007 Lớp: CT1901C Ngành: Cơng nghệ Thơng tin Tên đề tài: Tìm hiểu lập trình Python ứng dụng phát triển ứng dụng web với Django LỜI CẢM ƠN Lời em xin chân thành cảm ơn thầy, cô khoa Công Nghệ Thơng Tin tồn thể người ngơi trường Đại học Dân lập Hải Phịng tạo điều kiện thuận lợi cho em suốt trình học tập trường thời gian thực đồ án tốt nghiệp Đặc biệt, em muốn gửi lời cảm ơn tới Tiến Sĩ - Đỗ Văn Chiểu giảng viên trực tiếp hướng dẫn tận tình bảo giúp em khắc phục khó khăn, thiếu sót để hồn thành phần đồ án tốt nghiệp từ lý thuyết thực hành sử dụng cơng cụ Với hiểu biết tìm tịi thân bảo hướng dẫn tận tình giảng viên em cố gắng hoàn thành đồ án cách tốt khơng thể tránh thiếu sót Kính mong nhận đóng góp ý kiến từ thầy để em nâng cao bổ sung thêm kiến thức cho thân, hoàn thiện đồ án với kết tốt hoản chỉnh Em xin chân thành cảm ơn! Hải Phòng, ngày 21 tháng 09 năm 2019 Sinh viên thực Nguyễn Đại Cường MỤC LỤC LỜI CẢM ƠN MỤC LỤC MỞ ĐẦU Chương I NGƠN NGỮ LẬP TRÌNH PYTHON Cài đặt môi trường PyCharm Cài đặt python Tạo file viết mã Python PyCharm Các Khái Niệm Cơ Bản Trong Lập Trình Python 10 Cấu trúc liệu gì, kiểu cấu trúc liệu python 11 Cấu trúc điều khiển python 12 a Lệnh IF 16 b Lệnh FOR 17 c Lệnh While 18 Sử Dụng Hàm Trong Python 19 a Hàm (Function) 19 b Các thông số Hàm (Function Parameters) 20 c Câu lệnh return Python 21 Chương II PHÁT TRIỂN ỨNG DỤNG WEB VỚI DJANGO 20 Cài đặt django 24 Tạo project 26 Chạy server 26 Tạo Web App 27 Model 28 Hệ thống admin 31 View templates 33 a View 33 b.Templates 35 c Đặt namespace cho URL 37 Đồ Án Tốt Nghiệp Đại Học- Nguyễn Đại Cường- CT1901C 6| Upload file 39 a Tạo form upload 39 b Tạo templates file template 40 Form django 42 a Form sử dụng model 42 b Form không sử dụng model 47 10 Hệ thống user Django 51 a Ví dụ phân quyền user 51 b Phân quyền view (decorator) 54 11 Custom user model Django 57 12 Tùy chỉnh giao diện admin (admin custom admin site django) 59 Chương III XÂY DỰNG KHUNG WEBSITE BÁN HÀNG 58 Phân tích sở liệu 65 Xây dựng khung website bán hàng 66 KẾT LUẬN 76 DANH MỤC TÀI LIỆU THAM KHẢO 77 Đồ Án Tốt Nghiệp Đại Học- Nguyễn Đại Cường- CT1901C 7| MỞ ĐẦU Trong sống kinh tế ngày phát triển, ngành công nghệ thông tin trở thành trợ thủ, điều thiếu với hầu hết ngành nghề Có thể ban đầu nhiều người cảm thấy chưa cần thiết kinh doang quy mơ nhỏ, chưa sẵn sàng sử dụng nghĩ phần mềm khái niệm mẻ, phức tạp, khó sử dụng Ngày sống 4.0 gần thiếu khái niệm liên quan đến công nghệ thông tin, từ phương tiện truyền thông, xã hội lĩnh vực kinh doanh, quản lý… Mọi thứ cần phần mềm sản phẩm công nghệ thông tin đễ hỗ trợ giúp nâng cao phát triển vững mạnh hơn.Ví dụ lĩnh vực kinh doanh bn bán hàng hóa theo cách truyền thống tồn nhiều nhược điểm thống kê chi tiết chưa xác, quy trình tốn chưa chặt chẽ nhanh chóng Cùng với phát triển nhiều ngơn ngữ lập trình web PHP, Ruby, Scheme Python tên đáng ý Hiện ngôn ngữ Python xếp hạng thứ Top 10 ngơn ngữ lập trình phổ biến giới sử dụng Python ngơn ngữ có hình thái sáng sủa, cấu trúc rõ ràng, thuận tiện cho người bắt đầu học lập trình Cấu trúc Python cịn cho phép người sử dụng viết mã lệnh với số lần gõ phím tối thiểu Python ngơn ngữ lập trình đơn giản lại hiệu Bên cạnh đó, Python ngơn ngữ có tính hướng đối tượng cao Với ngơn ngữ lập trình python ngơn ngữ lập trình đa với nhiều ưu điểm vượt trội, đứng vị trí số top ngơn ngữ lập trình Đồ án gồm có chương sau: Chương I giới thiệu ngơn ngữ lập trình python thịnh hành lịch sử hình thành phiên Chương II giới thiệu Framework viết ngơn ngữ lập trình python Django ứng dụng Chương III demo website bán hàng xây dựng Django Đồ Án Tốt Nghiệp Đại Học- Nguyễn Đại Cường- CT1901C 8| Chương I NGÔN NGỮ LẬP TRÌNH PYTHON Giới thiệu Lịch sử hình thành Python hình thành vào cuối năm 1980 bắt đầu thực vào tháng 12/1989 Guido van Rossum CWI Hà Lan người kế thừa ngôn ngữ ABC (tự lấy cảm hứng từ SETL) có khả xử lý ngoại lệ giao tiếp với hệ điều hành Amoeba Van Rossum tác giả Python, vai trị trung tâm ông tiếp tục việc định hướng phát triển Python phản ánh tiêu đề mà cộng đồng Python dành cho ông “Độc tài nhân từ cho sống” (benevolent dictator for life)(BDFL) Python 2.0 phát hành vào ngày 16/10/2000, với nhiều tính bao gồm dọn rác đầy đủ hỗ trợ Unicode Với phiên này, trình phát triển thay đổi trở thành minh bạch cộng đồng ủng hộ Python 3.0 (còn gọi Python 3000 Py3k), phát hành lớn, khơng tương thích ngược, phát hành vào ngày 03/12/2008 sau thời gian dài thử nghiệm Nhiều số tính điều chỉnh để tương thích ngược với Python 2.6 2.7 Các tính triết lý phát triển Python ngơn ngữ lập trình đa hình: lập trình hướng đối tượng hướng cấu trúc hỗ trợ đầy đủ, có số tính ngơn ngữ hỗ trợ lập trình theo chức lập trình hướng khía cạnh (Aspect-oriented programming) Nhiều mơ hình khác hỗ trợ việc sử dụng phần mở rộng, bao gồm thiết kế theo hợp đồng (design by contract) lập trình luận lý Các trang Mozilla, Reddit, Instagram PBS viết Python Ngôn ngữ lập trình Python dùng vào mục đích :     Phát triển web (trên máy chủ) Phát triển phần mềm Tính tốn cách khoa học Lên kịch cho hệ thống Tại Sao Nên Học Lập Trình Python? Đồ Án Tốt Nghiệp Đại Học- Nguyễn Đại Cường- CT1901C 9|     Python hỗ trợ nhiều tảng khác (Windows, Mac, Linux, Raspberry Pi, etc) Python có cú pháp đơn giản, dễ đọc hiểu gần gũi với tiếng Anh Cú pháp Python giúp lập trình viên sử dụng dịng code để lập trình thuật tốn so với ngơn ngữ lập trình khác Python sử dụng trình thơng dịch để thực thi dịng code Do đó, dịng code thực thi mà khơng cần biên dịch tồn chương trình Như giúp kiểm tra code nhanh Python hỗ trợ hàm, thủ tục, hay kể lập trình hướng đối tượng Để viết mã nguồn Python, ta sử dụng trình soạn thảo nào, kể trình soạn thảo đơn giản NotePad Tuy nhiên, để phát triển ứng dụng cách hiệu hơn, ta nên sử dụng IDE, để tiết kiệm thời gian công sức viết code sử dụng IDE thông dụng để lập trình ứng dụng Python, PyCharm IDE Cài đặt môi trường PyCharm Để download Pycharm, ta truy cập vào: https://www.jetbrains.com/pycharm/download/#section=windows tải Hình 1.1 Download pycharm Đồ Án Tốt Nghiệp Đại Học- Nguyễn Đại Cường- CT1901C 10 | Truy cập http://localhost:8000/admin username password thay đổi, ta làm điều tương tự với thành phần khác Đồ Án Tốt Nghiệp Đại Học- Nguyễn Đại Cường- CT1901C 63 | Chương III XÂY DỰNG KHUNG WEB SITE BÁN HÀNG Giới thiệu Đối với doanh nghiệp, tổ chức, cửa hàng hay cá nhân, dù kinh doanh online, hay bắt đầu kinh doanh online hiểu trang website bán hàng chuyên nghiệp có tầm quan trọng việc định đến hiệu kinh doanh online Những lưu ý thiết kế website bán hàng : - Giao diện website phải phù hợp với mặt hàng kinh doanh, điều quan trọng, mặt hàng kinh doanh có giao diện riêng, website bán hàng, mặt hàng sử dụng giao diện lung tung được, ví dụ bạn bán mỹ phẩm, bạn lại sử dụng giao diện bán hàng thiết bị điện tử được.Giao diện website quan trọng, khách hàng bạn vừa truy cập vào trang website bán hàng bạn, họ không sâu vào bên ngay, hay sử dụng tính ngay, mà nhìn trang chủ trước Đối với trang website bán hàng, bạn nên thiết kế website với giao diện 1100px, 1200px, full hình, kích thước giúp website bạn có khơng gian trở nên rộng rãi cho việc trưng bày giới thiệu sản phẩm, bố trí baner kiện, chương trình khuyến mãi, làm bật lên thứ quan trọng sản phẩm mà bạn kinh doanh - Một trang website bán hàng muốn để lại ấn tượng khách hàng tốt bạn nên sử dụng loại hình thiết kế website chun nghiệp, lúc giao diện website bạn thiết kế hoàn toàn dựa theo thương hiệu có bạn logo, dải màu thương hiệu, lĩnh vực kinh doanh thương hiệu bạn đồng thực tế website, giúp website bạn để lại ấn tượng khách hàng truy cập - Giao diện, bố cục website phải phù hợp với đối tượng sử dụng điều mà gần người lần đầu thiết kế website thường hay mắc phải nhất, ví dụ mặt hàng bạn đa phần người lớn tuổi bạn khơng nên thiết kế bố cục phức tạp khiến người dùng khó tiếp cận sản phẩm mà họ mong muốn, hay để đặt mua sản phẩm Đồ Án Tốt Nghiệp Đại Học- Nguyễn Đại Cường- CT1901C 64 | - Chức website phù hợp với nhu cầu sử dụng, website thiết kế theo module có sẵn thơng thường bạn nhận trang website với đầy đủ tính trang website bán hàng, nhiên website thiết kế chun nghiệp khơng vậy, đơn vị thiết kế website chuyên nghiệp xây dựng tính riêng phù hợp với nhu cầu sử dụng thực bạn - Kết nối công cụ mạng xã hội Mạng xã hội phát triển, kênh giúp bán hàng hiệu quả, điều kinh doanh online biết đến, trước thiết kế website hẳn bạn sở hữu cho fanpage bán hàng hay zalo bán hàng vậy, thiết kế website bán hàng lưu ý website bạn phải kết nối với kênh mạng xã hội này, cổng để chuyển khách hàng bạn từ mạng xã hội dần website Kết hớp kiến thức làm đươc phần I II ta tiến hành xây dựng trang bán hàng đơn giản Phân tích sở liệu Hình 1.1 Cơ sở liệu bán hàng Đồ Án Tốt Nghiệp Đại Học- Nguyễn Đại Cường- CT1901C 65 | Trong website bán hàng ngồi việc có giao diện thân thiện dễ sử dụng tiếp cận tốt với mục đích khách hàng phải tâm đến sản phẩm mà bán Product bảng product gồm có tiêu đề sản phẩm,mô tả sản phẩm,loại sản phẩm, giá tiền trạng thái Variation để quản lí thay đổi sản phẩm ví dụ giá sản phẩm theo ngày vào ngày giảm giá Cartitem bảng giỏ hàng, giỏ hàng có nhiều hàng hóa, sản phẩm đặt nhiều giỏ hàng khác Order lấy thông tin khách hàng để giao hàng , trạng thái đơn hàng User hệ thống khách hàng Xây dựng khung website bán hàng Chúng ta tạo project tên Shopingsite để làm ví dụ web bán hàng đơn giản dựa theo mơ hình Đầu tiên tạo app tương ứng bảng Hình 1.1 lệnh : django-admin starapp [tên app] có app :       Cart Core Order Product Shop User Đồ Án Tốt Nghiệp Đại Học- Nguyễn Đại Cường- CT1901C 66 | Hình 2.1 Tạo project bán hàng Và thêm app vừa tạo vào phần install app file “setting.py” Hình 2.2 Install App Đồ Án Tốt Nghiệp Đại Học- Nguyễn Đại Cường- CT1901C 67 | Tiếp theo phải xây dựng model cho app mà vừa tạo Trong app product khai báo class có bảng có liên quan đến sản phẩm thành phần bên bảng product file model.py Ở khai báo class liên quan đến sản phẩm là:  category (loại sản phẩm)  product (sản phẩm)  variation (quản lí biến đổi sản phẩm ) định nghĩa kiểu thành phần,từng thuộc tính bảng file model.py “product/model.py” Hình 2.3 Khai báo class Đồ Án Tốt Nghiệp Đại Học- Nguyễn Đại Cường- CT1901C 68 | Tiếp theo xây dựng model app cart (giỏ hàng) khai báo class liên quan đến giỏ hàng là:  Cart  CartItem Có trường auto_now auto_now_add dùng để xác thực thời gian mà thêm vào giỏ hàng thời điểm thời gian update thêm giỏ hàng cart/model.py Hình 2.4 Xây dựng model Tiếp theo xây dựng model người dùng (khách hàng) bảng user khai báo class CustomerUser thêm trường địa số điện thoại khách hàng Đồ Án Tốt Nghiệp Đại Học- Nguyễn Đại Cường- CT1901C 69 | Cuối xây dựng model bảng order với trường:  user(khách hàng)  cart(giỏ hàng)  shipping_address (địa giao hàng)  is_complete (đơn hàng giao hay chưa) “order/model.py” Vậy xong phần xây dựng model cho website bán hàng với cần thiết cho web bán hàng Đồ Án Tốt Nghiệp Đại Học- Nguyễn Đại Cường- CT1901C 70 | Tiếp theo cần trang trí lại trang web cho đẹp mắt làm hấp dẫn khách hàng với thay đổi trang trí khuyến mại hay tiện ích thêm template vào Ta có ví dụ với website giới di động với đầy đủ thông tin sản phẩm, giá, loại sản phẩm trang trí vơ bắt mắt, giúp người dùng tiếp cận nhanh chóng đến sản phẩm mà họ cần tìm qua click chuột Chúng ta dùng template có sẳn để làm trang web trở lên hồn thiện Hình 2.5 Ví dụ website giới di động Đầu tiên chuẩn bị template có sẵn (nguồn : https://colorlib.com/wp/template/onetech/) Đồ Án Tốt Nghiệp Đại Học- Nguyễn Đại Cường- CT1901C 71 | Hình 2.6 Download template Tiếp theo project ta tạo thêm hai folder có tên “static” “templates” để chứa tempalte Và copy toàn file template chuẩn bị sẵn vào file static Trong template mà chuẩn bị trước có file tên index.html ta copy file vào folder temlplates project Sau ta tiến hành load tồn static file “index.html” Đồ Án Tốt Nghiệp Đại Học- Nguyễn Đại Cường- CT1901C 72 | Hình 2.7 Load static Sau hoàn thành load static xong truy cập vào địa “http://localhost:8000/” để xem kết Web site hiển thị với giao diện đẹp mắt Với thông tin loại sản phẩm, giá hình ảnh hiển thị tượng trưng cho sản phẩm Ta đặt tên web site Top HPU Đồ Án Tốt Nghiệp Đại Học- Nguyễn Đại Cường- CT1901C 73 | Trang chủ trang web trang web có nhiều hạng mục (sản phẩm hot, bán chạy tuần, sản phẩm giảm giá , chương trình khuyến mại Đồ Án Tốt Nghiệp Đại Học- Nguyễn Đại Cường- CT1901C 74 | Đồ Án Tốt Nghiệp Đại Học- Nguyễn Đại Cường- CT1901C 75 | KẾT LUẬN Sau thời gian tham khảo tìm tòi bảo thầy hướng dẫn tập đồ án Tìm hiểu lập trình python ứng dụng phát triển ứng dụng web với Django khoảng thời gian định dành cho việc thực đề tài, nên số vấn đề chưa hoàn chỉnh Tuy nhiên, đồ án đạt số kết quả: Những kết đạt đồ án : - Tìm hiểu ngơn ngữ python phá triển ứng dụng web django - Tìm hiểu mơi trường lập trình PyCharm - Tìm hiểu cách quản lý website bán hàng - Lập trình python, khung phát triển web Django - Demo khung website bán hàng viết ngôn ngữ python Tuy nhiên q trình làm cịn số điều cần bổ sung như: - Giao diện chưa thực đẹp mắt, cịn thiếu sót - Chưa thao tác thành thục lập trình python - Website bán hàng cịn thiếu sót - Trình bày thiếu logic, cách diễn đạt Em cố gắng để ngày hồn thiện, trau dồi kĩ lập trình thiết kế trở nên tốt Em xin chân thành cảm ơn! Đồ Án Tốt Nghiệp Đại Học- Nguyễn Đại Cường- CT1901C 76 | DANH MỤC TÀI LIỆU THAM KHẢO Tài liệu tham khảo : Sách tự học lập trình Python bản-NXB Đại Học Quốc Gia HCM Sách điện tử Learn python the hard way https://binhthanhdang.files.wordpress.com/2015/12/python-rat-la-co-banvo-duy-tuan.pdf https://www.w3schools.com/ https://docs.djangoproject.com/en/3.0/ http://phocode.com/python/django/django-host-website-voipythonanywhere/ Chú thích : từ in đạm dùng để thư mục, từ khóa hay lệnh quan trọng In đậm nằm dấu “” đường dẫn thư mục Đồ Án Tốt Nghiệp Đại Học- Nguyễn Đại Cường- CT1901C 77 | ... GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC DÂN LẬP HẢI PHÒNG -o0o - TÌM HIỂU LẬP TRÌNH PYTHON VÀ ỨNG DỤNG PHÁT TRIỂN ỨNG DỤNG WEB VỚI DJANGO ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY Ngành: Cơng nghệ Thơng... GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC DÂN LẬP HẢI PHÒNG -o0o - TÌM HIỂU LẬP TRÌNH PYTHON VÀ ỨNG DỤNG PHÁT TRIỂN ỨNG DỤNG WEB VỚI DJANGO ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY Ngành: Cơng nghệ Thơng... THIẾT KẾ TỐT NGHIỆP Sinh viên: Nguyễn Đại Cường Mã số: 1512111007 Lớp: CT1901C Ngành: Công nghệ Thông tin Tên đề tài: Tìm hiểu lập trình Python ứng dụng phát triển ứng dụng web với Django LỜI CẢM

Ngày đăng: 19/04/2021, 09:00

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan