我与 CLion 的小故事

发布时间 2023-04-16 10:58:16作者: r3vxax

我与 CLion 的小故事

0 前情提要

作为一个(伪)技术博主和编程竞赛考生,我是从 Dev-C++ 开始认识 IDE 的。当时我啥也不知道,就觉得 Dev-C++ 贼好用,又是老师推荐的,我就这么稀里糊涂地用了一年多。

某一天,我突然在网上看到一个编辑器较 Atom,这个大家应该是熟悉的。Atom 是 Github 亲儿子,它的设计到现在还是不落伍的,所以看了 Dev-C++ 那 XP 时代外观一年的我一见钟情,费尽千辛万苦,从 Github 上把它下了下来。

这是当时 Atom 界面的截图。

图片来源:Atom打造 C/C++ IDE

我记得我当时是从这篇知乎文章学会怎么配置 Atom 的 C/C++ 环境的,研究了很长时间。

Atom 不是很好用。这一点在 Visual Studio Code 开始在微软手下与 Atom 争宠之后尤其明显。当我再次发现 VSCode 这么好的东西的时候,我简直是热泪盈眶——这世界上还有这样又好看,又实用,插件市场竟然能常年正常访问的编辑器!于是我果断卸载 Atom,转投 VSCode。

我写这篇文章时,VSCode 的截图。

在 VSCode 上,我呆了很长时间,以至于我都有点蔑视其他的专业 C/C++ IDE 了——研究什么研究,连个编辑器都不如!。配置编译器,写 tasks.jsonlaunch.json,不亦乐乎。

直到有一天,我看到了 CLion。

1 逐渐熟悉

CLion 是 JetBrains 家的 C/C++ IDE。本来专业做 Java IDE 的 JetBrains,在某一年突然开窍,连着做了好几个以 IDEA 为基础的 IDE。一开始,这些 IDE 都不是多好用的,现在知乎上依旧遗留着大量对 CLion 的负面言论,就是因为这些评论都是在 CLion 3.x 或者 4.x 时代发表的,那时候 CLion 的确不好用。

对我来说,CLion 是从 2021.x 开始的。我偶然间发现了这个 IDE,瞬间被它的外观和功能所吸引了。IDEA 不愧自称最智能的 Java IDE,它的特性也被带到了 CLion 上,提供智能提示,很多我初期容易犯的错误它基本都能找出来,并且提供修改方法的提示。

简单的智能提示示例:手滑少打一个等号。

简单的智能提示示例:忘记添加头文件。

当然了,那时候我刚刚开始接触算法,这类小问题犯得多,后来慢慢地越学越深,对我来说最重要的功能变成了它的调试功能。

从我个人观点来看,如果说 Visual Studio 的调试功能适合真正的项目开发的话,CLion 的调试就更适合我这样的算法学生。

CLion的调试工具部分。

在遇到断点的时候,CLion 会在 iffor 之类的语句旁边标注参加判断的变量的值,这一点是 Visual Studio 没有的。

CLion 对变量的值的标注。

还有一个细节是我比较喜欢的,就是悬停在函数上的时候,展示函数内容,CLion 不仅能展示全,还有自动的格式化。同样,Ctrl + 点击查看源文件,也有阅读器模式,看注释更加友好。

对 sort() 函数用法的说明。

总的来说,虽然 CLion 在功能上也许不是同类里做的最好的,但是,对于一个算法学生来说,它的一些功能很有用;对于一个喜欢好看的 IDE 的人来说,它的界面又足够耐看。

CLion 整体外观。

这么完美的 IDE 有缺点吗?有。

收费

2 为了白嫖的研究

我一穷学生,肯定是没钱买 CLion 的,第一年要整整 $229,基本相当于我整年的伙食费了。于是,很自然地,结合之前白嫖 Office、Onedrive 的 2T 存储空间、EverEdit 编辑器等等付费产品的经历,我开始寻找破解收费的方法。

