
时至今日,在软件编程行业,开发者的抽象水平早已翻了几番。我觉得软件编程的抽象程度可能又要升级了。
也许,这个世界上必须一直有会写会看懂的编辑器,但对于大多数开发者来说,在日常工作中,他们只有学会如何使用系统进程或计算机语言所呈现的API,才能与计算机 *** 作系统进行交互。这也是他们能控制的最起码的水平。他们不用关注CPU每天解决什么命令,甚至不用手动分配内存。
在不久的将来,开发人员将永远不必考虑程序流实际运行在哪个物理设备上。
1.客户习惯云
每个人都在向云迁移。
自然,这已经不是什么新想法了。但我花了一段时间才弄明白“搬到云上”这句话的真正含义。
原谅我用了这么一个时髦的词——云。由于云是我现阶段听到的,所以最好描述一下隐藏了硬件配置基本信息的手机软件。
也许从客户的角度来看,云听起来并不新鲜。因为大家早就习惯了从随机的机器和设备上浏览互联网技术上的文档和数据信息,不用去关注这些数据信息在哪里。
很久以前,人们就不再关注云部署在哪里了(意大利人可能例外:他们觉得海外的云服务提供商是不可控的。作者是意大利人,此处为自我调侃)。我们工作中的大部分社交媒体和特殊工具都是可以“移动”的。大家的笔记本、手机都成了平价产品。他们不必展示太多复杂的功能和高端的硬件配置,只需展示一个可以与云交互的对话框,就可以考虑日常社交媒体游戏和娱乐的必要性。虽然在某些情况下,比如玩游戏,硬件配置规定还是很重要的,但是随着云游戏平台的出现,高端手游PC终将成为过去。
对于客户来说,应用了云之后,就不用再关注硬件配置带来的问题了。这给他带来了很大的便利,所以转移到云服务器上也是合理的。因为人们不关注也不想了解这种特殊工具是如何工作的,只是期望它们简单实用,能够成功辅助自己完成特殊工作。专用工具的维护留给其他人。
2.开发和设计必须是云
2.1. *** 纵就是压力。
对于大多数人来说, *** 控你的电脑真的是一种压力。
开发者尊重技术。如果你想控制好你的系统软件和数据信息。不是吗?我对这件事表示怀疑。至少对于大部分像我这样的开发者来说,我们只是普通人,自己创业或者打工赚钱。如果新的方式能让开发、设计、管理方式更合理,更有利可图,我们会选择。
完全控制系统和数据信息需要时间和精力,所以大部分生产系统都放在云端。人人从亚马逊、谷歌、微软租用云服务器,将静态数据资源消息推送到CDN。正如您所记得的,越来越多的功能已经显示为服务项目,而不是管理它们。如数据库查询、百度搜索引擎、服务器防火墙、消息队列、文档存储、三层交换机、Web服务器、网络服务器、稳定性测试仪、认证中心、密钥管理、客户身份认证等。大部分手机软件的每一个常用组件都可以用一个服务项代替。
每个人自己决定的商业逻辑,也就是如何把每一个常见的组件连接在一起,是唯一能让我们的手机软件越来越独特的东西。
但是,当我们在手机软件的整个流程中将业务逻辑表达为计算机语言和特殊工具时,还是要考虑物理设备。每个人都勤奋地在物理设备上安装Windows和Linux,或者创建虚拟机并在其上安装计算机 *** 作系统,然后在一系列无用的、嵌入式的计算机 *** 作系统中实现每个人的业务逻辑。
2.2.云平台的现实意义
如果我们抛开过去,放弃 *** 控,建立这些更适合表达商业逻辑的高效服务平台会怎么样?
如果要处理更复杂的问题,就要有扎实的基础,有更高的抽象层次。更复杂的业务流程行业规定大家只关心业务逻辑,其他一概不管。所以一定要离开构建抽象基础和解决业务逻辑的各个层面。
抽象基本上是处理复杂问题成功的关键,因为每个人总是需要高层次的人才在这个基础上工作。但并不是大部分开发者正在努力处理或者未来想要处理的问题。然而我不知道,抽象的基础是当今世界所有问题的根源,在这个世界上,技术具有帮助你处理其他问题的发展潜力。
因为我们应该合理的应用技术,而不是在一些无意义的抽象层上处理复杂的问题。现在是时候认识到每个人都需要一个新的抽象层次了。让我们建立一个可靠高效的抽象层,让当前的语言、服务平台和专用工具做自己擅长的事情。
2.3.云平台的特性
与低级服务平台相比,这种以性能级别为主的编程服务平台有一些不同的特点:一般只连接低级组件的“强力胶”,按照原语级别的API与这类组件进行通信。系统软件的启动和停止由下层服务平台解决,使得编程服务平台可以根据需要动态加载相关资源。一些重要的特征偏好的日常任务由底层原语解决。此外,还有许多特征来定义我们已经表达的系统软件。
2.4.垄断和对外开放
你还记得我之前提到的放弃 *** 控吗?如你所知,这些赚取丰厚利润的大型软件公司已经 *** 纵了世界。如果我们不指望所有的权利最终都掌握在这样一个大人物手中,你最好学会那样做。因为一个健康的销售市场必须在市场中竞争。你不应该等着大公司拿出服务平台,把每个人都限制在自己的想法和商品上。我们必须建立一个有许多选择和不同想法的卫生系统。很高兴看到大中型云服务商有很多替代品,比如netlify,fastly,DigitalOcean。在此我要向他们表示感谢 !
2.5.标准和特殊工具
类似于计算机 *** 作系统和计算机语言的多样性,我们要保证云平台的多样性,要保证它们能够互相兼容,共享资源规范和协议,就像现在电子邮件和网络技术被广泛使用一样。在这些方面,CNCF做出了很大的努力,制定了像cloudevents和openmetrics这样的标准!
除了标准,抽象层中要处理的另一个重要问题是开发环境。开发人员通常习惯于在他们自己的系统软件下检测、监督和调整代码。我觉得创建一个虚拟机,设置器皿,在笔记本上开发设计,不是一个好办法。相反,每个人都应该将开发工具迁移到云中。 光有Websockets是不够的。更何况大家都有可以用的实时API,可以在这里造货,帮助开发者提升主力生产力。这些方面也有很多要做的,把IDE搬到云端只是第一步。
3.摘要
该文体现了创作者对云计算技术的深度思考,从开发者的角度明确了业务逻辑和 *** 控之间的关系,画出了他心目中的云平台的特点。最后,他明确提出了自己对云平台的标准和开发环境的想象。现阶段,AWS的无服务器可能已经做得很好了,但离创作者的宏伟蓝图还差得很远,同样的垄断也是他拒绝看到的。或许在不久的将来,开发软件的学习曲线会越来越平坦,开发者可以集中大量精力在业务逻辑上,其他的就交给云平台了。
讲解员介绍:邱仁波,有多年大数据中心业务数据分析和数据库查询经验,现就职于某省市机关事业单位IT部门。关注全球极客每日新闻报道,前后左右科技。外国专业知识装卸工。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)