编码原则 之 Once and Only Once】的更多相关文章

注:以下图片均来自<如何向妻子解释OOD>译文链接:http://www.cnblogs.com/niyw/archive/2011/01/25/1940603.html      <How I explained OOD to my wife> 原文链接:http://www.codeproject.com/Articles/93369/How-I-explained-OOD-to-my-wife S.O.L.I.D 是面向对象设计(OOD)和面向对象编程(OOP)中的几个重要编…
编码原则: 一般原则 预处理原则 命名和布局原则 类原则 函数和表达式原则 硬实时原则 关键系统原则 (硬实时原则.关键系统原则仅用于硬实时和关键系统程序设计) (严格原则都用一个大写字母R及其编号标识,而推荐原则都用小写字母r及其编号标识,对于前者程序员必须严格遵守,而后者则偶尔可以不遵守) 1.一般原则 R100:任何函数和类的代码规模都不应超过200行(不包括注释). 原因:长的函数和类会更复杂,因而难以理解和测试. r101:任何函数和类都应该能完全显示在一屏上,并完成单一的逻辑功能.…
随着Web和移动应用等的快速发展,越来越多的Web安全问题逐渐显示出来.一个网站或一个移动应用,如果没有做好相关的安全防范工作,不仅会造成用户信息.服务器或数据库信息的泄露,更可能会造成用户财产的损失,因此Web安全问题需要引起广大开发者的重视.接下来的几篇文章中,将会对Web常见的一些攻击以及相关的防范方法进行详细的介绍. 系列文章: Web前端安全之安全编码原则 Web前端安全之跨站脚本攻击(XSS) Web前端安全之跨站请求伪造(CSRF) Web前端安全之点击劫持 Web前端安全之文件上…
作为一个写业务逻辑的boy,我需要专注的就是把业务逻辑写好.写业务逻辑并不复杂,就是把编程最基础的东西使用好,有变量.循环.流程控制.函数.数据库等. 但是写出的逻辑要通俗易懂.易于理解,避免炫技.晦涩.在目前团队中待了一段时间了,根据 code review 和自己的理解整理出一些基本原则. 业务代码思想原则 第一:代码要足够容易阅读. 代码是给程序员阅读的,首先要做到的就是逻辑清晰,易于阅读.所以要避免毫无意义的变量名.嵌套过多的逻辑判断.过于复杂的流程控制.在易读性和性能两者之间,首先要保…
HTML已经走过了近20的发展历程.从HTML4到XHTML,再到最近十分火热的HTML5,它几乎见证了整个互联网的发展.但是,即便到现在,有很多基础的概念和原则依然需要开发者高度注意.下面,向大家介绍这些应该遵循的开发原则. 1.善用DIV来布局 当开发一个Web页面时,要考虑第一件事就是区分页面重点.将这些内容用DIV标签包含起来,页面的代码会呈现出整洁.缩进良好的风格. 1 2 3 4 5 6 <div id="header"></div>  <di…
一.编码说明: 1.系统编码采用三码为原则,通常两码简称之. 1>.子系统或类型 2>.系统小分类 3>.系统大分类 如 IPMS领域业务群: DA 应用软件发展管理系统 DE公用副程式管理 GB金融机构管理系统 GE利率汇率管理系统 GP往来公司管理系统 UB公告栏系统      UB4 公告阅读       UB5 发布新公告 2.系统分类大分类说明如下: A:会计 D:信息作业 G:共享系统 H:人力资源 I:存货 K:工程管理 M:物料.采购及设备管理 O:制程控制及生产追踪 P…
HTML 已经走过了近20的发展历程.从HTML4到XHTML,再到最近十分火热的HTML5,它几乎见证了整个互联网的发展.但是,即便到现在,有很多基础的概念和原则依然需要开发者高度注意.下面,向大家介绍这些应该遵循的开发原则. 1.善用DIV来布局 当开发一个Web页面时,要考虑第一件事就是区分页面重点.将这些内容用DIV标签包含起来,页面的代码会呈现出整洁.缩进良好的风格. 1 2 3 4 5 6 <div id="header"></div>  <d…
UTF-8是一种变长字节编码方式.对于某一个字符的UTF-8编码,如果只有一个字节则其最高二进制位为0:如果是 多字节,其第一个字节从最高位开始,连续的二进制位值为1的个数决定了其编码的位数,其余各字节均以10开头. UTF-8最多可用到6个字节. 如表: 1字节 0xxxxxxx 2字节 110xxxxx 10xxxxxx 3字节 1110xxxx 10xxxxxx 10xxxxxx 4字节 11110xxx 10xxxxxx 10xxxxxx 10xxxxxx 5字节 111110xx 10…
结构 // TODO:JS ParentId 不要使用硬编码. var parentId = record.get('ParentId'); var parentNode = me.getStore().getNodeById(parentId); 优点 减少你大脑的压力,一旦写完 TODO 注释,你即将注释的内容从脑子中的任务队列暂时移除,当然,你每天都需要重新预约 TODO LIST. 简化实现的复杂性,某些代码刚开始没必要编码的非常完善,你希望慢慢演化代码,但是也希望前瞻性的记录一下演化的…
刚看到梁飞谈到dubbo为保证代码质量开发人员必须要注意的,其实也是开发人员应该做的. 1. 防止空指针和下标越界 这是我最不喜欢看到的异常,尤其在核心框架中,我更愿看到信息详细的参数不合法异常, 这也是一个健状的程序开发人员,在写每一行代码都应在潜意识中防止的异常, 基本上要能确保一次写完的代码,在不测试的情况,都不会出现这两个异常才算合格. 2. 保证线程安全性和可见性 对于框架的开发人员,对线程安全性和可见性的深入理解是最基本的要求, 需要开发人员,在写每一行代码时都应在潜意识中确保其正确…
原文 The Once and Only Once principle can be thought of as a subset of the Don’t Repeat Yourself principle, and is one of the most fundamental principles of software development. Duplication of behavior is one of the most common sources of bugs in soft…
The Stable Dependencies Principle states that “The dependencies between software packages should be in the direction of the stability of the packages. That is, a given package should depend only on more stable packages.” Whenever a package changes, a…
相关链接: Separation of Concerns 原文 The Art of Separation of Concerns Introduction In software engineering, Separation of Concerns refers to the delineation and correlation of software elements to achieve order within a system. Through proper separation…
原文 The Hollywood Principle states, “Don’t Call Us, We’ll Call You.” It’s closely related to the Dependency Inversion Principle, and illustrates a different way of writing software from the more traditional form of programming in which one’s own code…
Explicit Dependencies Principle The Explicit Dependencies Principle states: Methods and classes should explicitly require (typically through method parameters or constructor parameters) any collaborating objects they need in order to function correct…
原文 The principle of Persistence Ignorance (PI) holds that classes modeling the business domain in a software application should not be impacted by how they might be persisted. Thus, their design should reflect as closely as possible the ideal design…
如果最小化的使用了for.while等控制结构,那么,之前控制结构对应的两个控制语句(break he continue)也需要有对应的替换方案,好在几乎所有支持高阶函数的语言的集合API都有支持.…
SOLID是面向对象设计和编程(OOD&OOP)中几个重要编码原则 即:SRP单一责任原则: OCP开放封闭原则: LSP里氏替换原则: ISP接口分离原则: DIP依赖倒置原则. 1. 单一责任原则(SRP)      当需要修改某个类的时候原因有且只有一个.换句话说就是让一个类只做一种类型责任,当这个类需要承当其他类型的责任的时候,就需要分解这个类. 类被修改的几率很大,因此应该专注于单一的功能.如果你把多个功能放在同一个类中,功能之间就形成了关联,改变其中一个功能,有可能中止另一个功能,这…
S.O.L.I.D是面向对象设计和编程(OOD&OOP)中几个重要编码原则(Programming Priciple)的首字母缩写. SRP The Single Responsibility Principle 单一责任原则 OCP The Open Closed Principle  开放封闭原则 LSP The Liskov Substitution Principle 里氏替换原则 DIP The Dependency Inversion Principle 依赖倒置原则 ISP The…
字符发展 1. 美国 ASCII-(American standard code information interchange) 美国信息互换标准代码 范围:1-127 ; 单字 备注:前部用作控制码,0x20以下的字节状态称为"控制码":后面跟数字,字母大小写至127   2. 美国 ASCII扩展编码 范围:128-255; 单字 备注:很多画表格时需要用下到的横线.竖线.交叉等形状,一直把序号编到了最后一 个状态255   3. 中国GB2312 原由:中国人们得到计算机时,有…
在项目中碰到了ajax传来的参数,后台接收值乱码(如下图)的问题 在此记录一下 前台: 后台: 解决问题 为什么需要编码 怎样编码 实际出现的问题解决方法 1.为什么需要编码? URL 只能使用 ASCII 字符集来通过因特网进行发送. 也就是说URL只能使用英文字母.阿拉伯数字和某些标点符号,不能使用其他文字和符号   这意味着 如果URL中有汉字,就必须编码后使用. 但是麻烦的是 标准的国际组织并没有规定具体的编码方法,而是交给应用程序(浏览器)自己决定. 这导致"URL编码"成为…
S.O.L.I.D是面向对象设计和编程(OOD&OOP)中几个重要编码原则(Programming Priciple)的首字母缩写. SRP The Single Responsibility Principle 单一责任原则 OCP The Open Closed Principle  开放封闭原则 LSP The Liskov Substitution Principle 里氏替换原则 DIP The Dependency Inversion Principle 依赖倒置原则 ISP The…
我第一次听说编码原则中有"尽快失败"这一条时,觉得很奇怪,为什么代码要失败?应该成功才对呀.但事实上,当代码在遇到错误的时候应该尽快的终止.为了检测各种状态,我们需要频繁的创建if语句与条件分支,而这些条件检测的结果不是成功就是失败(true&&false).之所以会有这么多的条件检测语句,是因为如果不在构建过程中植入这些监测点(checkpoint),那么浏览器内核会执行很多无用的代码,并占用许多宝贵的CPU性能和处理时间,拖慢网站加载速度. 根据那些判断结果为fal…
S.O.L.I.D是面向对象设计和编程(OOD&OOP)中几个重要编码原则(Programming Priciple)的首字母缩写. SRP The Single Responsibility Principle 单一责任原则 OCP The Open Closed Principle  开放封闭原则 LSP The Liskov Substitution Principle 里氏替换原则 DIP The Dependency Inversion Principle 依赖倒置原则 ISP The…
很久以前发在他处的一篇博文,今天翻出来重新整理了一下 Unicode 字符集 共分为 17 个平面(plane), 分别对应 U+xx0000 - U+xxFFFF 的 code points, 其中 xx := 00 - 10.其中第 0 平面不包含为 UTF-16 编码保留的 U+D800 - U+DFFF.第0平面包含了最常用的字符,被成为 Basic Multilingual Plane 或 BMP (基本多语言平面). Unicode 在编码上有多种实现,常见的有 UTF-8, UTF…
上次我们使用的是字节流,还有一种方式就是字符流,上次说过如何分辨使用哪种流,如果记事本可以读懂则使用字符流,否则使用字节流.使用字符流就需要牵扯到编码的问题,下面给出一种转化流的格式. OutputStreamWriter OutputStreamWriter(OutputStream os):默认编码,GBK OutputStreamWriter(OutputStream os,String charsetName):指定编码.InputStreamReader InputStreamRead…
面向对象设计原则是OOPS编程的核心, 但我见过的大多数Java程序员热心于像Singleton (单例) . Decorator(装饰器).Observer(观察者) 等设计模式,而没有把足够多的注意力放在学习面向对象的分析和设计上面.学习面向对象编程像"抽象"."封装"."多态"."继承" 等基础知识是重要的,但同时为了创建简洁.模块化的设计,了解这些设计原则也同等重要.我经常看到不同经验水平的java程序员,他们有的不知…
S.O.L.I.D 是面向对象设计(OOD)和面向对象编程(OOP)中的几个重要编码原则(Programming Priciple)的首字母缩写. 面向对象设计的原则 SRP  The Single Responsibility Principle 单一职责原则 OCP   The Open Closed Principle 开放封闭原则 LSP  The Liskov Substitution Principle 里氏替换原则 ISP   The Interface Segregation P…
web 安全:  https://blog.csdn.net/wutianxu123/article/category/8037453/2 web安全原则 安全应该是系统开发之初就考虑的问题.换句话说,安全是一个成熟系统的必备特性.在项目说明中不谈安全,并非因为不需要,而是因为安全都是隐藏的. 安全性设计中的关键问题是挖掘出系统存在的安全漏洞.在这我们可以采用黑盒测试或者安全检测工具来进行.在开发过程中,遵守一些web安全原则,是提高安全很好的措施: 一.Web部署原则 1.如果Web应用对In…
申明:本文非笔者原创,原文转载自:https://github.com/SecurityPaper/SecurityPaper-web/blob/master/_posts/2.SDL%E8%A7%84%E8%8C%83%E6%96%87%E6%A1%A3/2018-08-17-SDL-7-IOS%E5%AE%89%E5%85%A8%E7%BC%96%E7%A0%81%E8%A7%84%E8%8C%83.md 1.目的 为了使系统开发人员能够编写符合安全要求的代码,以降低代码安全漏洞,减少代码被…