XCode 开发组的能力堪忧

2017-08-13 15:15:06 +08:00
 rainex
一路用 beta 版,XCode9 已经 beta5 了,编辑器的确能感受到是重写了的,但截至目前完成度还是不够高,很明显的比如代码折叠功能依旧没有,然后打开之前的项目,有的语法着色需要你切换甚至选中文字才刷新,给人第一印象感觉也不好,之前 beta4 用重构改名还是不是闪退,搞到现在用重构都先保存。

同等硬件上,装个 Windows+VisualStudio,性能肯定比 XCode 好,更别说人家 VS 功能还比 XCode 多,好尴尬。

当然,其中不完全是 XCode 开发组的锅,跑软件的多平台版本,越依赖图形加速的,同等硬件下,都是 Win 赢,可能有部分锅要再分给显卡厂商的驱动吧,但苹果自身系统的性能我觉得也得分些锅。

苹果不行从别处再挖点 IDE 的大牛吧,我感觉 XCode 开发组现有的人可能也尽力了。

(不排斥有关系的人把本文转给 XCode 开发组,刺激一下他们)
11083 次点击
所在节点    iDev
83 条回复
ioth
2017-08-14 11:33:42 +08:00
和安卓比不错了
ljcarsenal
2017-08-14 11:49:26 +08:00
阿三招多了的缘故吧
Mithril
2017-08-14 11:54:43 +08:00
@googlebot VS 本身就不支持 C 语言,支持的是 C++。
如果你写.c 文件的话使用的是一个祖传版本的 C90 编译器。现在对于 C99 的支持仅限于那些被划为 C++标准子集的那部分。
loveuqian
2017-08-14 12:05:26 +08:00
因为 Xcode 是用 Xcode 写的。
hjc4869
2017-08-14 12:38:32 +08:00
VS 其实质量在走下坡路,我们这边开发 Azure 的工具链现在都是 2015,没人用 2017。
只能说 VS 现在还能称作宇宙第一 IDE 都是同行衬托。
hjc4869
2017-08-14 12:46:34 +08:00
@googlebot VS 下如果真的想写标准 C 的话,只有把 VS 底下的编译器换成 clang,或者建个 VS 的 Linux 项目用 WSL 调通之后移植 mingw。
而且 Windows 下就算编译器支持了标准 C,也没个实现非常标准的 CRT (源于 UNIX 的东西本来就水土不服),API 也只有用古董一套 win32,连 shell api 什么的都是 COM,用 C 去调用完全是找罪受。

另外,不同意你所谓的“没法用标准 C 语言 Windows 开发就彻底烂了”的说法,照你这么说只有在 Linux 下用 gtk 才是真正的清真。开源项目也不是一切,跟桌面相关的东西不支持 Windows 基本上意味着大部分人用不到。
n6DD1A640
2017-08-14 12:53:41 +08:00
beta 版不就是用来测试的吗,手动滑稽
gnaggnoyil
2017-08-14 13:12:58 +08:00
@googlebot Linux 是最烂的,Linux 不支持磁盘内容的异步 IO,
你想用 Linux 使用磁盘 IO,没有异步的,epoll 不行, 只能用垃圾 pread/prwrite, 是同步的,

Linux 的程序开发已经彻底烂了,

——————————————————————

想放黑屁?我建议你在放黑屁之前先掂量掂量自己会不会被回头喷的很惨.
guroyuri
2017-08-14 13:54:40 +08:00
Visual Studio 2015 fully implements the C99 Standard Library, with the exception of any library features that depend on compiler features not yet supported by the Visual C++ compiler (for example, <tgmath.h> is not implemented).

https://en.wikipedia.org/wiki/C99
https://msdn.microsoft.com/en-us/library/hh409293.aspx
wangxn
2017-08-14 14:20:57 +08:00
@googlebot 你拿一个 C++编译器去编译 C 语言写的项目不是更搞笑吗? 23333
wangxn
2017-08-14 14:32:26 +08:00
@guroyuri 这个只是标准库吧,某些脑洞比较大的语言特性还是不支持。
gzztz
2017-08-14 14:48:40 +08:00
苹果:你!不!需!要!
waruqi
2017-08-14 15:58:05 +08:00
xcode 的体验还是可以,感觉比 vs 好用多了,as 就算了,卡出翔。
sgissb1
2017-08-14 16:29:53 +08:00
vc ( vs )的好,并不在于编译器多么牛逼,做 windows 开发的人,常常能遇到各种 vc 的 bug。说到底还是 IDE 做的够傻瓜化,让大家用起来不需要在那些细枝末节上去反反复复的花时间,另外还有就是 windows 对外版本比较统一。

