写点什么

JetBrains 开发者工具

2010 年 12 月 13 日

回想我首次见识 IntelliJ Renamer 这个重构工具已经是 10 年前的事情了。该工具完全关注于在无需编辑的情况下进行 Java 代码重构。在此期间, IntelliJ IDEA 已发展成为 Java IDE 家族的最高级成员之一,并且 JetBrains 开发工具也已扩展到多种语言。

JetBrains 是为数不多的几个开发工具销售业绩很好的公司之一。这也是为什么与 Ann Oreshnikova 聊及潜在战略、成功之道以及未来计划及产品是一件趣事的原因。

Q:JetBrains 是为数不多的几个开发工具销售业绩很好的公司之一。即便处于当前这样的状况下:大多数开发工具都是免费的,无论公司还是个人都无需对此买单。您认为这种成功背后的原因是什么呢?

Ann:我们必须要将这归功于我们工具的高质量。竞争迫使我们保持最高水准,并要求我们的工具比那些免费工具提供更多的功能、更高的工作效力。

你可能听过这么一句谚语,“花钱要花在刀刃上”。当你在选择适合的工具时,你应该考虑的是其真正的拥有成本(COP),而不仅仅是标签上的价格。我们的产品提供了可扩展的开箱即用的功能并确保我们的用户不必为构建、技术支持等事儿操心。不浪费时间就意味着更好的结果。

我会把创新列为我们的另一个关键优势。目前广泛应用的大部分的基本 IDE 的功能都是当初在 IntelliJ IDEA 领域率先引入的。

最终,我们为这款一流的专业开发工具定了一个合理的价格,或者说更合理的拥有成本。它可以使任何开发人员需要数年才能完成的工作可在几个工作日内完成。

Q:去年 JetBrains开源了IntelliJ IDEA 的社区版本。你们的用户(包括潜在用户)和开发人员对这一举动的反应如何呢?这是否会影响你们商业产品的销售,并且这一举动的目标是否已达成?你们是否也计划开源其他工具,比如 ReSharper TeamCity

Ann:我们开源的举措得到了非常正面的效果,因为现在可以更容易的去扩展 IntelliJ IDEA 了。作为开发者,我们很多客户非常看重是否可以获得源码。产品旗舰版的销售正在上升,我们的总体用户基数也呈现可观地增长势头。对此结果我们非常满意。况且,这才是我们进入“开源”时代的第一年,所以我们必然可以期望更多长期的效益。

至于我们其他的一些产品,目前还没有什么特别的计划。有一款叫做 TeamCity 的产品,用于持续集成和构建管理的系统,其免费专业版已经可用了,不过我们还没有考虑对它也进行开源。

Q:在过去几个月曾有爆料说 JetBrains 会有新的 IDE 产品发布。这是否暗示着 IDE 已经从与 IDEA 语言相关的模块剥离出来了呢?如果属实,那是否意味着能支持任何编程语言的各种 IDE 将成为我们期望在未来会出现的新的 IDE 呢?

Ann:的确。我们已经从 IntelliJ IDEA 中将平台“提炼”出来,并且有计划为一些特定的语言构建轻量级的 IDE。我们已经发布了五个 IDE: MPS (针对域特定语言), RubyMine (针对 Ruby on Rails 开发), WebStorm PHPStorm (针对 web 和 PHP 开发人员)以及刚刚发布的针对 Python 开发的 PyCharm 。向你透露一个我们当前的项目:一个面向 Objective C 的 IDE,我们希望借此让那些用户能够尽早在 alpha 版本就能够尝鲜。这种方式是我们总体战略的一部分,因为 IntelliJ 平台使我们能够有效地为特定语言构建成功的 IDEs。

Q:那些 IDE 里有多少是基于在 MPS 中的功能开发的呢?

Ann:MPS 本身就是构建在 IntelliJ 平台之上的,反过来它又可以作为平台创建其他工具。我们已经提到过的 YouTrack 就是完全用 MPS 开发出来的。未来会有更多这样的工具出现,但现在透露具体是哪款产品还为时过早。

Q:您是如何看待当前的开发工具 IDE 市场的。目前这一市场划分为一些商业软件、众多免费 / 开源软件以及大量的不那么高端的编辑器供人们日常的开发工作。市场和工具在五年或十年后会是什么情况呢?未来大部分的开发工作会由类似 Intentional WB和 MPS 这样的语言工作台来完成吗?是否编辑器和 IDE 会变得更加简单,比如会成为像 SkyWriter(Bespin)这样的 web 应用呢还是以图形化为向导 ?又或者独树一帜,比如 codebubbles?您对此的预测是什么呢?

Ann:如果要完整全面地回答这个问题我估计可以重新写一篇文章了 :) 。总所周知,就工具这个领域而言,智能化发展的行动尚未完成。这一行动当初由 IntelliJ IDEA 的出现而带动,这时 IDE 才开始理解代码——才(几乎)和开发人员的理解程度相当。在 Java 领域中,这只消一天的功夫,但其他技术还有待跟进。