一开始我很容易就找到了知了大神的一个早期破解插件。原理很简单,因为 Jetbrains IDE 本来是自带一个 30 天试用许可证的,所以这个插件就在每次退出的时候,删除激活状态,重新开始 30 天的试用,以达到无限使用的目的。

我用这个插件,每过一段时间自动重置激活,写算法那叫一个开心,根本不用担心许可证过期。

直到 2021.3 版本。

从这个版本开始,Jetbrains IDE 的试用许可证发放变成了按帐户发,联网激活,总共只有 30 天。而且,Jetbrains 给帐户注册用的邮箱做了限制,没法用临时邮箱注册,而国内唯一能访问、不需要手机号注册的邮箱是 Outlook,但它的登录也是正常不稳定,非常麻烦。

完了。

这之后不久,知了又研究出来个 ja-netfilter,可以用来过滤联网激活的域名,让 IDE 以为激活状态是正常的,再搭配自动重置的插件,理论上依然可以无限试用。但是我研究了整整一周,从 Windows 平台研究到 Linux 平台,愣是没琢磨出这玩意儿怎么用。按照教程,我的 IDE 依旧没办法激活。

这下真完了。我迅速地重新撞上了 VSCode,准备回到之前,但是还是有点舍不得。

偶然间又发现,Jetbrains 有学生许可证。

3 合法白嫖

我是初中生,但是 Jetbrains 的申请页面上要填写学信网验证码。我显然没有。于是我发了封邮件给 Jetbrains 的客服。

我发给 Jetbrains 的第一封邮件。

没想到,几天之后,Jetbrains 客服这么快就回复了。

Jetbrains 的回复。

对于我这么一个想要白嫖的学生,Jetbrains 的客服竟然有这么好的态度,并且回复明确。君不见我在保修期内的小米笔记本,驱动有问题,发邮件给小米售后,至今未回复,即使是即时对话也就是什么“重装驱动”“重装系统”之类的废话。

恰好,我参加过 CSP-J 2022,有证书,虽然考得很差,但是这个条件倒也恰恰满足了。

于是我提交了我的学生证、证书,附带说明为什么我瞎填了学信网验证码,本来对于能拿到许可证就没有信心,毕竟我连学校的邮箱都没有。

于是我又发了一次邮件,问我这样能不能获得许可证,不能的话还要什么。

我发给 Jetbrains 的第二封邮件。

没想到,没想到,客服竟然在当天回复了。

Jetbrains 的回复。

仰天长啸,竟然通过了!

学生许可证申请通过的通知邮件。

因为我提供了电子邮件,客服甚至主动帮我把授权直接给了我的 Jetbrains 帐户。全程除了准备资料花了点儿时间,基本没有让我做任何多余的事情,就将一年几千的许可证给了我。这种高效和便捷,实在值得国内某些公司学习。

我立即马不停蹄地登录了我的 Jetbrains 账号,果然,有了 Student Pack,有我自己的 Product ID,终于不用想尽办法白嫖了!

CLion 的授权信息。

4 总结

这不是一篇广告文,而是我对 Jetbrains 作为一家商业公司,却能有这样的对待客户的态度的敬意。

我是一个初中生,很明显没有任何经济能力来购买 Jetbrains IDE,并且我也没有在大学里学习计算机,后者有可能在工作后使用 Jetbrains IDE。但是,Jetbrains 的客服依旧以非常热情和高效的态度解答我的问题,并最终通过了申请,这是非常让我意外和高兴的。

Jetbrains 是商业公司,却有着社区般的道德水准。

我觉得,国内某些公司是否应该反思一下了。试问,国内各大软件服务提供商,有几家是学生免费的?有几家客服技术水平可以的?有几家能听取社区意见?有几家有最基本的商业道德?

国内本来就没有太多成熟的大的独立项目,然而家家公司都闭门造车,所谓开放平台,开源项目未见多少,上架内容倒是要收费,真是讽刺。

是时候改改了吧。