JetBrain 发布 Clion 1.0:C 和 C++ 语言的跨平台 IDE

  • 李小兵

2015 年 4 月 21 日

话题:语言 & 开发架构其他

CLion是 JetBrains 推出的全新 C/C++ 跨平台集成开发环境。近日,从 Jetbrains 的官方博客中得知,CLion 1.0 正式版发布,它是 CLion 第一个发布版本。CLion 1.0 使用CMake作为构建系统、集成了调试器 GDB以及一些流行的版本控制器,如SVNGitGitHub等。同时,该版本还增强了代码编辑功能,如一键导航、代码自动补全、代码分析等。CLion 1.0 带来的主要特征如下:

  • 跨平台性的增强

    CLion 1.0 支持 Linux 64 位、OS X、Windows 64 位等操作系统环境;在 Linux 和 OS X 平台上支持使用GCCClang作为编译器,而在 Windows 平台上支持使用MinGWCygwin

  • 使用 CMake 作为构建系统

    CLion 1.0 使用 CMake 作为构建系统,并使用它作为项目模型,从而使得开发者能够从 CMake 文件中获取更多项目信息,如源文件、编译器设置、目标描述等;CMakeLists.txt 文件中的所有变化能够自动处理,处理规则能够预先设定,并提供了配置 CMake 命令、系统环境变量和构建的选项。

  • 强大的智能编辑器

    支持代码自动补全;同一时刻能够处理多个编辑任务;能够根据预先设定的代码样式实现代码的自动格式化;丰富的快捷键有助于选择、重新整理和快速地注释代码、自动修复代码,如 Parameter Info 功能查看方法的签名;引入了一套有用的导航功能和查找能力,如转到方法或类声明或调用的地方、通过名称查找类 / 变量 / 文件、使用 Class/Imports/Type 的层次结构来查看更多相关信息。

  • 支持多种语言和标准

    支持 C 和 C++ 编程语言,包括 C++11、libc++Boost等标准;支持 JavaScript、XML、HTML 和 CSS。

  • 代码分析和重构

    在开发者编写代码的同时,CLion 能够实时分析整个代码、高亮潜在问题代码;支持重命名、改变方法签名、抽取方法 / 常量 / 定义 / 类型定义、抽取子类 / 父类 / 超类等重构操作。

  • GDB 调试器

    CLion 提供了一个基于 GDB 的内置调试器,该调试器支持设定行、异常和符号断点;开发者可以添加代码监视和进行表达式求值等;尤其是在调试过程中,开发者还能够在编辑器右侧查看变量值。

  • 其他

    集成了流行的版本控制系统,如 SVN、Git、GitHub、CVS、MercurialTFSPerforce通过插件);新增了能够在 Vim 模拟模式下工作的内置终端(通过插件)等非常有用户的工具。

JetBrains 提供了 CLion 的商用和个人许可,学生和开源工程可以免费使用,更多细节查看完整的各种许可和价格。此外,CLion 还提供了 30 天的免费试用期。

JetBrains 博客用户 Anton 针对该博文评论到:

在此向 CLion 团队祝贺 CLion 的发布,他们付出了心血和汗水,并创建一个惊人的 IDE。自己很期望在将来 CLion 将变得越来越好,尤其要感谢的是 CLion 对 Linux 系统环境的支持。

Clion 1.0 发布消息的一经公布,就引起了大家的热烈讨论,Reddit 上也有了相关评论,有的用户表示自己仍然会继续使用 QtCreator 或者 Xcode,用户DarkCisum对 JetBrains 为学生提供免费版本 Clion 的举措表示了称赞,用户inputfish提出了 Clion 同 Xcode 有什么优势的疑问。

用户PurpleOrangeSkies评论到:

CLion 仍然还有一段很长的路要走,但是它已经是 Linux 环境下进行 C++ 开发的最好 IDE。尽管自己不喜欢他们做出的一些不透明设计决策,但是自己最关心的是 CLion 最终能够为开发工作带来方便。

除了 CLion 外,JetBrains 还有一个被业界公认为最好的 Java 开发工具之一的IntelliJ IDEA。此外,今年 1 月份 InfoQ 发布了一篇题为《C++2015 前瞻》的文章,文章中指出 CLion 是 C++ 开发环境领域的新竞争者。更多有关 CLion 的相关信息,开发者可以查看官方提供的快速入门指南实例文档以及 CLion 的详细功能列表等。


感谢郭蕾对本文的审校。

给 InfoQ 中文站投稿或者参与内容翻译工作,请邮件至editors@cn.infoq.com。也欢迎大家通过新浪微博(@InfoQ@丁晓昀),微信(微信号:InfoQChina)关注我们,并与我们的编辑和其他读者朋友交流。

语言 & 开发架构其他