IDE
源代码文件的本质就是具有规范格式地、写给电脑看的文本文件,因此编写代码的本质就是在具有特殊功能的文本编辑器里给电脑写文章,教电脑干活。
IDE(Integrated Development Environment),集成开发环境,一般包括代码编辑器、编译器、调试器和图形用户界面,所有具备这一特性的软件与软件套装都可以是IDE。针对不同编程语言的IDE会需求不同的基本功能,也存在同时支持许多语言的IDE。
精良的IDE可以在编译期之前就通过静态检查发现错误,可以提供智能代码补全,可以自动进行代码的格式化,总之省不少的事。因此,除非实在没有条件,否则不要尝试手写代码,不要尝试记事本写代码,不要尝试Word写代码,灰常感谢。
Visual Studio Code
Visual Studio Code(简称 VS Code)是一款开源的、免费的、跨平台的、轻量级的代码编辑器,它可以在 Windows、macOS 和 Linux 上运行,支持几乎所有主流的开发语言的语法高亮、智能代码补全、自定义热键、括号匹配、代码片段、代码对比、Git 等特性,以及针对 Web 和云应用开发的优化和扩展。
VS Code 的核心思想是,提供一个快速、简洁、可配置、可扩展的代码编辑器,让开发者可以在任何地方、任何时候、任何语言、任何平台上轻松地编写和运行代码,无需安装和配置复杂的开发环境,也无需依赖和等待庞大的 IDE。
VS Code 是基于 Electron 框架、Node.js、TypeScript 和 Language Server Protocol 构建的,它的源代码完全开放,你可以在 GitHub 上查看或修改它,也可以参与它的社区和贡献,或者提出你的建议和反馈。因此,你常常能看到基于VSCode二次开发的细分领域中的专用IDE,例如腾讯推出的用来开发微信小程序的工具。VS Code 每月更新一次,它的扩展生态系统也非常丰富,你可以在 VS Code Marketplace 上找到数千个免费的扩展,来增强你的开发体验和能力。
Visual Studio
Visual Studio(简称 VS)是一款闭源的、付费的、平台限定的、重量级的集成开发环境(IDE),它主要在 Windows 和 macOS 上运行,提供了一整套的开发工具和组件,包括代码编辑器、编译器、调试器、测试工具、数据库工具、图形设计器、UML 工具、代码分析工具、代码重构工具、代码管理工具、云服务工具等,以及针对不同开发目标的工作负载和模板,如 .NET、C++、Python、Java、Web、移动、桌面、游戏、机器学习、数据科学等。
VS 的核心思想是,提供一个完整、强大、全面的开发环境,让开发者可以在一个统一的界面和流程中完成整个软件开发的生命周期,从设计、编码、调试、测试、部署到维护,无需切换和集成多个开发工具和平台,也无需担心开发环境的兼容性和稳定性。
VS 是基于 .NET Framework 和 .NET Core 构建的,它的源代码不公开,你需要购买它的许可证才能使用它,或者使用它的免费版本 Visual Studio Community,但有一些使用限制。VS 不定期更新,它的扩展生态系统也比较成熟,你可以在 Visual Studio Marketplace 上找到一些免费或付费的扩展,来增加你的开发功能和效率。
关于VS和VSCode
之间的区别与联系具体可参见https://blog.csdn.net/codingpy/article/details/135121281
JetBrains全家桶
JetBrains公司为每一种或一类语言制作大型的重量级IDE,例如开发Python的Pycharm、开发Java的IDEA、开发C/C++的CLion和网站相关的WebStorm和PhpStorm。
但是其中部分IDE需要非商用使用才能免费,另外一些IDE提供免费但功能阉割的社区版。如果你是学生的话则可以免费使用全套完整IDE,否则的话,这些IDE的确价格不菲……
另外,JetBrains的插件市场中的许多插件是付费插件,且往往无法享受学生优惠,具体如何选择还需要交由开发者自行定夺了。
如果决定使用JetBrains的全家桶,可以先前往JetBrains的网站安装JetBrains Toolbox,然后可以从ToolBox中方便地管理他们家的所有IDE和使用这些IDE打开过的项目。
AI IDE?
VS Code有GitHub Copilot,JetBrains有JetBrains AI,有Cursor,还有Trae,这些推崇AI编程理念的插件、工具乃至AI IDE似乎将要重塑程序开发流程。
但,作为编程语言的学习者,不建议在一开始就过度依赖这些AI工具。
截至目前,AI在代码编写方面能够给与你的帮助,几乎完全局限于已有丰富参考资料的领域,例如随便哪个AI都能快速生成随便哪个语言的知名框架的基础项目结构,然后帮你把模板填充好。
AI很厉害,但是在AI出现之前,矜矜业业的程序员前辈们也很厉害。他们用代码开创全新的领域,用初级的逻辑封装出强大的模块,现在的AI能够帮助我们快速理解并熟练应用这些前辈铺设好的地基。
接下来,能靠这些地基做出什么样的上层建筑,就要靠接过接力棒的我们了。在全新的未知领域中,AI不及我们一样灵活且强大。
Trae能够在两分钟内生成一个完备可用的Chrome插件模板,而这个模板能否成长为一个健壮的插件,靠的就不仅是Trae了,还有正在操作Trae的你。