IDE Python nào phù hợp với bạn? Bạn có biết cách sử dụng Python IDLE, Komodo, LiClipse, Py- Charm, tiện ích mở rộng Python cho Visual Studio Code, Python Tools cho Visual Studio và Spyder, Hiểu và biết về các tính năng của các công cụ kể trên?
PyCharm
JetBrains tạo ra một loạt IDE cho các ngôn ngữ khác nhau, tất cả đều dựa trên cùng một mã nguồn cốt lõi. PyCharm là IDE Python của họ và nó được xây dựng với mục đích hỗ trợ các nhà phát triển các project và ứng dụng sử dụng những đặc trưng chỉ có trên Python.
VIệc chú ý đến quy trình làm việc này được thể hiện rõ ràng ngay từ khi bạn tạo một project sử dụng PyCharm lần đầu tiên. Bạn được cung cấp tùy chọn thiết lập môi trường ảo từ trình thông dịch mà bạn chọn, với một tệp main.py mẫu trong đó. GUI tiện lợi cho phép bạn cài đặt các mô-đun vào môi trường ảo bằng pip và
IDE thậm chí sẽ tự động phát hiện các tệp tin request.txt và cung cấp tự động cài đặt bất kỳ phần thư viện nào bị thiếu. Rất nhiều các project Python sử dụng trên các trình thông dịch khác bị hao tổn tài nguyên bởi các môi trường ảo xung quanh, vì vậy những tính năng này rất được hoan nghênh.
Bạn sẽ nhận ra ngay những điều mới trên PyCharm chỉ với lần đầu tiên chạy. Ví dụ: nếu bạn chạy một tệp trong project của mình bằng Alt-Shift-F10, PyCharm đề nghị ghi nhớ cấu hình chạy đó để sử dụng trong tương lai. Điều này rất hữu ích cho các project có thể có nhiều điểm đầu vào. Khi bạn mở một phiên bản terminal bên trong PyCharm với một project đã được cài sẵn, PyCharm sẽ tự động kích hoạt môi trường ảo của dự án đó. Đối với người dùng sử dụng máy tính xách tay có công suất thấp, “chế độ tiết kiệm năng lượng” của PyCharm sẽ tắt tính năng phân tích mã nền để giữ cho pin không bị ngốn.
Refactoring lại một project, đó là một công việc tẻ nhạt phổ biến khác, PyCharm cũng có một công cụ chuyên dụng cho việc này. Điều này không chỉ đơn thuần là đổi tên các hàm hoặc phương thức; bạn có thể thay đổi hầu hết mọi khía cạnh của code đã được viết — chẳng hạn như thay đổi chữ ký hàm — và xem bản xem trước về những gì sẽ bị ảnh hưởng trong quá trình này. PyCharm cung cấp các công cụ kiểm tra code của riêng mình, nhưng một trình plugin của bên thứ ba giúp bạn có thể sử dụng Pylint.
Các dự án Python được hưởng lợi từ các bộ test-kit mạnh mẽ, nhưng các nhà phát triển thường trì hoãn việc tạo chúng do có liên quan đến bảng mẫu. Tính năng tạo thử nghiệm tự động của PyCharm cho phép bạn tạo các bộ framework thử nghiệm cho code hiện có, sau đó điền chúng vào các mẫu thử nghiệm nếu cần. Nếu bạn đã có các bài kiểm tra, bạn có thể định cấu hình một profile chạy để thực thi chúng, với sự hỗ trợ cho tất cả các framework kiểm tra phổ biến (pytest, unittest, nose, v.v.). Ngoài ra còn có các phím tắt tự động khác. Đối với một lớp layer, bạn có thể tự động tra cứu những phương thức nào để triển khai hoặc ghi đè khi tạo một lớp con, một lần nữa cắt bớt trên bảng tạo sẵn.
PyCharm có thể được mở rộng và tinh chỉnh rất nhiều nhờ hàng nghìn plug-in có sẵn cho nó, có thể được cài đặt trực tiếp thông qua giao diện người dùng của PyCharm. Điều này bao gồm hỗ trợ cho dữ liệu hoặc định dạng văn bản phổ biến được sử dụng với Python (CSV, Markdown), công cụ của bên thứ ba (Docker) và hỗ trợ cho các ngôn ngữ khác (R, Rust).
Phiên bản cộng đồng của PyCharm bao gồm hầu hết các tính năng tốt, nhưng phiên bản chuyên nghiệp có trả phí bổ sung một số tính năng chính hữu ích trong cài đặt doanh nghiệp, chẳng hạn như hỗ trợ Cython sẵn có, công cụ phân tích code và lập profile.
Phần mở rộng Python cho Visual Studio Code
Sự phát triển bùng nổ và sự phổ biến của Mic- rosoft’s Visual Studio Code đã thúc đẩy sự phát triển cho các tiện ích bổ sung hỗ trợ hầu hết mọi ngôn ngữ lập trình và định dạng dữ liệu hiện có. Tiện ích bổ sung Python nổi tiếng nhất của VS Code cũng được phát triển bởi Microsoft, cùng với trình soạn thảo và tiện ích bổ sung này tạo nên một trong những giải pháp tốt nhất hiện có để phát triển Python.
Khi được cài đặt, tiện ích mở rộng Python của
Microsoft cũng cài đặt hỗ trợ cho Jupyter Notebook, để có thể mở và sử dụng trực tiếp trong trình chỉnh sửa. Phần mở rộng Python cũng cung cấp Pylance, một máy chủ ngôn ngữ cung cấp tính năng kiểm tra kiểu in và viết bằng cách sử dụng công cụ Pyright. Các thành phần này cùng nhau cung cấp một giải pháp đầy đủ cho nhà phát triển.
Một nhược điểm lớn với tiện ích mở rộng Python cho VS Code là thiếu quy trình thiết lập chung, để tạo một dự án Python mới và định cấu hình tất cả các phần tử của nó. Mỗi bước phải được thực hiện theo cách thủ công: tạo môi trường ảo, cấu hình đường dẫn, v.v. Nó cũng thiếu tích hợp toàn diện cho các công cụ quản lý dự án Python như Pipenv. Bạn hoàn toàn có thể thiết lập chúng bằng tay từ cửa sổ dòng lệnh cho một project nhất định. Và trong khi hỗ trợ cho một số framework riêng lẻ tồn tại — ví dụ: hỗ trợ gỡ lỗi cho các mẫu Django — các framework đó vẫn phải được định cấu hình theo cách thủ công.
Mặt tích cực, VS Code tự động phát hiện các môi trường ảo trong thư mục của project và cố gắng sử dụng chúng bất cứ khi nào bạn mở cửa sổ terminal trong trình soạn thảo. Điều này giúp tiết kiệm những rắc rối khi phải kích hoạt môi trường theo cách thủ công. VS Code cũng có thể phát hiện các môi trường ảo được tạo bằng công cụ quản lý dự án Python.
Một tính năng mạnh mẽ khác trong VS Code, bảng lệnh - command palatte Ctrl+P, cho phép bạn tìm thấy bất kỳ lệnh hoặc cài đặt nào bằng cách chỉ cần gõ một hoặc hai từ. Bắt đầu cụm từ tìm kiếm của bạn bằng “Py” hoặc “Python” và bạn sẽ nhận được kết quả tập trung hơn nữa. Và nhiều loại linters và công cụ định dạng mã được hỗ trợ trong phần mở rộng Python.
Một điều VS Code hỗ trợ tốt với phần mở rộng Python là khám phá và thực hiện việc test lỗi theo từng unit. Cả bản gốc của Python và pytest của bên thứ ba đều được hỗ trợ
Chạy lệnh “Python: Discover tests” từ palette và nó sẽ đi qua quá trình khám phá các bài kiểm tra và thiết lập nút chạy kiểm tra trên thanh trạng thái ở phía dưới. Các bài kiểm tra riêng lẻ thậm chí còn có các dòng chú thích cho phép bạn chạy lại hoặc gỡ lỗi chúng.
Phần mở rộng Python tập trung vào các phần được sử dụng rộng rãi nhất của Python và để lại nhiều cơ hội cho các nhà phát triển thứ ba. Ví dụ: không có hỗ trợ cho superset Cython của Python, hay là tiện tích cho phép bạn biên dịch Python thành C. Một tiện ích mở rộng của bên thứ ba cung cấp tính năng làm nổi bật cú pháp Cython, nhưng không có tích hợp thực tế của quy trình làm việc Cython.
Điều tốt nhất về tiện ích mở rộng Python cho Visual Studio Code là nhà phát triển sẽ được lợi từ tính linh hoạt và văn hóa sử dụng rộng rãi của các tiện ích mở rộng có sẵn cho VS Code nói chung. Ví dụ: các liên kết chính có thể được ánh xạ qua lại tự do giữa các code khác nhau và bất kỳ số lượng hay chủ đề nào.
Công cụ Python cho Visual Studio 2019
Nếu bạn đã sử dụng Visual Studio ở một số code và đang có ý định thêm Python vào bộ sưu tập của mình, thì việc sử dụng tiện ích bổ sung Python Tools cho Vi- sual Studio là hoàn toàn hợp lý. Plug-in mã nguồn mở của Microsoft cung cấp quyền truy cập từ thư viện có sẵn vào một số framework Python phổ biến và nó cung cấp các chức năng gỡ lỗi và triển khai Python thông qua giao diện của Visual Studio theo cách giống như bất kỳ ngôn ngữ nào khác.
Khi Visual Studio 2015 ra đời, Martin Heller của In- foWorld đã gây ấn tượng bởi cách coi các ngôn ngữ mã
nguồn mở như những công dân hạng nhất ngay bên cạnh ngôn ngữ của Microsoft. Những ngôn ngữ đó bao gồm Python và với mức độ hỗ trợ ngày càng cao mà Visual Studio hiện cung cấp cho Python, chúng ta nên coi trọng Visual Studio như một môi trường dành cho nhà phát triển, bất kể bạn đang xây dựng loại dự án nào.
Có hai cách để thiết lập Python trên Visual Studio. Bạn có thể thêm công cụ Python vào bản cài đặt Visual Studio hiện có hoặc bạn có thể tải xuống bản cài đặt Visual Studio từ đầu và tự động thêm công cụ Python.
Ngoài ra, Python cho Visual Studio có thể bạn sẽ muốn tạo các dự án sử dụng một số framework Python được sử dụng rộng rãi như: Flask, Flask with Jade, Django và Bottle microframework. Visual Studio cũng có sẵn
các mẫu cho các web service, một ứng dụng dòng lệnh đơn giản, một ứng dụng lõi Windows IoT sử dụng Python và một tùy chọn để tạo các dự án Visual Studio từ mã Python hiện có. Chúng ta ắt hẳn rất vui khi thấy các mẫu cho IronPython, cổng Python được hồi sinh chạy trên .NET framework.
Python runtime cũng có thể được cài đặt tự động (Python 3.7.8 và Python 2.7.18, 32-bit hoặc 64-bit). Bạn thậm chí có thể cài đặt Miniconda, phiên bản nhỏ gọn của Anaconda, cho các dự án cần sử dụng đến phân tích dữ liệu dùng code Python.
Cũng phải kể đến các mẫu có sẵn cho các project Scikit-learning, sử dụng hệ thống tạo project mẫu cookiecut- ter, các mô hình học máy như PyTorch
Khi bạn tạo một dự án mới bằng cách sử dụng một trong các framework này, Visual Studio sẽ kiểm tra để đảm bảo rằng bạn đã có sẵn các phần phụ thuộc. Nếu không, nó giới thiệu cho bạn một vài sự lựa chọn. Bạn có thể tạo một môi trường ảo Python và đặt các gói cần thiết ở đó. Bạn có thể cài đặt các gói vào trình thông dịch Python có sẵn trên toàn hệ thống. Hoặc bạn có thể thêm các phụ thuộc vào dự án theo cách thủ công.
Một điểm thú vị là Visual Studio ghi lại tất cả các bước cần thực hiện khi thiết lập một dự án, vì vậy bạn biết những thay đổi nào đã được thực hiện và mọi thứ nằm ở đâu. Visual Studio cũng phát hiện thông minh sự hiện diện của các tệp tin request.txt và có thể tạo môi trường ảo cho project của bạn với các yêu cầu đó được cài đặt sẵn. Nếu bạn đang chuyển một project hiện có bao gồm môi trường ảo, chúng cũng sẽ được tự động phát hiện và đưa vào.
Visual Studio’s Solution Explorer không chỉ chứa các tệp được liên kết với mỗi project Python của bạn mà còn chứa môi trường Python đi kèm, cũng như bất kỳ gói Python nào được cài đặt trong đó. Nhấp chuột phải vào môi trường và bạn có thể cài đặt các gói một cách tự động, tạo tệp theo yêu cầu hoặc thêm thư mục, lưu trữ Zip hoặc tệp vào đường dẫn tìm kiếm của project. Visual Studio tự động tạo chỉ mục IntelliSense cho môi trường đã cài đặt, do đó, nó sẽ tự đưa ra các đề xuất nhanh của trình chỉnh sửa dựa trên những gì được cài đặt trong toàn bộ môi trường Python.
Có rất nhiều kỹ thuật thông minh để làm việc với phép ẩn dụ của Visual Studio. Khi bạn khởi chạy ứng dụng web để test, thông qua biểu tượng khởi chạy mũi tên màu xanh lục trên thanh công cụ, trình khởi chạy ứng dụng của Visual Studio bật lên mở trình duyệt web mặc định (hoặc trình duyệt bạn chọn) và trỏ nó vào địa chỉ và cổng của ứng dụng. Menu Build có tùy chọn Publish có thể triển khai ứng dụng của bạn trên nhiều dịch vụ đám mây khác nhau, bao gồm cả Azure của Microsoft.
Công cụ Python cho Visual Studio cung cấp một cơ sở tích hợp để chạy các trình phân tích mã Pylint và Mypy. Cũng như các tính năng khác của Visual Studio phụ thuộc vào các gói bên ngoài, Visual Studio sẽ cố gắng cài đặt một trong các gói đó nếu bạn chưa thiết lập chúng. Bạn cũng có thể thiết lập linters bằng tay trong môi trường ảo của mình.
Nhược điểm có lẽ là Python cho Visual Studio không có hỗ trợ cho Cython, project cho phép các module Py- thon được biên dịch thành phần mở rộng C, DLL và các tệp thực thi độc lập.
Cython sử dụng Visual Studio làm một trong những trình biên dịch của nó, nhưng không có hỗ trợ cho các tệp định dạng Cython trong Công cụ Python dành cho Visual Studio, cũng như hỗ trợ trực tiếp để biên dịch các module Cython trong Visual Studio.
Spyder
Hầu hết các IDE Python đều có mục đích chung, có nghĩa là chúng phù hợp với bất kỳ loại hình nhà phát triển Python nào — hoặc để phát triển bằng các ngôn ngữ khác cùng với Python. Spyder tập trung vào việc cung cấp IDE cho công việc khoa học hơn là phát triển web hoặc các ứng dụng dòng lệnh. Trọng tâm đó làm cho Spyder kém linh hoạt hơn so với các IDE khác được nêu ở đây, đặc biệt là vì nó không có khả năng mở rộng phạm vi từ các framwork của bên thứ ba ngay lập tức, nhưng nó vẫn khá mạnh mẽ đối với các tiện tích tương thích khác.
Bản thân Spyder được viết bằng Python. Đây có thể là điểm kỳ quặc lớn nhất hoặc tính năng tốt nhất của nó, tùy thuộc vào cách bạn tạo khung cho nó. Mặc dù nó làm cho Spyder có thể chạy mọi code Python được nhưng đối với các nhà phát triển, nó cũng khiến Spyder khó sử dụng như một ứng dụng độc lập. Nó chủ yếu nhằm mục đích được sử dụng trong bản Anaconda Python (hoặc bản WinPython di động), nơi Anaconda cung cấp nhiều tính năng quản lý dự án mà Spyder thiếu.
Có thể cài đặt Spyder độc lập, nhưng nhược điểm chính là không có cấu hình cho mỗi project. Điều này chủ yếu có nghĩa là không có cách nào dễ dàng để cấu hình Spyder hoạt động với bất kỳ môi trường ảo nào của project nhất định khi bạn khởi chạy project mới; bạn chỉ có thể cấu hình toàn bộ Spyder để làm việc với một môi trường ảo cụ thể.
Một cách tiếp cận khác là tạo một môi trường làm việc ảo và cài đặt Spyder vào đó, và khởi chạy Spyder từ bên trong nó. Tuy nhiên, điều này yêu cầu cài đặt hàng chục gói có tổng dung lượng trên 400MB, vì vậy có thể không thực tế cho nhiều dự án project phổ thông. Một nhược điểm khác: Bất kể phương pháp thiết lập nào, Spyder sẽ mất nhiều thời gian để khởi chạy hơn so với các IDE khác được nêu ở trên.
Tuy nhiên, Spyder tỏa sáng trong việc làm cho các công cụ tính toán khoa học của Python. Phía bên trái của giao diện người dùng có màn hình hierchical / trình chỉnh sửa tab. Nhưng phía bên tay phải có hai ô tab dành cho các công cụ trực quan và tương tác. IPython Notebook và Jupyter chạy trong ngăn riêng của chúng, cùng với các ô đồ họa được tạo sẵn.
Chúng ta có thể đặc biệt thích trình khám phá biến hiển thị và cho phép ta chỉnh sửa, tương tác với tất cả các biến do người dùng tạo trong phiên IPython. Ta cũng thích ngăn trình biên dịch tích hợp, nơi cho phép ta xem thống kê về những phần nào trong chương trình mất nhiều thời gian nhất để chạy.
Tất cả các ràng buộc chính trong Spyder đều có thể định cấu hình, bao gồm cả những ràng buộc cho các ngăn khác với trình soạn thảo (ví dụ: dạng xem biểu đồ). Nhưng ở đây một lần nữa, các ràng buộc chính chỉ có thể được định cấu hình trên cơ sở toàn trình biên tập.
PyCharm
JetBrains tạo ra một loạt IDE cho các ngôn ngữ khác nhau, tất cả đều dựa trên cùng một mã nguồn cốt lõi. PyCharm là IDE Python của họ và nó được xây dựng với mục đích hỗ trợ các nhà phát triển các project và ứng dụng sử dụng những đặc trưng chỉ có trên Python.
VIệc chú ý đến quy trình làm việc này được thể hiện rõ ràng ngay từ khi bạn tạo một project sử dụng PyCharm lần đầu tiên. Bạn được cung cấp tùy chọn thiết lập môi trường ảo từ trình thông dịch mà bạn chọn, với một tệp main.py mẫu trong đó. GUI tiện lợi cho phép bạn cài đặt các mô-đun vào môi trường ảo bằng pip và
IDE thậm chí sẽ tự động phát hiện các tệp tin request.txt và cung cấp tự động cài đặt bất kỳ phần thư viện nào bị thiếu. Rất nhiều các project Python sử dụng trên các trình thông dịch khác bị hao tổn tài nguyên bởi các môi trường ảo xung quanh, vì vậy những tính năng này rất được hoan nghênh.
Bạn sẽ nhận ra ngay những điều mới trên PyCharm chỉ với lần đầu tiên chạy. Ví dụ: nếu bạn chạy một tệp trong project của mình bằng Alt-Shift-F10, PyCharm đề nghị ghi nhớ cấu hình chạy đó để sử dụng trong tương lai. Điều này rất hữu ích cho các project có thể có nhiều điểm đầu vào. Khi bạn mở một phiên bản terminal bên trong PyCharm với một project đã được cài sẵn, PyCharm sẽ tự động kích hoạt môi trường ảo của dự án đó. Đối với người dùng sử dụng máy tính xách tay có công suất thấp, “chế độ tiết kiệm năng lượng” của PyCharm sẽ tắt tính năng phân tích mã nền để giữ cho pin không bị ngốn.
Refactoring lại một project, đó là một công việc tẻ nhạt phổ biến khác, PyCharm cũng có một công cụ chuyên dụng cho việc này. Điều này không chỉ đơn thuần là đổi tên các hàm hoặc phương thức; bạn có thể thay đổi hầu hết mọi khía cạnh của code đã được viết — chẳng hạn như thay đổi chữ ký hàm — và xem bản xem trước về những gì sẽ bị ảnh hưởng trong quá trình này. PyCharm cung cấp các công cụ kiểm tra code của riêng mình, nhưng một trình plugin của bên thứ ba giúp bạn có thể sử dụng Pylint.
Các dự án Python được hưởng lợi từ các bộ test-kit mạnh mẽ, nhưng các nhà phát triển thường trì hoãn việc tạo chúng do có liên quan đến bảng mẫu. Tính năng tạo thử nghiệm tự động của PyCharm cho phép bạn tạo các bộ framework thử nghiệm cho code hiện có, sau đó điền chúng vào các mẫu thử nghiệm nếu cần. Nếu bạn đã có các bài kiểm tra, bạn có thể định cấu hình một profile chạy để thực thi chúng, với sự hỗ trợ cho tất cả các framework kiểm tra phổ biến (pytest, unittest, nose, v.v.). Ngoài ra còn có các phím tắt tự động khác. Đối với một lớp layer, bạn có thể tự động tra cứu những phương thức nào để triển khai hoặc ghi đè khi tạo một lớp con, một lần nữa cắt bớt trên bảng tạo sẵn.
PyCharm có thể được mở rộng và tinh chỉnh rất nhiều nhờ hàng nghìn plug-in có sẵn cho nó, có thể được cài đặt trực tiếp thông qua giao diện người dùng của PyCharm. Điều này bao gồm hỗ trợ cho dữ liệu hoặc định dạng văn bản phổ biến được sử dụng với Python (CSV, Markdown), công cụ của bên thứ ba (Docker) và hỗ trợ cho các ngôn ngữ khác (R, Rust).
Phiên bản cộng đồng của PyCharm bao gồm hầu hết các tính năng tốt, nhưng phiên bản chuyên nghiệp có trả phí bổ sung một số tính năng chính hữu ích trong cài đặt doanh nghiệp, chẳng hạn như hỗ trợ Cython sẵn có, công cụ phân tích code và lập profile.
Phần mở rộng Python cho Visual Studio Code
Sự phát triển bùng nổ và sự phổ biến của Mic- rosoft’s Visual Studio Code đã thúc đẩy sự phát triển cho các tiện ích bổ sung hỗ trợ hầu hết mọi ngôn ngữ lập trình và định dạng dữ liệu hiện có. Tiện ích bổ sung Python nổi tiếng nhất của VS Code cũng được phát triển bởi Microsoft, cùng với trình soạn thảo và tiện ích bổ sung này tạo nên một trong những giải pháp tốt nhất hiện có để phát triển Python.
Khi được cài đặt, tiện ích mở rộng Python của
Microsoft cũng cài đặt hỗ trợ cho Jupyter Notebook, để có thể mở và sử dụng trực tiếp trong trình chỉnh sửa. Phần mở rộng Python cũng cung cấp Pylance, một máy chủ ngôn ngữ cung cấp tính năng kiểm tra kiểu in và viết bằng cách sử dụng công cụ Pyright. Các thành phần này cùng nhau cung cấp một giải pháp đầy đủ cho nhà phát triển.
Một nhược điểm lớn với tiện ích mở rộng Python cho VS Code là thiếu quy trình thiết lập chung, để tạo một dự án Python mới và định cấu hình tất cả các phần tử của nó. Mỗi bước phải được thực hiện theo cách thủ công: tạo môi trường ảo, cấu hình đường dẫn, v.v. Nó cũng thiếu tích hợp toàn diện cho các công cụ quản lý dự án Python như Pipenv. Bạn hoàn toàn có thể thiết lập chúng bằng tay từ cửa sổ dòng lệnh cho một project nhất định. Và trong khi hỗ trợ cho một số framework riêng lẻ tồn tại — ví dụ: hỗ trợ gỡ lỗi cho các mẫu Django — các framework đó vẫn phải được định cấu hình theo cách thủ công.
Mặt tích cực, VS Code tự động phát hiện các môi trường ảo trong thư mục của project và cố gắng sử dụng chúng bất cứ khi nào bạn mở cửa sổ terminal trong trình soạn thảo. Điều này giúp tiết kiệm những rắc rối khi phải kích hoạt môi trường theo cách thủ công. VS Code cũng có thể phát hiện các môi trường ảo được tạo bằng công cụ quản lý dự án Python.
Một tính năng mạnh mẽ khác trong VS Code, bảng lệnh - command palatte Ctrl+P, cho phép bạn tìm thấy bất kỳ lệnh hoặc cài đặt nào bằng cách chỉ cần gõ một hoặc hai từ. Bắt đầu cụm từ tìm kiếm của bạn bằng “Py” hoặc “Python” và bạn sẽ nhận được kết quả tập trung hơn nữa. Và nhiều loại linters và công cụ định dạng mã được hỗ trợ trong phần mở rộng Python.
Một điều VS Code hỗ trợ tốt với phần mở rộng Python là khám phá và thực hiện việc test lỗi theo từng unit. Cả bản gốc của Python và pytest của bên thứ ba đều được hỗ trợ
Chạy lệnh “Python: Discover tests” từ palette và nó sẽ đi qua quá trình khám phá các bài kiểm tra và thiết lập nút chạy kiểm tra trên thanh trạng thái ở phía dưới. Các bài kiểm tra riêng lẻ thậm chí còn có các dòng chú thích cho phép bạn chạy lại hoặc gỡ lỗi chúng.
Phần mở rộng Python tập trung vào các phần được sử dụng rộng rãi nhất của Python và để lại nhiều cơ hội cho các nhà phát triển thứ ba. Ví dụ: không có hỗ trợ cho superset Cython của Python, hay là tiện tích cho phép bạn biên dịch Python thành C. Một tiện ích mở rộng của bên thứ ba cung cấp tính năng làm nổi bật cú pháp Cython, nhưng không có tích hợp thực tế của quy trình làm việc Cython.
Điều tốt nhất về tiện ích mở rộng Python cho Visual Studio Code là nhà phát triển sẽ được lợi từ tính linh hoạt và văn hóa sử dụng rộng rãi của các tiện ích mở rộng có sẵn cho VS Code nói chung. Ví dụ: các liên kết chính có thể được ánh xạ qua lại tự do giữa các code khác nhau và bất kỳ số lượng hay chủ đề nào.
Công cụ Python cho Visual Studio 2019
Nếu bạn đã sử dụng Visual Studio ở một số code và đang có ý định thêm Python vào bộ sưu tập của mình, thì việc sử dụng tiện ích bổ sung Python Tools cho Vi- sual Studio là hoàn toàn hợp lý. Plug-in mã nguồn mở của Microsoft cung cấp quyền truy cập từ thư viện có sẵn vào một số framework Python phổ biến và nó cung cấp các chức năng gỡ lỗi và triển khai Python thông qua giao diện của Visual Studio theo cách giống như bất kỳ ngôn ngữ nào khác.
Khi Visual Studio 2015 ra đời, Martin Heller của In- foWorld đã gây ấn tượng bởi cách coi các ngôn ngữ mã
nguồn mở như những công dân hạng nhất ngay bên cạnh ngôn ngữ của Microsoft. Những ngôn ngữ đó bao gồm Python và với mức độ hỗ trợ ngày càng cao mà Visual Studio hiện cung cấp cho Python, chúng ta nên coi trọng Visual Studio như một môi trường dành cho nhà phát triển, bất kể bạn đang xây dựng loại dự án nào.
Có hai cách để thiết lập Python trên Visual Studio. Bạn có thể thêm công cụ Python vào bản cài đặt Visual Studio hiện có hoặc bạn có thể tải xuống bản cài đặt Visual Studio từ đầu và tự động thêm công cụ Python.
Ngoài ra, Python cho Visual Studio có thể bạn sẽ muốn tạo các dự án sử dụng một số framework Python được sử dụng rộng rãi như: Flask, Flask with Jade, Django và Bottle microframework. Visual Studio cũng có sẵn
các mẫu cho các web service, một ứng dụng dòng lệnh đơn giản, một ứng dụng lõi Windows IoT sử dụng Python và một tùy chọn để tạo các dự án Visual Studio từ mã Python hiện có. Chúng ta ắt hẳn rất vui khi thấy các mẫu cho IronPython, cổng Python được hồi sinh chạy trên .NET framework.
Python runtime cũng có thể được cài đặt tự động (Python 3.7.8 và Python 2.7.18, 32-bit hoặc 64-bit). Bạn thậm chí có thể cài đặt Miniconda, phiên bản nhỏ gọn của Anaconda, cho các dự án cần sử dụng đến phân tích dữ liệu dùng code Python.
Cũng phải kể đến các mẫu có sẵn cho các project Scikit-learning, sử dụng hệ thống tạo project mẫu cookiecut- ter, các mô hình học máy như PyTorch
Khi bạn tạo một dự án mới bằng cách sử dụng một trong các framework này, Visual Studio sẽ kiểm tra để đảm bảo rằng bạn đã có sẵn các phần phụ thuộc. Nếu không, nó giới thiệu cho bạn một vài sự lựa chọn. Bạn có thể tạo một môi trường ảo Python và đặt các gói cần thiết ở đó. Bạn có thể cài đặt các gói vào trình thông dịch Python có sẵn trên toàn hệ thống. Hoặc bạn có thể thêm các phụ thuộc vào dự án theo cách thủ công.
Một điểm thú vị là Visual Studio ghi lại tất cả các bước cần thực hiện khi thiết lập một dự án, vì vậy bạn biết những thay đổi nào đã được thực hiện và mọi thứ nằm ở đâu. Visual Studio cũng phát hiện thông minh sự hiện diện của các tệp tin request.txt và có thể tạo môi trường ảo cho project của bạn với các yêu cầu đó được cài đặt sẵn. Nếu bạn đang chuyển một project hiện có bao gồm môi trường ảo, chúng cũng sẽ được tự động phát hiện và đưa vào.
Visual Studio’s Solution Explorer không chỉ chứa các tệp được liên kết với mỗi project Python của bạn mà còn chứa môi trường Python đi kèm, cũng như bất kỳ gói Python nào được cài đặt trong đó. Nhấp chuột phải vào môi trường và bạn có thể cài đặt các gói một cách tự động, tạo tệp theo yêu cầu hoặc thêm thư mục, lưu trữ Zip hoặc tệp vào đường dẫn tìm kiếm của project. Visual Studio tự động tạo chỉ mục IntelliSense cho môi trường đã cài đặt, do đó, nó sẽ tự đưa ra các đề xuất nhanh của trình chỉnh sửa dựa trên những gì được cài đặt trong toàn bộ môi trường Python.
Có rất nhiều kỹ thuật thông minh để làm việc với phép ẩn dụ của Visual Studio. Khi bạn khởi chạy ứng dụng web để test, thông qua biểu tượng khởi chạy mũi tên màu xanh lục trên thanh công cụ, trình khởi chạy ứng dụng của Visual Studio bật lên mở trình duyệt web mặc định (hoặc trình duyệt bạn chọn) và trỏ nó vào địa chỉ và cổng của ứng dụng. Menu Build có tùy chọn Publish có thể triển khai ứng dụng của bạn trên nhiều dịch vụ đám mây khác nhau, bao gồm cả Azure của Microsoft.
Công cụ Python cho Visual Studio cung cấp một cơ sở tích hợp để chạy các trình phân tích mã Pylint và Mypy. Cũng như các tính năng khác của Visual Studio phụ thuộc vào các gói bên ngoài, Visual Studio sẽ cố gắng cài đặt một trong các gói đó nếu bạn chưa thiết lập chúng. Bạn cũng có thể thiết lập linters bằng tay trong môi trường ảo của mình.
Nhược điểm có lẽ là Python cho Visual Studio không có hỗ trợ cho Cython, project cho phép các module Py- thon được biên dịch thành phần mở rộng C, DLL và các tệp thực thi độc lập.
Cython sử dụng Visual Studio làm một trong những trình biên dịch của nó, nhưng không có hỗ trợ cho các tệp định dạng Cython trong Công cụ Python dành cho Visual Studio, cũng như hỗ trợ trực tiếp để biên dịch các module Cython trong Visual Studio.
Spyder
Hầu hết các IDE Python đều có mục đích chung, có nghĩa là chúng phù hợp với bất kỳ loại hình nhà phát triển Python nào — hoặc để phát triển bằng các ngôn ngữ khác cùng với Python. Spyder tập trung vào việc cung cấp IDE cho công việc khoa học hơn là phát triển web hoặc các ứng dụng dòng lệnh. Trọng tâm đó làm cho Spyder kém linh hoạt hơn so với các IDE khác được nêu ở đây, đặc biệt là vì nó không có khả năng mở rộng phạm vi từ các framwork của bên thứ ba ngay lập tức, nhưng nó vẫn khá mạnh mẽ đối với các tiện tích tương thích khác.
Bản thân Spyder được viết bằng Python. Đây có thể là điểm kỳ quặc lớn nhất hoặc tính năng tốt nhất của nó, tùy thuộc vào cách bạn tạo khung cho nó. Mặc dù nó làm cho Spyder có thể chạy mọi code Python được nhưng đối với các nhà phát triển, nó cũng khiến Spyder khó sử dụng như một ứng dụng độc lập. Nó chủ yếu nhằm mục đích được sử dụng trong bản Anaconda Python (hoặc bản WinPython di động), nơi Anaconda cung cấp nhiều tính năng quản lý dự án mà Spyder thiếu.
Có thể cài đặt Spyder độc lập, nhưng nhược điểm chính là không có cấu hình cho mỗi project. Điều này chủ yếu có nghĩa là không có cách nào dễ dàng để cấu hình Spyder hoạt động với bất kỳ môi trường ảo nào của project nhất định khi bạn khởi chạy project mới; bạn chỉ có thể cấu hình toàn bộ Spyder để làm việc với một môi trường ảo cụ thể.
Một cách tiếp cận khác là tạo một môi trường làm việc ảo và cài đặt Spyder vào đó, và khởi chạy Spyder từ bên trong nó. Tuy nhiên, điều này yêu cầu cài đặt hàng chục gói có tổng dung lượng trên 400MB, vì vậy có thể không thực tế cho nhiều dự án project phổ thông. Một nhược điểm khác: Bất kể phương pháp thiết lập nào, Spyder sẽ mất nhiều thời gian để khởi chạy hơn so với các IDE khác được nêu ở trên.
Tuy nhiên, Spyder tỏa sáng trong việc làm cho các công cụ tính toán khoa học của Python. Phía bên trái của giao diện người dùng có màn hình hierchical / trình chỉnh sửa tab. Nhưng phía bên tay phải có hai ô tab dành cho các công cụ trực quan và tương tác. IPython Notebook và Jupyter chạy trong ngăn riêng của chúng, cùng với các ô đồ họa được tạo sẵn.
Chúng ta có thể đặc biệt thích trình khám phá biến hiển thị và cho phép ta chỉnh sửa, tương tác với tất cả các biến do người dùng tạo trong phiên IPython. Ta cũng thích ngăn trình biên dịch tích hợp, nơi cho phép ta xem thống kê về những phần nào trong chương trình mất nhiều thời gian nhất để chạy.
Tất cả các ràng buộc chính trong Spyder đều có thể định cấu hình, bao gồm cả những ràng buộc cho các ngăn khác với trình soạn thảo (ví dụ: dạng xem biểu đồ). Nhưng ở đây một lần nữa, các ràng buộc chính chỉ có thể được định cấu hình trên cơ sở toàn trình biên tập.