Trong bài viết này, tôi sẽ lấy một ví dụ cụ thể về một công cụ mà tôi xây dựng: một bảng thông tin (dashboard) đơn giản cho cá nhân.
Nhiệm vụ chính của bảng thông tin là sẽ chứa mọi thông tin tôi quan tâm hàng này, với giao diện cho tôi thiết kế phù hợp với bản thân.
Bảng thông tin hoàn toàn chỉ chạy trên máy tính của tôi, không có dữ liệu nào được gửi đi.
Tôi có thể thêm vào đó bất cứ những gì mình cần:
- Email cần đọc hàng ngày
- Ngày tháng năm, ngày âm lịch, dương lịch
- Công việc cần làm sắp tới…
- Album ảnh gia đình
- Một câu nói yêu thích mỗi ngày
- Các số liệu công việc tôi quan tâm
Công cụ tôi sử dụng là ngôn ngữ lập trình Python và web framework Django cho Python. Theo tôi, Python sẽ trở thành một ngôn ngữ ngày càng phổ biến trong tương lai:
- Rất dễ học và phổ cập
- Không phải biên dịch, nên việc lập trình và thử sai rất nhanh
- Ngày càng có nhiều thư viện được xây dựng trên nền tảng Python, đặc biệt là các thư viện về phân tích dữ liệu và trí tuệ nhân tạo, sẽ là những công cụ nền tảng trong tương lai không xa
Nếu chưa biết về Python và Django để làm theo hướng dẫn này có thể bạn phải xem qua một chút, cài đặt Python và Django, v.v… Nếu đã biết bạn có thể làm theo các hướng dẫn sau đây
- Cài đặt Python và Pip nếu chưa có. Hướng dẫn
- Cài đặt Django
python -m pip install Django
- Tạo một thư mục mới và khởi tạo một dự án Django mới
django-admin startproject mydashboard
- Chạy thử với lệnh sau. Sau khi chạy xong vào địa chỉ http://127.0.0.1:8000/ trên trình duyệt để kiểm tra có thành công không.
python manage.py runserver
- Tạo ứng dụng con
python manage.py startapp dash
- Tới đây bạn cần thay đổi một số mã lệnh để Django kết nối đường link cho ứng dụng vừa tạo. Bước này cũng không quá phức tạp, bạn có thể xem hướng dẫn.
Bây giờ tôi sẽ chia sẻ một số đoạn mã chính mà tôi sử dụng trong dự án, bạn có thể nghiên cứu tự thiết lập thêm các tính năng khác theo ý mình.
Tôi thiết kế bảng thông tin theo từng “Module”, mỗi module sẽ độc lập với nhau và hiển thị các thông tin khác nhau.
Đây là đoạn mã trong views.py của ứng dụng khi ta chọn các Module muốn hiển thị:
Đây là template index.html để hiển thị bảng thông tin. Về giao diện tôi dùng thư viện Bootstrap, rất dễ sử dụng để thiết kế một trang web đơn giản.
Đây là class chứa định nghĩa của một Module
Đây là module “Computer" hiển thị các thông tin quan trọng về máy tính của bạn như CPU, bộ nhớ, dung lượng ổ cứng, các ứng dụng đang chạy :
Đây là module Calendar hiển thị ngày giờ, ngày âm lịch
Đây là module hiển thị các đoạn trích ngẫu nhiên từ một file văn bản