Swift 版本升级改变那么多问题,是否说明设计者实力很成问题?

2017-01-28 00:53:26 +08:00
 rainex
拿 c#来对比,版本升级至少没让开发者经历这么大的痛苦。

客观说,设计者实力有差距,而且差的不是一点点吧?没想清楚就干,干完再改,把设计语言当普通项目看么?
9311 次点击
所在节点    iDev
51 条回复
anonymityl
2017-01-28 16:14:05 +08:00
@reus 背后是苹果吧,苹果的生态让他在与开发者谈判的地位上处于不用讨好开发者的地位, xcode 这么难用应该是一个例证吧。
kitalphaj
2017-01-28 16:54:53 +08:00
这样的做法并没有任何问题,强行向下兼容才容易导致语言左后设计得四不像。换句话说,你自己开发的程序不也要经常重写或者变架构么?
WildCat
2017-01-28 18:46:20 +08:00
说实话我都不想用 Swift 了。之前用 Swift 2 写的 V2EX 客户端,好久不更新了,一个用户给我反馈问题让我修复下 bug 。
我编译了下,迁移到 3 ,然后成吨的错误不想改了。。。
dorentus
2017-01-28 18:55:48 +08:00
learnshare
2017-01-28 19:19:55 +08:00
@halden ng 还好吧,两个版本的设计之初也间隔五六年

也恰好是前端大爆发的时候
exploreexe
2017-01-28 19:37:23 +08:00
看了 LS 很多人的吐槽 感觉大家对 Xcode 和 swift 的感觉都差不多。 Xcode 每一次版本升级都是痛苦的,各种小毛病不断。
AlexaZhou
2017-01-28 20:54:38 +08:00
其实 Swift 并没有 APPLE 宣传的那么好。

AnyFlow 的前端界面用 Swift 实现的,在 swift 和 oc 交叉调用的地方,额外花了很多精力去解决一些莫名其妙的问题,如果纯用 OC ,会简单很多
tzm41
2017-01-28 22:00:34 +08:00
Swift 3 到 4 是承诺不会出现 breaking change ,可能只有一两个例外情况。
发展得快,很多特性还是很喜欢的。
wenssh
2017-01-28 22:15:06 +08:00
@laoyur 用 OC 不也是这样吗? iOS10 新加的访问权限跟 swift 没关系吧
halden
2017-01-29 00:46:17 +08:00
@learnshare 参考隔壁 react ,虽然这样比不太公平。。
bombless
2017-01-29 01:39:23 +08:00
目标的问题。一般软件供应商会认为兼容性关系到生死存亡,这个团队没有这种概念罢了

任何系统只要还在用都会有人觉得需要从新设计的,剩下的就看有没有人推动这事了

具体拿 c#举例,闭包完善了之后委托的设计就比较蛋疼了,范型的设计完善了之后原有的迭代器接口的设计就比较蛋疼了,范型用多了之后原有的范型参数列表语法的二义性就比较蛋疼了,这些都是 c#放弃兼容性之后能改进的
laoyur
2017-01-29 09:24:49 +08:00
@wenssh 我没表达清楚,是访问控制修饰关键字, private public 之类的,编译通过无警告,然而运行时秒崩,也看不出哪里挂,排查好久才试出来,换你你气不气
CYKun
2017-01-29 09:28:18 +08:00
然而向后兼容做的最好的 Java 天天被你们吐槽
zgqq
2017-01-29 09:52:34 +08:00
java 这方面应该算不错
learnshare
2017-01-29 10:37:56 +08:00
@halden react 一开始就有的设计思想, ng2 是后来才学到的
kanezeng
2017-01-29 11:05:34 +08:00
@halden angular 1 出来得太早,好多现在的标准都没有所以比较惨。 2 的话可以充分利用现代新标准了,所以有些比较大的变动出现在 1 和 2 之间我觉得是可以理解的吧。
halden
2017-01-29 11:40:55 +08:00
@learnshare @kanezeng 所以我后面说这样比不是很公平,但你也不能说锅都是标准的问题
dant
2017-01-29 13:41:17 +08:00
@fy 会做编译器不代表会做语言。
Arcus
2017-01-29 14:24:52 +08:00
@CYKun 这是走向另一个极端了吧
fy
2017-01-29 14:59:58 +08:00
@dant 这是门槛

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

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

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

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

© 2021 V2EX