研发效能提升利器:5个AI编程助手
Jedi是一个专注于代码自动补全、代码重构、代码搜索和查找引用等功能,而且还是一个用于Python的静态分析工具,通常以IDE /编辑器的插件形式存在。
Jedi 通过一套简单的API 和REPL (Read-Evaluation-Print-Loop,交互式的编程环境,像Python就是天生具备REPL这样的运行环境)来实现上述功能。
Autocompletion(自动补全):
Script.complete()
;Goto/Type Inference:
Script.goto()
、Script.infer()
Static Analysis:
Script.get_names()
、Script.get_syntax_errors()
Refactorings(重构):
Script.rename()
,Script.inline()
,Script.extract_variable()
、Script.extract_function()
Code Search:
Script.search()
andProject.search()
Jedi 的一些基本特性:
能处理复杂的模块/函数/类结构
很好地支持 virtualenv / venv
对Python的类型提示非常有效
理解stub(桩程序)文件
可以为sphinx、epydoc和基本numpydoc等Docstring推断函数参数
支持绝大多数常用的Python特性
总的来说是一个非常可靠的软件,经过了很长时间的改进。
Wing的智能编辑器使Python编码变得又快又简单。在编写代码过程中,Wing 强大的静态和实时的动态代码分析能向开发人员提供适合上下文的帮助、代码补全和智能错误检查,而且可以快速地在一个块、范围或文件中对同一个字符串进行多次选择,或者通过单击编辑器进行多次选择,以便一次性对所有选择进行统一的编辑。编辑器的自动补全程序中提供的代码片段允许快速输入标准代码模板和常用结构。代码段中的字段是通过tab键输入的。相同的代码片段可以采用不同的形式,这取决于调用它的上下文。
Wing的代码警告系统提供了编码错误的早期识别,例如语法错误、未定义的变量和属性、不可解析的导入、缩进错误和不可访问的代码,而Wing的Source Assistant不断更新,以显示类型信息、内联文档、调用提示,并链接到Python文档中,用于编写或访问的代码。Wing可以模拟vi、emacs、Visual Studio、Eclipse、MATLAB和XCode,从而使用户很容易上手。
Wing Auto-editing:在编写代码时,调用辅助自动输入函数和方法参数,允许以tab键切换调用,以便快速、正确地放置参数。将自动删除未更改的默认参数,并相应地重新包装调用。其他可配置的自动编辑操作包括自动关闭圆括号和引号、使用PEP8样式可选的自动间隔、无序输入的自动修复以及在输入新代码时管理块。
重构是一种快速重组代码而不影响其功能的方法。Wing支持重命名和移动符号定义点,从现有代码中提取新的函数或方法、为现有表达式引入变量以及更改符号命名风格。
4. Amazon CodeWhisperer
5. Kite
参考:
https://github.com/features/copilot https://aws.amazon.com/cn/codewhisperer https://github.com/davidhalter/jedi https://wingware.com/wingide/editor BizCook 系统:首个用于工业开发的自动代码生成系统 长篇详细阐述:基于代码的测试生成技术在召回异常问题中的应用实践 2021年,必须知道/采用的七大AI 软件开发/测试工具