开发技术之争第三位:Objective-C对Swift
苹果长久以来一直将Objective-C这款C语言精简化版本且具备面向对象编程的开发方案作为独苗而呵护有加。然而时过境迁,现在Swift已经闪亮登场并为开发人员带来更具现代特色的语法体系,允许大家在摆脱大量规范束缚的前提下更轻松地为苹果的移动平台创建代码。诚然,从C语言起步学习开发技术的从业者们并不介意面对一大堆未分类文件,但从Python、Ruby甚至是Java领域转向iOS平台的新手们纷纷表示这种机制简直反人类。
那么Swift的简洁化架构能否牢牢抓住苹果开发人员的心呢?Python与Ruby开发人员又是否会大量涌向iOS环境,并给传统Objective-C开发人员造成冲击甚至是排挤压力呢?又或者,久经考验的Objective-C程序员也许能凭借着自身惊人的开发效率继续在新形势下保持统治地位?新的代码库及各类功能特性会通过Swift还是Objective-C加以创建?苹果公司已经公开表示,两款编程语言完全可以共存,所以开发人员无论如何选择、都能找到属于自己的立足空间。那些喜爱Python或者Java的从业者将投向Swift的怀抱,而以C语言为起点的老鸟们则不妨继续坚持自己的Objective-C之路。
开发技术之争第四位: Python对Ruby
很久很久以前,有一款脚本语言堪称软件领域的功能较多胶。如果大家需要将多个大型项目接驳在一起,那么只需要在操作系统当中简单编写一些代码、任务就能得到顺利完成。
以此为起点,喜爱这些小型语言的开发者们开始拓展其规模、旨在进一步发挥其已经得到证明的出色效果。Ruby在与Rails框架牵手之后爆发出了强大的能量——二者的结合体让开发人员能够以短短几行代码即将复杂的前端与数据库对接起来。
与此同时,Python也找到了自己的粉丝团体——计算机科学家。如今它已经在世界各地的科学实验室中成为当之无愧的天王巨星。而随着统计分析技术在全球各大企业当中不断涌现,作为领头羊的Python在数据科学实验室的强力推动之下、顺利在业务环境中找到了施展的平台。
那么新生代的开发人员是否会由于Python框架那允许使用空格的简便特性而投身其中?Ruby又能否超越Rails,在发展道路上更进一步?Python的内置功能是否会使其成为凌驾于Ruby之上的理想选择?相比之下,与科学家和与Web技术牛人为伍,哪边更酷、更具吸引力?也许这条战线还将延续下去甚至永无休止,其中Web大师们会继续坚持自己的Rails道路、而科学家则安然隐居在Python库所构建起的象牙塔中。
开发技术之争第五位: SQL对NoSQL
审视本轮比试的两位选手,大家会发现其中之一居然是我们祖父辈的技术人就在使用的解决方案。数据能够很好地填充到表当中,而数据库则通过执行外部查询操作将其匹配到对应的表以及正确的行。在另一方面,NoSQL显然代表着一股新生势力,它承诺在速度与并行效率上带来飞跃性提升。不过它也有自己的缺陷——有时候表现会比较糟糕,数据库将返回错误或者前后不一的查询结果。
经验丰富、久经考验的传统数据库方案能够运用其多年沉淀而成的事务处理机制为我们的数据提供理想保护?又或者,大家更倾向于选择一款速度更快、成本更低廉且更具现代特性的工具,从而将工作负载高效地传播到整套设备集群中去?当然,一致性与准确性也同样值得关注,但这些对于一份来自互联网的、内容完全随机的数据表而言明显毫无意义。我们有必要对一切信息都像数据科学家那样加以严格保护吗?答案(通常)是:只有银行或者航空公司等对一致性要求极高的企业才需要利用传统SQL数据库来保障真实事务处理的可靠性。除此之外,其它用户不妨选择速度更快、使用更便捷且更具可扩展性的NoSQL方案。