文档章节

clean code

kaixin651
 kaixin651
发布于 2016/02/28 02:34
字数 554
阅读 54
收藏 0

        某人认为一本关于编码的书某种程度上是过时的--因为编码不再是问题;我们应该关心建模和需求。确实有些人认为我们已经接近编码的终点。马上全部的代码都会自动生成。不将再需要程序员因为业务人员会生成程序。

        胡扯!我们永远也摆脱不了代码,因为代码才能表现出需求的细节。在一些水平上,这些细节无法被忽略或者抽象;他们必须被指定。指定需求到那种细节以致机器能够执行他们就是编程。那样说明书就是代码。

        我认为我们语言的抽象的水平会继续增加。我也认为领域特定语言也会增长。这将是好的事情,但这也不会淘汰掉代码。事实上,用更高水平的领域语言写的说明书就是代码!代码需要更严格,更准确,那样机器才能理解和执行他。

        认为代码会消失的人们就像数学家希望发现数学是没有公式一样。他们希望有一天我们能建造一个能按我们所想要的自动的而不是我们叫他们那么编码的机器。那些机器能理解我们,以至可以把模糊的特定的需求转化为准确地满足需求的可完美执行的程序。

        这将永不会发生。甚至是,使用全部的创造力和直觉的已经能从客户含糊的需求中构建成功系统的那些人。事实上,如果需求说明书已经告诉了我们所有事,那么被确定好的需求就像代码一样,和像可执行的测试代码一样。

        记住,代码是真正的终极地表达需求的语音。我们可以创造接近需求的语言。我们可以创造,帮助我们以正式结构解析和集合需求的工具。但是我们永远不会去除必须的精确度--so there will always be code.

© 著作权归作者所有

共有 人打赏支持
kaixin651

kaixin651

粉丝 2
博文 18
码字总数 3305
作品 0
广州
后端工程师
加载中

评论(1)

甩葱哥
甩葱哥
赞同
php中这种绕过表单验证的办法是如何实现的

下面这段代码,是表单验证的。 //判断是否提交了 if ($_GET['action'] == 'register') { //为了防止恶意注册,跨站攻击 if (!($POST['yzm'] == $SESSION['code'])) { alertback('验证码不正确...

ziluopao
2015/11/04
510
3
Maven 生命周期阶段及插件

Mave生命周期和插件 在项目里用了快一年的maven了,最近突然发现maven项目在eclipse中build时非常慢,因为经常用clean install命令来build项目,也没有管那么多,但最近实在受不了乌龟一样的...

逝去的回忆
2016/10/09
33
0
Why Do Programmers Fail to Write Good Unit Tests?

We programmers are full of opinions when it comes to unit testing. We don't always agree about the importance of unit testing or what role it should play. There is also a lot of......

Leah Grantz
2017/12/27
0
0
baomidou/mybatisplus-maven-plugin

#mybatisplus-maven-plugin #####一、简介 mybatis-plus 代码生成工具的 maven 插件版本 #####二、使用方法 在项目的pom文件中配置以下内容 false...

baomidou
2016/10/10
0
0
ios自动打包脚本,融合xctool、xcodebuild、xcrun

在少数需求下,需要能够自动打包,将app发布到不同的平台,那么下面给出本人使用的自动打包脚本: # 以下内容到分割线是,需要针对每个项目进行配置的部分 buildDay=$(date +%Y%m%d) buildTi...

HillYoung
2016/01/15
1K
2

没有更多内容

加载失败,请刷新页面

加载更多

下一页

qduoj~前端~二次开发~打包docker镜像并上传到阿里云容器镜像仓库

上一篇文章https://my.oschina.net/finchxu/blog/1930017记录了怎么在本地修改前端,现在我要把我的修改添加到部署到本地的前端的docker容器中,然后打包这个容器成为一个本地镜像,然后把这...

虚拟世界的懒猫
48分钟前
1
0
UML中 的各种符号含义

Class Notation A class notation consists of three parts: Class Name The name of the class appears in the first partition. Class Attributes Attributes are shown in the second par......

hutaishi
59分钟前
0
0
20180818 上课截图

小丑鱼00
今天
1
0
Springsecurity之SecurityContextHolderStrategy

注:下面分析的版本是spring-security-4.2.x,源码的github地址是: https://github.com/spring-projects/spring-security/tree/4.2.x 先上一张图: 图1 SecurityContextHolderStrategy的三个......

汉斯-冯-拉特
今天
0
0
LNMP架构(Nginx负载均衡、ssl原理、生成ssl密钥对、Nginx配置ssl)

Nginx负载均衡 网站的访问量越来越大,服务器的服务模式也得进行相应的升级,比如分离出数据库服务器、分离出图片作为单独服务,这些是简单的数据的负载均衡,将压力分散到不同的机器上。有时...

蛋黄_Yolks
今天
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部