至于语言工作台,现在很难明确地给出答案。除非围绕着某一套方法论的兴趣达到临界规模,否则工具不会被广泛的使用的。比如说,面向对象编程(OOP)的理念早在 60 年代后期就出现了,但直到 90 年代才真正流行开来。有可能是 LOP 的应用加速了它的发展,但是——无论如何这与工具也不相干,这是方法论的问题。

Q:Jetbrains 在未来还能给我们带来什么样的 IDE 呢?

Ann:实际上我们已经揭晓了我们的一部分计划 :-) 是的,一款针对 C 的 IDE 正在进行之中,并且在准备对外发布。我们也在考虑很多 C++ 方面的计划。

Q:对于本文相关的话题您觉得还有什么需要补充的吗?

Ann:我们有一些振奋人心的消息正在酝酿之中,不过目前还不急于公布。大家都在关注我们在做些什么,这就足以说明我们前进的方向是正确的 :-)。比较稳妥的说法是我们目前正集中精力以及 / 或者说制定战略计划,以便发布更多的 IDE、团队合作工具和支持敏捷的工具。感谢你这次的对我的采访。我们很重视你们对该领域的普遍关注,尤其是在 JetBrains 应该如何发展上。祝你开心!

查看英文原文: JetBrains Developer Tools


感谢马国耀/a> 对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家加入到 InfoQ 中文站用户讨论组中与我们的编辑和其他读者朋友交流。

2010 年 12 月 13 日 00:0016125
用户头像

发布了 52 篇内容, 共 13.6 次阅读, 收获喜欢 2 次。

关注

评论

发布
暂无评论
发现更多内容

通达同城快递设计方案

garlic

架构师训练营第 1 期

技术干货 | 六分钟学会使用 HBuilder 引入构建 mPaaS 小程序

蚂蚁集团移动开发平台 mPaaS

小程序 uni-app mPaaS

RPC Demo(二) 基于 Zookeeper 的服务发现

Java zookeeper RPC 服务发现

实用流程工具,浅析LR.NET配置型工作流引擎

雯雯写代码

.net 工作流

Java中的常量

cdhqyj

Java

公安警务报警系统,二维码一键定位报警

t13823115967

二维码定位报警系统开发 微警务 二维码定位

Spring cloud Gateway(二) 一个Http请求的流程解析

Java 网关

MySQL为Null会导致5个问题,个个致命!

王磊

MySQL MySQL使用

令数字起舞,让自然微笑:TECH4ALL的2020启示录

脑极体

重新发现科技与人文的互动

脑极体

写出一手烂代码的19条准则

Java架构师迁哥

为了搞清楚类加载,竟然手撸JVM!

小傅哥

JVM 小傅哥 类加载 生命周期 加载机制

5G与4G的差别及应用

anyRTC开发者

人工智能 android AI 5G WebRTC

智慧警务大数据可视化分析平台建设解决方案

WX13823153201

AAAI 2021论文:利用深度元学习对城市销量进行预测(附论文下载)

京东智联云开发者

数据库 大数据 时序预测

Java多线程编程核心技术

田维常

多线程

软件测试——网络协议知识(二)

测试人生路

软件测试 网络通信协议

CKLC挖矿矿机系统开发案例介绍

系统开发咨询1357O98O718

CKLC挖矿矿机系统软件开发 CKLC挖矿矿机系统开发 CKLC挖矿矿机APP系统开发

送你一份迷你书,全面了解如何做好大促技术备战

京东智联云开发者

DevOps

LeetCode题解:239. 滑动窗口最大值,二叉堆,JavaScript,详细注释

Lee Chen

算法 LeetCode 前端进阶训练营

爆赞!P8架构师总结29篇多线程与高并发+设计模式核心笔记

Java架构追梦

Java 学习 架构 面试 多线程高并发

IPFS分布式存储矿机系统APP软件开发

开發I852946OIIO

系统开发

如何使用mock应对测试所需随机数据

华为云开发者社区

测试 数据 Mock

阿里面试:Mybatis中方法和SQL是怎么关联起来的呢?

田维常

mybatis

分享一个普通程序员的“沪漂”六年的历程以及感想

程序员老猫

回忆录 经历 年终总结 沪漂 上海买房

测开之函数进阶· 第6篇《闭包》

清菡

测试开发

跨年巨作!13万字!腾讯高工纯手写“JDK源码笔记”直接带你飙向实战

比伯

Java 编程 架构 面试 计算机

智慧社区综合应用平台搭建,社区管理解决方案

t13823115967

智慧社区管理平台开发 智慧平安社区平台建设

SpringCloudGateway(一) 概览

Java SpringcloudGateway

IPFS云算力挖矿系统开发详解案例及源码

系统开发咨询1357O98O718

云算力挖矿系统开发详解 云算力APP系统软件开发 云算力模式系统开发源码 云算力软件系统开发定制

差距不止一点点!Github星标51K的性能优化文档也太香了

程序员小毕

Java 程序员 性能优化 JVM 设计模式

InfoQ 极客传媒开发者生态共创计划线上发布会

InfoQ 极客传媒开发者生态共创计划线上发布会

JetBrains开发者工具-InfoQ