首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    从软件历史看架构的未来:编程不再是精英们的游戏

    软件历史上有过两次危机,有危机就有变革契机,第一次引出了“结构化编程”,第二次引出了“面向对象编程”,并直接导致软件工程的诞生。今天我们且不用“第三次软件危机”这样的表述,但可以看到的是,从 2010 年左右开始兴起的云计算是程序的运行环境继“大型计算机”转变到“客户端 - 服务器”之后的又一场巨变。与前两次软件危机带来的变革契机一样,现有的许多软件架构和开发方法,一定也会在以十年为计数单位的时间段内逐渐被颠覆,而今天你我所谈的云原生、微服务等话题,仅仅是这次变革浪潮的开端。那么,软件开发的下一个核心矛盾将会是什么?下一个时代的软件架构会具备何种特征?在今天由极客邦科技举办的 ArchSummit 全球架构师峰会 2021(深圳站)上,华为 SaaS 首席软件教练、《深入理解 Java 虚拟机》系列书籍作者周志明发表了主题演讲《从软件的历史看架构的未来》,以下为演讲内容整理。

    04

    面向对象程序设计的由来

    最早的程序设计都是采用机器语言来编写的,直接使用二进制码来表示机器能够识别和执行的指令和数 据。简单来说,就是直接编写 0 和 1 的序列来代表程序语言。例如:使用 0000 代表 加载(LOAD),0001 代表 存储(STORE)等。 机器语言由机器直接执行,速度快,但一个很明显的缺点就是:写起来实在是太困难了,一旦你发现自己 写错了,改起来更蛋疼!这样直接导致程序编写效率十分低下,编写程序花费的时间往往是实际运行时间 的几十倍或几百倍。 有一个关于机器语言和比尔盖茨的笑话,是说比尔盖茨拿着绣花针在一张光盘上戳,把 Windows 给戳出 来了!但如果真的让你去戳,不要说 Windows,连一个简单的“Hello world”都要让人戳到眼睛冒烟!

    04

    《软件工程导论第6版》--张海藩 牟永敏 课后答案及其详解 第1章 软件工程学概述

    一、什么是软件危机?它有哪些典型表现?为什么会出现软件危机? 答:软件危机是指在计算机软件开发、使用与维护过程中遇到的一系列严重问题和难题。它包括两方面:如何开发软件,已满足对软件日益增长的需求;如何维护数量不断增长的已有软件。 软件危机的典型表现: (1) 对软件开发成本和进度的估计常常很不准确。常常出现实际成本比估算成本高出一个数量级、实际进度比计划进度拖延几个月甚至几年的现象。而为了赶进度和节约成本所采取的一些权宜之计又往往损害了软件产品的质量。这些都降低了开发商的信誉,引起用户不满。 (2) 用户对已完成的软件不满意的现象时有发生。 (3) 软件产品的质量往往是靠不住的。 (4) 软件常常是不可维护的。 (5) 软件通常没有适当的文档资料。文档资料不全或不合格,必将给软件开发和维护工作带来许多难以想象的困难和难以解决的问题。 (6) 软件成本、软件维护费在计算机系统总成本中所占比例逐年上升。 (7) 开发生产率提高的速度远跟不上计算机应用普及的需求。 软件危机出现的原因: (1) 来自软件自身的特点:是逻辑部件,缺乏可见性;规模庞大、复杂,修改、维护困难。 (2) 软件开发与维护的方法不当:忽视需求分析;认为软件开发等于程序编写;轻视软件维护。 (3) 供求矛盾将是一个永恒的主题:面对日益增长的软件需求,人们显得力不从心。

    02

    程序员能纯靠技术渡过中年危机吗?

    靠技术99%的程序员都不行,因为99%的程序员技术都一般,考察你的技术的标准应该是不可替代性,如果公司里或者市场上找个人比你年轻,比你肯干,比你能加班,然后即便技术只能达到你的50%,老板也可能会替代你,因为年轻还有一个未来培养的预期。况且技术很多时候是看不见摸不着的,有句话:软件你能看到的都是不值钱的,这也说明技术有很多是看不到的。那么如果中年的你去找工作,可能会遇到年龄歧视,老板根本不给你机会。我记得当年我的某个老板要求我做管理,他说:我不需要大头兵,我不管技术如何,你的年龄只能带团队,这样我的团队才是正常的。那么如何渡过中年危机呢?我认为是根本不要想什么中年危机。在你的字典里没有这个词,不断的学习技术更新技术不是为了什么中年危机,是我们自己愿意,编程是我的信仰和爱好,珍惜每一份工作,感恩给你工作的每一个人。同时,要保证身体和精神两个方面的健康,多培养工作以外的技能和爱好。一个成功的人,必然是热爱生活、认真付出、踏实努力、懂得珍惜感恩的人。也是会调节工作、生活、家庭之间关系的高手。这样的人永远年轻。

    09
    领券