编程风格(Coding Style)要求
2.1.1 文件
(1) 每个模块(module)一般应存在于单独的源文件中,通常源文件名与所包含模块名相同。
(2) 每个设计文件开头应包含如下注释内容:
? 年份及公司名称。
? 作者。
? 文件名。
? 所属项目。
? 顶层模块。
? 模块名称及其描述。
? 修改纪录。
2.1.2 大小写
(1) 如无特别需要,模块名和信号名一律采用小写字母。
(2) 为醒目起见,常数(`define定义)/参数(parameter定义)采用大写字母。
2.1.3 标识符
(1) 标识符采用传统C语言的命名方法,即在单词之间以“_”分开,如:max_delay、data_size等等。
(2) 采用有意义的、能反映对象特征、作用和性质的单词命名标识符,以增强程序的可读性。
(3) 为避免标识符过于冗长,对较长单词的应当采用适当的缩写形式,如用‘buff’代替‘buffer’,‘ena’代替‘enable’,‘addr’代替‘address’等。
2.1.4 参数化设计
为了源代码的可读性和可移植性起见,不要在程序中直接写特定数值,尽可能采用`define语句或paramater语句定义常数或参数。
2.1.5 空行和空格
(1) 适当地在代码的不同部分中插入空行,避免因程序拥挤不利阅读。
(2) 在表达式中插入空格,避免代码拥挤,包括:
赋值符号两边要有空格;
双目运算符两边要有空格;
单目运算符和操作数之间可没有空格,
示例如下:
a <= b;
c <= a + b;
if (a == b) then ...
a <= ~a & c;
2.1.6 对齐和缩进
(1) 不要使用连续的空格来进行语句的对齐。
(2) 采用制表符Tab对语句对齐和缩进,Tab键采用4个字符宽度,可在编辑器中设置。
(3) 各种嵌套语句尤其是if...else语句,必须严格的逐层缩进对齐。
2.1.7 注释
必须加入详细、清晰的注释行以增强代码的可读性和可移植性,注释内容占代码篇幅不应少于30%。

编程风格(Coding Style)要求的更多相关文章

  1. python开发_python代码风格(coding style)

    我们要做python开发,我想python中的代码风格我们有必要了解一下 这样对我们自己和他们所编写的代码都有好处的. 下面是8点重要代码风格注意事项: ONE : Use 4-space inden ...

  2. [中英对照]Linux kernel coding style | Linux内核编码风格

    Linux kernel coding style | Linux内核编码风格 This is a short document describing the preferred coding sty ...

  3. 编码风格——linux内核开发的coding style

    总结linux内核开发的coding style, 便于以后写代码时参考. 下面只是罗列一些规则, 具体说明可以参考: 内核源码(Documentation/CodingStyle) 01 - 缩进 ...

  4. python coding style guide 的快速落地实践——业内python 编码风格就pep8和谷歌可以认作标准

    python coding style guide 的快速落地实践 机器和人各有所长,如coding style检查这种可自动化的工作理应交给机器去完成,故发此文帮助你在几分钟内实现coding st ...

  5. MATLAB 编程风格指南及注意事项

    MATLAB编程风格指南Richard Johnson 著Genial 译MATLAB 编程风格指南Richard JohnsonVersion 1.5,Oct. 2002版权: Datatool 所 ...

  6. EAFP和LBYL 两种防御性编程风格

    EAFP:Easier to ask for forgiveness than permission 获得事后原理总是比事先得到许可要容易的多. 这个EAFP在python中表现的比较多.EAFP,T ...

  7. Google's C++ coding style

    v0.2 - Last updated November 8, 2013 源自 Google's C++ coding style rev. 3.274 目录 由 DocToc生成     头文件   ...

  8. [CPP] Coding Style

    C++ Coding Style C++很多强大的语言特性导致它的复杂,其复杂性会使得代码更容易出现bug.难于阅读和维护. 由于,本人有一点点代码洁癖,所以依照Google的C++编程规范<G ...

  9. Google Java编程风格指南(中文+原始)

    目录 前言 源文件基础 源文件结构 格式 命名约定 编程实践 Javadoc 后记 前言 这份文档是Google Java编程风格规范的完整定义.当且仅当一个Java源文件符合此文档中的规则, 我们才 ...

随机推荐

  1. Android Studio使用总结

    记录Android-Studio遇到的各种坑 http://blog.csdn.net/u012874222/article/details/50616698 Android Studio 权威教程  ...

  2. yum:在Red Hat和Fedora中使用

    1.列出已安装包: yum list installed--------->输出的结果可能在屏幕上一闪而过.所以最好把已安装包的列表重定义到一个文件中.然后是使用more/less查看 yum ...

  3. XCodeGhost 笔记

    因为服务已经关掉了,所以要改路由Openwrt vi /etc/config/dhcp vi /etc/dnsmasq/dnsmasq.conf /etc/init.d/dnsmasq restart ...

  4. java.io.file

    package cn.edu.tongji.cims.wade.system;     import java.io.*;     public class FileOperate {     pub ...

  5. 45个android实例源码

    分享45个android实例源码,很好很强大http://www.apkbus.com/android-20978-1-1.html andriod闹钟源代码http://www.apkbus.com ...

  6. symbol(s) not found for architecture x86_64 之 linker command failed with exit code 1 (use -v to see invocation)解决方案排查

    这样的错误 ,我的解决方案是, 第一种:   查看他说在 ****.o 中,你要查看这样的关键点,然后去查看,你 项目中有没有引进这样的文件,在项目中查找,看项目中有没有,如果没有那就是没添加进来,你 ...

  7. Smarty模本引擎

    封装一个自定义Smarty引擎 Smart模板注释 基本语法:{* 注释内容 *} Smarty模板中的变量 简单变量 四种标量类型:整型.浮点型.布尔型和字符串型! 数组变量 可以给模板分配一个数组 ...

  8. leetcode-【中等题】Divide Two Integers

    题目 Divide two integers without using multiplication, division and mod operator. If it is overflow, r ...

  9. c# mybatis net +mysql

    1找到  mybatis.net最好有个例子 http://www.codeproject.com/Articles/894127/WebControls/#_comments  在这里... 这是一 ...

  10. NHibernate系列文章二十八:NHibernate Mapping之Auto Mapping(附程序下载)

    摘要 上一篇文章介绍了Fluent NHibernate基础知识.但是,Fluent NHibernate提供了一种更方便的Mapping方法称为Auto Mapping.只需在代码中定义一些Conv ...