ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

软件开发

2019-02-11 22:03:52  阅读:184  来源: 互联网

标签:架构 软件开发 技术 可信 安全 设计 我们


程序开发

2018年底程序员被裁的不少,很多程序员开始担忧起前景来,其实如果你能做到这下面要求的应该是不担心被裁的!

我们要从最基础的编码质量做起,视高质量代码为尊严和个人声誉。代码就像是高楼大厦的一砖一瓦,没有高质量的代码,可信的产品就是空中楼阁。我们要优化并遵循公司各种编程规范,遵从架构与设计原则,熟练使用各种编程库和API,编写出简洁、规范、可读性强、健壮安全的代码。

这一段是说给我们程序员看的,这其实也是对程序员的基本要求,大家看看自己,看看身边,真能做到的有多少?像我一样觉得自己还做的不够好的,咱还是努力学习吧,多练练,多用点心肯定更没问题的。

架构

说完程序员开始说架构师了:

我们要深刻理解架构的核心要素,基于可信导向来进行架构与设计。

看到没有,又提到可信了,架构设计的时候,别再天马行空,啥新酷用啥,啥流行用啥,一定要“可信导向”,架构设计目标先搞清楚!

再是细节:

在确保可信的前提下,要在性能、功能、扩展性等方面做好权衡;慎重地定义我们的模块与接口,真正做到高内聚与低耦合;我们要遵循权限和攻击面最小化等安全设计原则,科学设计模块之间的隔离与接口,提升安全性;低阶架构与设计要遵循高阶的架构与设计原则,在充分理解原有架构与设计的情况下,持续优化;我们要熟悉各种设计模式,重用公共成熟组件和服务,避免重复劳动。

“高内聚与低耦合”,“权限和攻击面最小化”,“模块之间的隔离与接口”,“重用公共成熟组件和服务”……道理我都明白,做到可不容易!

技术债务

华为这些年高速发展,早些年为了追求速度肯定也没少走捷径,这些年下来也肯定没少欠技术债务,现在也是一个从追求速度到追求质量转型的契机。所以信中说完架构开始讲技术债务了:

我们要重构腐化的架构及不符合软件工程规范和质量要求的历史代码。我们知道,再好的架构,其生命力也是有限的。随着时间的推移、环境的变化以及新技术、新功能特性的引入,架构也会腐化。面对腐化了的架构,要毫不犹豫地去重构它。同时主动以可信设计原则为导向,去重构不符合软件工程规范和质量要求的历史代码,提升软件架构的生命力。

我们都知道,没有万能的架构,只有适合当时需求,当时技术条件和人员的架构,时间推移了很多架构就满足不了要求了,就需要重构了!作为80后,小时候其实生活挺艰苦的,那时候我们穿衣服都讲究的是:“新三年,旧三年,缝缝补补又三年”,架构也一样嘛,不满足需求我们先修修补补,真要重构挑战还是不小的,但是不去做它会一直成为发展的一个障碍,这封信也算是推了一把:“面对腐化了的架构,要毫不犹豫地去重构它。”,当然你重构,也不要忘记“可信”这个根本目标:“同时主动以可信设计原则为导向”。

其实Google在这方面已经走在前面了,一直鼓励重写代码,任何软件每隔几年就重写一遍,这样可以优化代码,采用最新技术,去掉一些没有价值的功能,最重要的是让新员工得到锻炼,保持高昂的斗志。不知道这点是不是华为在像Google学习!

安全

这些年,互联网发展很快,但是安全事故却层出不穷:开房记录被泄漏、密码被泄漏、比特币被盗……这暴露出业界其实对安全是不够重视的,所以信中也不止一次提到安全问题:

公司已经明确,把网络安全和隐私保护作为公司的最高纲领。”
“我们要深入钻研软件技术,尤其是安全技术。”

 

“我们要遵循权限和攻击面最小化等安全设计原则,科学设计模块之间的隔离与接口,提升安全性”

 

“编写出简洁、规范、可读性强、健壮安全的代码。

要打造一个“安全”的软件,就是首先要有安全意识,然后要懂安全技术,在整个开发过程中要从架构设计、代码方方面面去注意。

技术是工具

这些年开发界一直有些不好的风气,就是都认为自己的技术是最牛的,写后端的看不上前端的,用angular的看不上vue,写PHP的认为自己的语言是全世界最好的,开发的还看不上测试的。但是信中这一句话不要忽视呀:“软件技术是我们打造产品的基本工具”,技术只是工具,只是我们用来打造产品的工具!

“技术是否先进,技术选择是否合理,将决定我们软件的高度;”,技术的选型,不仅看的是不是先进,还要看是不是适合当前产品项目,并不是什么什么新酷就用什么!

“我们要深入学习架构与设计、编码、测试、安全、可用性、性能、维护性、体验等技术,并科学运用这些技术。”,既然技术只是工具,那么我们就没必要给自己设置各种技术壁垒障碍。如果开发就只学编码,测试就只学测试,认为安全那应该是搞安全的事,这样的话是非常不利于团体协作的,每个人都在一个领域能有深入的钻研,同时对其他领域有一定了解,对个人,对团队是非常有利的一件事。这样也不需要DevOps这种为了兼顾开发、测试、运维三种角色而存在的工种!

一致性

我们做软件开发的都知道,也看过很多段子:从客户的需求,到最终的实现,总是差别很大;我们在项目初始的时候制定了很多规范,却总是不了了之,难以执行;我们良好的设计,在编码实现的时候,因为赶进度、开发人员偷懒等各种原因绕开设计,抄近路,最后设计和编码无法一致……

 

标签:架构,软件开发,技术,可信,安全,设计,我们
来源: https://www.cnblogs.com/zhousenhua1227/p/10363303.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有