Code Faster with Wing IDE
"Wing is one of those 'Just Works' tools" -- Michael Hipp, Hipp & Associates
Wing IDE is a powerful integrated development environment (IDE) for the Python programming language. Many of the features of Wing IDE focus on boosting productivity and code quality, and supporting developers working with complex code.
Auto-completion and Source Assistant
Built on a powerful Python code analysis and type inferencing engine, Wing's auto-completer and Source Assistant provide relevant symbol completion, calltips, and documentation as you work. Using the auto-completer reduces your typing burden and mistakes. The completion options and calltips are always context-appropriate and update immediately as code is edited. Wing offers completions and calltips in the editor, the integrated Python Shell, and the Debug Probe.
Designing Code in the Debug Probe
One of the fastest ways to write new Python code is to work within the live runtime context for which the code is being designed. Wing's debugger lets you pause your application at a particular point in its execution. Auto-completion and calltips, as well as direct command line interaction with the paused process in the Debug Probe, then make it easy to understand and write new code for an unfamiliar or complex Python code base.
Wing IDE can refactor Python code, with support for renaming source symbols, extracting code into a method or function, introducing a variable, and moving the definition of a symbol, method, or function. Renaming works across different modules and classes. Refactoring lets you work with your code at a higher level and is more efficient than manually making edits. The Refactoring tool makes it easy to initiate and undo the supported operations.
The Snippets tool can be used to define templates for commonly used coding constructs. These are listed in the auto-completer and provide convenient inline (within-editor) insertion of arguments. Snippets can be defined for different file types and for different contexts in Python code. For example, a class snippet can differ when entered at the module level or within a function. Snippets are a great way to further reduce typing and to easily comply with coding standards.
Wing's Testing tool provides support for writing, running, and debugging unit tests written for the popular unittest, doctest, nose, pytest, and Django testing frameworks. Working on code through tests is a good way to speed up development and improve code quality because tests can exercise code more quickly and completely than manually starting your application and trying out new functionality. In many cases, the edit/debug cycle is significantly shortened when working through the Testing tool.