课程咨询: 400-996-5531 / 投诉建议: 400-111-8989
认真做教育 专心促就业
我们在讲ui设计的时候曾经给大家也分享了不少关于ui设计的设计思维等内容,而今天我们就再来聊聊,在软件开发项目中都存在哪些软件开发思维。
松鼠综合症
在你深入研究的时候,你会发现软件充满了无穷级数的干扰和如同鼠穴一般错综复杂的走向。如果你放纵内心想像松鼠一样囤货的欲望,你固然可以学到很多东西,但如果你能退一步,每隔一段时间问问自己是否真的需要探索这条特殊的鼠洞,那么你能收获更多。尝试停留在一个小的范围内可以帮助你达到
领域
软件是极其复杂的,复杂到足以让我们定期创建出没有人能一次性明白的代码。我们通过更小和更独立的部分,通过定义各部分之间的接口来构建软件,实现其复杂。这样一来,如果你能在你的脑中适应更小的一部分,那工作于那个块和相信其他部分正常的时候多少更安全一点(至少当一切顺利的时候)。
完全获取哪怕更小的块中的一个到你的头脑中也可以是很难的,但与此同时,你可以做到一些诸如只知道你正在看的代码行是错误的,以及如何修复这样的事情。那就是软件的领域了。这非常重要,并非因为你全力以赴,而是因为如果你没有身处那个领域,那么想要做对一切事情几乎是不可能的。而这给我们带来的是
中断
中断使得你脑中丢弃了一些来之不易的内容,从而阻碍你完成任何事情。十分钟的中断当然杀不光所有:但是它需要45分钟才能让你的脑子回到你中断的地方。
这可能是有关软件工作难向人们解释的事情——尽管大多数领域都有这样的事情,但没有我们这么悲剧。发生差异的部分原因是
直觉失败
许多我们认为的“直觉”的确有效利用了我们大脑中的结构——历经超过百万年进化,已经变得高度优化——来帮助我们管理我们周围物理世界的复杂性。但是,从事电脑工作并不是我们周围物理世界的一部分:我的笔记本电脑创建了她自己的世界延伸,而我必须去这个延伸的世界工作。
软件工程的力量在于那个世界的扩展是非常非常具有可塑性的——这力量是惊人的。不过,诅咒之一就是由于我们不再工作于物理世界,我们的直觉就不再有用,这让一切都变得很难理解,除非我们做一些额外的工作来确保我们的直觉可以帮助我们。
时间是不可思议的
现在的时代计算机的运行是极其快速的。即使你手机运行的时间尺度比我们的大脑快十亿倍:一秒时间传递给我们就像过了31年,不论是给予还是获取,仅仅一个传递过程。这意味着我们不能实时观看计算机正在做什么。
相反,我们不得不发明方法强制机器来匹配我们极其缓慢的步伐,通常为要求计算机等我们,或记住它正在做的一切事情且留下日志可供我们稍后读取。当然,这些技术是如此地拖累事情的发展,以致于任何与时间相关的问题通常都会消失,或者至少看起来不同。
极端的话,我们终还是盲人摸象,一点也不知道为什么代码之所以脱离轨道。为了避免出现这种情况,我们不得不做一些真正的事情来安排代码向我们解释其决定。这工作往往很难且没有吸引力——但它至关重要,因为受到了以下定律的重大影响
【免责声明】本文系本网编辑部分转载,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如涉及作品内容、版权和其它问题,请在30日内与管理员联系,我们会予以更改或删除相关文章,以保证您的权益!