6 library của Python mà mọi lập trình viên đều yêu thích
- Ngoc Huynh
Truy cập cơ sở dữ liệu nhanh, an toàn; các web framework sạch, nhanh, các GUI đa nền tảng không phức tạp là những gì mà các library (thư viện) của Python mang đến.
Trong lập trình, một chút sự cố nhỏ có thể mang đến những vấn đề nghiêm trọng. Không ai muốn rơi vào tình trạng lo lắng chỉ đơn thuần để pop up một cửa sổ với một tin nhắn hoặc viết nhanh và (và an toàn) vào một cơ sở dữ liệu. Nhưng các lập trình viên sẽ yêu thích các giải pháp nhanh cho các sự cố mà cũng có thể mất một thời gian dài để giải quyết.
Dưới đây là 6 thư viện của Python giúp các lập trình viên giải quyết các vấn đề một cách nhanh chóng, nhưng cũng có thể được sử dụng như là nền móng của các dự án quan trọng.
Pyglet:
Pyglet là một framework đa nền tảng dành cho multimedia (mỹ thuật đa phương tiện) và windows graphics bằng Python thuần.
Tại sao bạn cần đến Pyglet: Framework này mang đến khả năng truy cập dễ dàng vào các mục mà sẽ gặp nhiều khó khăn khi triển khai từ đầu cho ứng dụng GUI: window functions, đồ họa OpenGL, phát lại video và âm thanh, xử lý bàn phím và chuột, và làm việc với các tệp tin hình cảnh. (Nó không cung cấp các UI widget như nút, thanh công cụ, hay thanh trình đơn).
Tất cả được thực hiện thông qua các khả năng của nền tảng gốc ở Windows, OS X, hay Linux, do đó không có các dependency nhị phân, chỉ có Python thuần. Ngoài ra, nó đã được cấp giấy phép BSD (Berkeley Software Distribution License – đây là một giấy phép phần mềm tự do với các điều kiện rất đơn giản được sử dụng rộng rãi cho phần mềm máy tính), vì vậy nó có thể có trong bất kỳ dự án mã nguồn mở hay thương mại nào.
Peewee
Peewee là một thư viện nhỏ nhưng lại rất hữu ích đối với việc truy cập cơ sở dữ liệu theo cách của một ORM (Object Relational Mapping – là kỹ thuật chuyển đổi dữ liệu giữa các hệ thống khác (không phải là mô hình hướng đối tượng) sang các đối tượng trong ngôn ngữ lập trình hướng đối tượng) , với sự hỗ trợ gốc dành cho SQLite, MySQL, và PostgreSQL.
Tại sao bạn cần đến Peewee: Các ứng dụng mà sử dụng dữ liệu nội bộ theo cách ít quan trọng hơn với đặc trưng sử dụng cơ sở dữ liệu, nhưng nhận và thiết lập dữ liệu từ cơ sở dữ liệu qua các chuỗi kết nối ad hoc đang gặp sự cố.
Peewee cung cấp kết nối tự động, an toàn khi truy cập vào các nguồn dữ liệu, sử dụng một tập hợp các class của Python mà trực giác dành cho các lập trình viên Python và các kỹ sư cơ sở dữ liệu. Với Peewee, cách thức để truy cập vào cơ sở dữ liệu có thể được mở rộng sau tới lựa chọn mạnh mẽ hơn mà không cần phải xóa bỏ và bắt đầu lại. Các quá trình luôn được hỗ trợ, và các mô đun không bắt buộc cung cấp hỗ trợ cho mọi thứ từ connection pooling (là một danh sách thông tin kết nối từ phía máy client đến máy chủ, trong quá trình kết nối, server + ado.net sẽ xác định xem máy khác nào, user name,, password, db nào đã được kết nối trước đó và active lại kết nối …. mà không cần phải mở một process kết nối mới từ phía server) cho đến các kiểu dữ liệu cải tiến như mối quan hệ many-to-many.
Bottle
Bottle là một web framework nhỏ và nhẹ, nhưng cũng khá nhanh.
Tại sao bạn cần đến Bottle: Khi bạn muốn hợp lại các RESTful API hoặc sử dụng các barebone của một web framework để xây dựng một ứng dụng, thì Bottles sẽ là những gì bạn cần. Định tuyến, các template, truy cập để yêu cầu và phản hồi dữ liệu, hỗ trợ nhiều hình thức server từ CGI (Computer-generated imagery – công nghệ mô phỏng hình ảnh bằng máy tính) cũ cho đến mới hơn, và hỗ trợ các tính năng cải tiến hơn như WebSockets.
Invoke
Invoke cho phép bạn thực hiện các nhiệm vụ quản trị đang sử dụng library của Python
Tại sao bạn cần đến Invoke:
Sử dụng Python như là một sự thay thế dành cho các nhiệm vụ shell scripting phổ biến dễ hiểu, và Invoke cung cấp các giải pháp thông thường để thực hiện các nhiệm vụ command-line (dòng lệnh) và quản lý chúng như thể chúng là các hàm của Python, cho phép các mục quan trọng hơn được xây dựng đơn giản xung quanh chúng.
Splinter
Splinter là một thư viện của Python dùng để kiểm thử các ứng dụng web bằng cách tương tác tự động với các ứng dụng.
Tại sao bạn cần đến Splinter: Splinter tự động mọi thứ từ đầu đến cuối, invoke trình duyệt, thông qua các URL, điền các mẫu đơn, nhấp chuột vào các nút v.v…
Splinter đòi hỏi các driver làm việc với các trình duyệt đặc trưng, chứ không phải là Chrome và Firefox, và có thể sử dụng Selenium Remote để điều khiển một trình duyệt đang vận hành ở một nơi nào khác. Thậm chí bạn có thể thực hiện bằng tay JavaScript ở trình duyệt mục tiêu.
Splinter sẽ rất hữu ích nếu bạn muốn tìm ra cách mà các trình duyệt đặc trưng vận hành khi đứng trước một website. Đối với tự động các hoạt động tương tác với website mà không cần có trình duyệt, thì bạn hãy tìm hiểu về Twill.
Arrow
Thư viện Arrow sắp xếp lại việc xử lý thời gian/ngày tháng của Python
Tại sao bạn cần đến Arrow: Để giải quyết với các múi giờ, date conversion, date format v.v…Với thư viện tiêu chuẩn của Python dành cho ngày tháng/thời gian, thì chúng ta còn đau đầu hơn.
Arrow cung cấp 4 tính năng quan trọng, tất cả đều hữu ích về dài hạn lẫn ngắn hạn. Một là, đó là một sự thay thế bất ngờ đối với mô đun thời gian của Python, các lời gọi hàm phổ biến như .now() và .utcnow() vận hành như mong muốn. Hai là, cung cấp các phương pháp dành cho các nhu cầu phổ biến như chuyển đổi múi giờ. Ba là cung cấp thông tin thời gian “nhân tính hóa” – chẳng hạn như có thể nói một điều gì đó đã xảy ra “vào một giờ trước” hoặc sẽ xảy ra “trong vòng hai giờ” mà không cần bỏ ra nhiều công cức. Bốn là có thể khoanh vùng thông tin thời gian mà không tốn một giọt mồ hôi nào.
Nguồn bài viết : http://www.infoworld.com/