就像我不喜欢写、改、生成*nix 下的编译工程配置一样,太累了。经常为了一些编译器版本,环境依赖折腾来折腾去,因为我自己也不是很熟悉 linux 或者*nix (含 android、ios、osx ),所以每次都需要花至少 30%的时间在搞编译环境上。

做 windows 上开发,如果不用那些仅仅只能在伪终端上进行编译的开源。那么整个项目的生命周期大致为:30%~ 40%测试,10%~ 15%编码,10%~ 15%调试,还有产品设计与技术设计阶段。

在*nix 上做开发,如果要求相同时间内做完相同功能的活(非界面类),那我常常会多出 20%的编译环境折腾时间,然后从其他工作上压缩时间。

xcode 写代码,有时候也会遇到各种稀奇古怪的问题。前段时间在编 ffmpeg、x264、webrtc 的时候,还遇到一大堆编译环境的坑,当然这些坑在 windows 上也会遇到。

至于 c99,c++11,c++15 或者 c++100,我觉得都不重要,先学好 c++先,这么复杂的语言,基础功没打好,说啥都是花架子!另外 vc 确实不是干 c 语活的;对 c++支持也确实存在一些问题,vs2008 之前都快成一种方言了,vs2013 开始才看到 c++11 的样子( vs2010 支持的很少)。

搞了这么多平台的破事,我还是觉得,好的 IDE,应该是带来便捷,而不是没事就给开发人员找 bug,或者和他们进行做斗争。
xjbeta
2017-08-14 17:24:32 +08:00
叉 code9 beta 也就 3 还好点 4,5 随便写点逻辑错误 编译器就炸了(可能是 new build system 的锅
@Mithril 好想问问 这程序哪能找到 2333
googlebot
2017-08-14 21:43:37 +08:00
@hjc4869 windows 带的基础包是最少的, 简单的 openssl 都没有,vs 的开发环境也是最差的,啥扩展库都没,啥都要打包, 这方面 macosx 是最好,ssh,git 这些系统都带了,

现在你开发一个东西, 不可能啥轮子都造, 大家都在用开源,python 的崛起就是草民革命,可以跨平台,可以容易扩展,

xcode 是最好的开发开发工具,objc,c 都支持, 可惜 windows 平台没这么一个东西,

vs 基本是废了, 就是搞.net,
googlebot
2017-08-14 22:12:18 +08:00
@wangxn 用 vs 学习 c++? 学习有鸡毛用,要搞项目还所有模块都用 c++写? 你太嫩了吧,
ghostheaven
2017-08-15 00:11:47 +08:00
@googlebot 胸弟,IDE 和 SDK 不是一回事。IDE 主要是一个集成开发环境,编辑,编译,调试,部署,测试,什么的都给你提供了。而用什么编译,用什么调试,用什么部署,用什么测试,一般是 SDK 提供的。

VS 作为 IDE,高效,稳定,跟 win 原生的工具结合紧密。但是 SDK 方面由于 win32 不是*nix 系的,工具链和接口基本都是不兼容的,开源社区需要额外的精力去适配,除非本来就是 win 上,否则很可能没有 win 上原生的支持,只能通过 cygwin 或者 mingw 实现。另外 win 上一直没有很好的包管理程序,nuget 这种出来的太晚,导致即使有原生,长期以来也需要自己手动下载。

Xcode 作为 IDE,相比 VS 慢和卡的不是一点点,越大的项目越明显,调试工具脆弱。但工具链和基础库方面由于是*nix 系,跟 Linux 的很接近,大部分开源项目都很容易兼容。包管理方面是其实也是 0,多亏了 port 和 brew,否则依赖的第三方库要跟 win 一样要手工下载。
Actrace
2017-08-15 08:37:21 +08:00
文本编辑器写代码路过。
notepad++很好用。
jedihy
2017-08-15 08:43:07 +08:00
@googlebot 你说的和 VS 一点关系都没有,那时 windows 的问题

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/382613

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX