{eval=Array;=+count(Array);}
据Stack Overflow 2019年的调查数据显示,Linux和Windows是最常见的开发平台,大约有一半的人使用Windows做开发,其余的大约平均分配给了MacOS和Linux。
单论IDE面向的用户来说,Linux一点也不小众,IDE不开发Linux版不仅仅是散失四分之一的用户,而是丢失了一整个生态。
Linux版IDE的需求是切切实实存在的,开发IDE的商业公司都不会忽略这个市场,而且现有的跨平台GUI开发方案都比较成熟了,这也降低了不少的开发成本,如JetBrains全家桶大量使用Java,迁移难度相对较低。
商业化很成功的IDE收回成本肯定不是问题,因为单套IDE售价通常都不便宜,加上销售规模庞大,利润十分可观。也有不少IDE是非盈利性质的,根本不用考虑收回成本,它们的资金由某些基金会提供或来自社会捐赠。
很多大厂背后都有自己的小心思,不愿意把技术绑死在Windows上面白白的给微软打工,通过跨平台来压制微软在操作系统上的优势,重新制定游戏规则。如:Sun有自己的工作站和Solaris、IBM有PowerPC和OS2。
现在语言和框架层面已经基本解决了跨平台问题,那么即使在应用方面还需要进行少量的适配,成本也并不会高到哪里去。如果只专注一到两个平台的话,确实可以做到深度优化,但这个代价是放弃未来在其他平台发展的可能性。未来如果还要移植到其他平台,如:Android、ARM架构,跨平台的IDE就会显得得心应手。
开源社区也广泛接受了跨平台的思想,并且一直致力于实现跨平台的目标。像Wine、OpenOffice、Cygwin这样的适配工作都有人搞,做IDE的怎么可能放弃Linux平台呢?
细心的小伙伴们就会发现这几年微软变了,开始拥抱Linux、拥抱开源、拥抱跨平台。除了Windows、Office、Azure这些可以直接盈利的项目没有开源之外,其他的都开源了,目前微软的开源项目已经有一千多个了。
Vscode、GitHub、Azure已经形成了一条完整的生态链,只要在这条生态链上稍微进行扶持,就能吸引更多的开发者、应用选择Azure。
套用一下纳德拉说过的话:“微软长期坚持的一个信条是,Linux等开源软件是公司的敌人。现在我们已经无力为这样的态度买单。我们必须满足客户的需求,而更重要的是确保我们以一种前瞻的方式而不是透过后视镜寻找机遇”。只有在战略上拥抱Linux、开源、跨平台,只有通过开源社区的广泛参与,微软才可能持续的壮大。
跨平台开发正在成为主流,微软免费推出的跨平台Web和云开发代码编辑器vscode支持多达 30 多种编程语言,为跨平台开发者带来了极大的便利。VSCode和Typescript的组合也让复杂的前端项目变得容易许多。
如果让一个软件开发者只开发IOS应用,而不开发Android应用,他绝对会说这样是很明智的。这时跨平台开发的重要性就开始凸显出来,它可以减少代码重构、部署的时间,降低开发成本。所以跨平台的IDE是非常有优势的。
以上个人浅见,欢迎批评指正。
认同我的看法,请点个赞再走,感谢!
喜欢我的,请关注我,再次感谢!
IDE的开发是商业行为,一样是符合市场规律的。
首先,Linux服务器占用率很高,所以使用Linux开发的程序员的比例很高。因此开发Linux版本是符合市场规律的。
其次,使用c或是Java开发的IDE,gui改改就能移植到Linux,所以开发成本可控。
最后,不论是Linux还是Windows版本,很多IDE都有免费社区版,一方面很多开源的东西需要更多人参与维护才能完善,另一方面使用量上来了各种赚钱的方式就产生了。而不只是卖软件license赚钱一条路。
因为开发windows比开发跨平台的成本高,开发windows要么mfc,开发超慢,要么.net,但是.net客户端部署成本高。反而是qt开发,效率高,部署简单,而且跨平台,python开发人员也好招。
大公司开发跨平台ide不一定单纯为了钱,像是google的chrome,通过市场占有率可以推动互联网一些新技术的发展,比如 ssl,spdy,只有通过较大的市场份额才有制定标准的话语权。 还有是培养用户习惯,增加用户粘性后推广自家其他服务,比如vscode,微软家的。 还有就是软件成本是一次性的,开发出来后销售的是使用权,不是所有权,所以可以无限授权,现在linux开发用户也不少,企业看中的是大客户企业授权。这个是营收大头,还有一些定制化服务也是多带带收费的。总之,一个企业公司不是做福利事业的,他是需要盈利的,只是我们一时半会没看明白他的盈利模式。
ide很多都是社区版的,都是程序员自己义务工作搞出来自己用的工具。所以,为什么不开发linux版本?难道你准备在windows上调试linux程序?
0
回答0
回答0
回答0
回答0
回答0
回答0
回答0
回答10
回答10
回答