47. 避免产生直写型(write-only)的代码
什么叫直写型代码?
编写代码的时候,它看似非常直接和简洁,因为他是由某些基本想法自然而形成的。然后,阅读代码的人却很难将最终的语句还原成它所依据的思路。虽然很容器一编写,但是难以阅读和理解。
比如下面代码:
std::vector<int> datas;
int x, y;
...
datas.erase(std::remove_if(std::find_if(datas.rbegin(), datas.rend(), bind2nd(std::greater_equal<int>(), y)).base(), datas.end(), bind2nd(less<int>(), x)),datas.end()
);
它的作用是删除datas中所有值小于x的元素,同时再最后一个值不小于y的元素之间的所有元素都应该保留下来。
软件工程领域中由一条真理:
代码被阅读的次数远远大于被编写的次数。软件的维护过程通常比开发过程需要消耗更多的时间。如果无法正确地阅读和理解软件的含义,自然也谈不上对软件的维护;一个无法被维护的软件也就不具备任何价值。
47. 避免产生直写型(write-only)的代码相关推荐
- 深入理解操作系统(16)第六章:存储器层次结构(2)高速缓存存储器+对程序性能的影响(包括:L1/L2高速缓存历史/缓存写:直写和写回/暂无L4级缓存/缓存命中率/存储器山/高速缓存友好的代码/)
深入理解操作系统(16)第六章:存储器层次结构(2)高速缓存存储器+对程序性能的影响(包括:L1/L2高速缓存历史/缓存写:直写和写回/暂无L4级缓存/缓存命中率/存储器山/高速缓存友好的代码/) 1 ...
- emmc linux 识别分区_EMMC芯片电视主板直写厂家引导程序
如今智能电视在市场上非常普遍,电视主板维修经常会涉及到数据抄写.使用RT809H编程器可以方便的读取正常机数据进行数据备份或制作量产,写入备份数据或量产数据简单的操作就可以修复机器.但有时遇到没有备份 ...
- 视频监控系统中的流媒体服务器、直写和全切换三种取流架构方案
一.流媒体服务器架构 前摄像头视频信号通过转发流媒体服务器转发至上壁面显示和终端接入,视频存储磁阵列通过流媒体存储服务器写入.实时流.存储流.回放流.控制信令调用流如下: 前端摄像头的实时流需要流媒体 ...
- 光刻技术-无掩模高精度激光直写
无掩模高精度激光直写 特点:无掩模光刻 型号:德国海德堡DWL66+ 样品:2至8英寸,最大9英寸方形版,碎片15mm*15mm以上: 分辨率最高精度:0.3μm: 套刻精度:±0.5μm: 激光光源 ...
- PRISEMI芯导科技推出PDG7115直驱型E-Mode氮化镓功率IC
PRISEMI芯导科技推出PDG7115直驱型E-Mode氮化镓功率IC 氮化镓以开关速度快,导阻低,低输入输出电荷的优势,应用在快充上逐渐取代了传统的高压硅MOS管.使用氮化镓取代硅MOS管,不仅降 ...
- 假定主存地址位数为32位,按字节编址,主存和cache之间采用直接映射方式,主存块大小为1个字,每字32位,写操作时采用直写(Write Throght)方式,则能存放32K字数据的cache的总容量
5单选(1分) 假定主存地址位数为32位,按字节编址,主存和cache之间采用直接映射方式,主存块大小为1个字,每字32位,写操作时采用直写(Write Throght)方式,则能存放32K字数据的c ...
- SCREEN Semiconductor Solutions与台湾国立清华大学携手成立电子束直写光刻试产线,以实现具有唯一ID的安全芯片
日本京都--(美国商业资讯) --2018年4月20日,SCREENSemiconductor Solutions Co., Ltd. (SCREEN)与台湾国立清华大学(NTHU)在启动12英寸硅片 ...
- 直驱型风力发电机侧变流器 通过研究分析当前直驱型风力发电机的特性以及工作原理
直驱型风力发电机侧变流器 通过研究分析当前直驱型风力发电机的特性以及工作原理,直驱型风力发电系统主要由风力机.整流控制系统.逆变系统极易并网四大部分组成. 其中机侧变流器是整流控制系统的核心组成部分, ...
- 视频监控系统中的流媒体服务器,视频监控系统中的流媒体服务器、直写和全切换三种取流架构方案...
原标题:视频监控系统中的流媒体服务器.直写和全切换三种取流架构方案 一.流媒体服务器架构 前摄像头视频信号通过转发流媒体服务器转发至上壁面显示和终端接入,视频存储磁阵列通过流媒体存储服务器写入.实时流 ...
- 老码农:如何写出让自己满意的代码
今天有位朋友在微博上问我这样一个问题: "@老码农的自留地 ,最近出于学习目的写一个管理系统,越到后边,越觉得自己前边的代码写得烂.前辈,我想让代码写得更好一点,能不能谈谈你的经验,给我指点 ...
最新文章
- 电脑不能打字_意外收到一台ThinkPad T400笔记本电脑,简单升级后,办公没问题...
- 一种基于邻域的聚类算法
- PHP 几个常用的加密函数
- 前端:CSS/13/HTML引入CSS的方法,CSS表格属性,盒子模型,上下外边距合并
- 禁止迅雷:迅雷服务器地址大全+ISA计算机集(xml)
- atlas 200 简单确认驱动与固件版本的方法
- python locust post 参数拼接md5_Locust性能测试--接口加密参数关联
- css 背景色半透明 子元素不透明
- 梅宫主:聊聊创业路上关于韭菜的事儿。。
- 【机器学习】语音处理介绍
- day 83 Vue学习三之vue组件
- 基于Qt ffmpeg opengl开发跨平台安卓实时投屏软件
- 软件测试外包的战术有哪些
- R中因子(factor)
- [学习记录]realsence d455 +vins-fusion+px4+ego_planner下无人机的悬停与控制
- uni-app的发展历程
- 方钢管弹性模量计算方式_普通方钢承重计算公式
- FruitAttack(水果消消看)源代码下载
- python实战代码
- 1852. Ordered Fractions
热门文章
- 利用 WireShark 深入调试网络请求
- Refactoring Game Entities with Components
- Flyod和Warshall
- 13.卷1(套接字联网API)---守护进程和 inetd 超级服务器
- 一个GUI程序究竟会有几个线程?
- html标签b规定粗体文本
- 计算机中的bit byte(B) mb gb 的关系
- 表单从gb2312的页面提交到utf-8页面,或者表单从utf-8的页面提交到gb2312页面的解决办法...
- Python自动化中的元素定位xpath(二)
- Cocoapods的安装及使用