当前位置:首页 » 编程软件 » 编程规范华为

编程规范华为

发布时间: 2022-09-03 00:37:11

❶ 为建立良好的编程风格应遵循什么原则

一、程序内部文档应具备的规则
1、标识符应含有含义鲜明的文字。
含义鲜明的文字,能正确地提示程序对象所代表的实体。这对于帮助阅读者理解程序是非常重要的。如果用缩写的形式,那么缩写规则应该一致,并且应该给每个名字加注解。在VB中,主要有如下的约定:
(一)对象命名约定
应该使用一致的前缀来命名对象,使人们容易识别对象的类型。例如我们常用控件CommandButton(命令按钮)可用cmd做为其前缀。Form以frm,Image以 img ,Label以 lbl,List Box 以lst,PictureBox以 pic,Timer以 tmr,等等,在我们编程的过程中,我们看到下面的名称cmdExit我们就知道这一定是一个命令按钮了。如果是第三方提供的控件,我们的说明最好要清晰地标出制造商的名称,以区别于我们的常用控件。
(二)常量和变量命名约定
除了控件以外,常量和变量也是我们编程过程中经常遇到的,我们和他们打交道也是通过名字。
(1)给变量加范围前缀
变量按其作用范围可分做三类,过程级,模块级和全局,所以我们在编程的过程中应将三者加以区别。我们在使用变量时,为了更好地体现代码重用和可维护原则,其定义范围应尽量缩小,这样将使我们的应用程序更加容易理解和易于控制。在VB应用程序中,只有当没有其他方便途径在窗体间共享数据时才使用全局变量。当使用全局变量时,在一个单一模块中声明它们,并按功能分组,给模块取一个有意义的名字。较好的编码习惯是尽可能地定模块化的代码。除了全局变量,过程和函数应该仅对传递给它们的的对象操作。在过程中使用的全局变量应该在过程起始处的声明部分标识出来。变量的作用范围前缀如下:全局 g(global) ,模块级 m(model),本地过程不需要使用。例如:gintFlag,表示全局整型变量,mstrPassword,可表示模块级字符型变量。
(2)声明所有变量原则。声明所有变量将会节省编程时间,键入错误将大大减少,我们可在程序开始写上如下语句:
Option Explicit
该语句要求在程序中声明所有变量。
(3)变量数据类型声明。可通过下面的前缀来做为变量的数据类标志。
Boolean bln
Byte byt
Double dbl
Integer int
String str
(4)常量。常量的命名,可遵循与变量命名大体相同的原则。
(5)对变量和过程名作出描述。变量或过程名的主体应该使用大小写混合的形式,并且应该足够长以描述它的作用。而且,函数名应以一个动词开头。如JudgeDialog。

2、适当的注解
注解是程序员和程序读者通信的重要手段,正确的注解非常有助于对程序的理解。VB中代码注解约定如下:所有的过程和函数都应该以描述这段过程的功能的一段简明的注释开始,说明该程序是干什么的,至于是如何做的,也就是编程的细节,最好不要包括。因为可能日后我们要修改程序,这样做会带来不必要的注释维护工作,如果不修改,将提供误导信息,可能成为错误的注释。因为代码本身和后面程序中的注释将起到相应的说明作用。
过程中的注释块应该包括如下标题:
小节描述内容
目的该过程完成什么
假设列出每个外部变量、控件、打开文件或其他不明显元素
效果列出每个被影响的外部变量、控件或文件及其作用(只有当它不明显时)
输入每一个可能不明显的参数。
返回函数返回值的说明
格式化代码
(1)标准的,基于制表位的嵌套应该包括一个嵌注释,来描述该变量的使用。
(2)变量、控件及过程的命名应该足够清楚,使得只有复杂的执行细节才需要嵌入注释。
(3).bas 模块包含包含工程的VB一般常量声明,在其起始处,应包括程序的综述,列举主要数据对象,过程、算法、对话、数据库及系统需求。

3、程序的视觉组织
程序的视觉组织可用阶梯式,结构化的程序风格对于我们实际编程也很有意义,可极大地改善代码的可读性。主要有代码注释和一致性缩进。

---------------------------------------------------------------------------------------------------------
二、数据说明
数据结构的组织和复杂程序是在设计期间就已经确定了的,然而数据说明的风格却是在写程序时确定的。为了使数据更容易理解和维护,有一些比较简单的原则应该遵循。
1、数据说明的次序应该标准化。有次序就容易查阅。因此能够加速测试、调试和维护的过程。当多个变量名在一个语句中说明时,应按字母顺序排列这些变量。
2、数据结构复杂时,应加以说明其特点和实现方法。

---------------------------------------------------------------------------------------------------------
三、语句构造
语句构造原则:每个语句应该简单而直接,不能为了提高效率而使程序变得过分复杂。下述规则的使用有助于语句简单明了。
1、不要为了节省空间把多行语句写在一行;
2、尽量避免复杂的条件测试;
3、尽量减少对“非”条件的测试;
4、避免大量使用循环嵌套和条件嵌套;
5、利用括号使逻辑表达式或算术表达式的运算次序清晰直观。

---------------------------------------------------------------------------------------------------------
四、输入输出
1、对所有输入数据都进行检验;
2、检查输入项重要组合的合法性;
3、保持输入格式简单;
4、使用数据结束标志,不要要求用户指定输入数据的数目
5、明确提示交互式输入的请求,详细说明可用的选择或边界数值;
6、当语言对格式有严格要求时,应保持输入格式一致
7、设计良好的输出报表;
8、给所有输出加标志;

---------------------------------------------------------------------------------------------------------
五、效率
效率三原则:
1、效率是性能的要求,需求分析时就应确定;
2、效率是靠设计提高的;
3、程序的效率和程序的简单程序是一致的。
(一)运行时间
(1)写程序前先简化算术和逻辑表达式;
(2)他细研究嵌套的循环,以确定是否有语句从内层移到外层;
(3)尽量避免使用多维数组;
(4)尽量避免使用指针和复杂的表;
(5)使用执行时间短的算术运算;
(6)不要混合使用不同的数据类型;
(7)尽量使用整数运算和布尔表达式
(二)存储器效率
(三)输入输出效率
如果用户是为了给计算机提供输入信息或为了理解计算机输入的信息,所需花费的脑力劳动是经济的,那么,人和计算机之间的通信效率就高。简单清晰是关键。

---------------------------------------------------------------------------------------------------------
六、小结
其实风格是非常重要的,程序的外表是我们交流中不可缺少的东西。象我们常说的红颜命薄而归疚于外表太靓,也常听一些才子佳人的悲剧故事,提醒我们外表美而引出的一见钟情的浪漫不可取。可让人细想,才子佳人产生悲剧虽多,可也让人找到过心动和美好的感觉,做为一个人,活了一辈子,连那种感觉都未体验到,岂不比悲剧更加令人觉得可悲!编程亦然。

❷ 华为自研编程语言“仓颉”火上热搜,这是否降低了编程门槛

c语言 编程规范

已发送

❹ 静态测试的编码规范

一个项目或者一个企业,如果要下决心实施软件质量,实施软件工程,第一步要做的就是软件编码规范。编码规范是程序编写过程中必须遵循的规则,一般会详细规定代码的语法规则、语法格式等。企业实施怎样的编码规范,取决于很多个因素:l编程采用的语言,例如C、C++、JAVA、ADA等。项目的规范化程度。目前现成的C/C++编码规范有很多,例如前几年网络上比较流行的《华为公司编程规范》、《摩托罗拉C+编程规范》等。但项目不能完全照搬,应该根据自己所处的阶段,定制属于自己的规范,否则的话,会让程序员无所适从,严重打击程序员的积极性。不同的行业对软件的可靠性有不同的要求,例如航空/航天的嵌入式软件对代码的要求很高,而传统的windows平台应用软件则相对要宽松。在嵌入式软件中,尤其是汽车行业,国际上目前流行的C语言编程规则为MISRA-C:2004,其中包括包括141条规则,其中121条是强制(Required)遵守的,20条是建议(Advisory)遵守的。
有了统一的规范后,测试工程师或者程序员自身,就可以实施编码规范检查了。要真正把编码规范贯彻下去,单单靠测试员程序员的热情,很难坚持下去,所以笔者建议借助于一些专业的工具来实施。在C/C++语言的编程规则检查方面,比较专业的工具有Coverity,C++Test、LINT工具、KlocWork(Insight)/QAC/QAC++等,这些工具通常可以和比较流行的开发工具集成在一起,程序员在编码过程中,在编译代码的同时即同时完成了编程规则的检查。

❺ 急求华为语言安全编程规范

华为技术有限公司内部技术规范
DKBA 2826-2011.5
C语言编程规范

链接在此,自己下载吧:http://wenku..com/link?url=vaCWEdt8jpMwe6aiB8I3_ZppqHZ0R127xX_-sSmEikJZVUb2XpAteib6KpKNLPAzW-KW

❻ 编程是不是要尽量多用函数,避免一大堆代码都写在一个过程里

也不是尽量多用函数,举个例子你走极端把每个块都定义成函数,只能是制造混乱,你要维护一个代码里连续跟踪进十几个函数,我经历过,那真是一个惨啊。
一般来讲做到按复用性、功能划分程序即可。具体要到程度可能要做一两个实际项目,看看软件工程的书也会了解得更快一点。

❼ 编程规范对软件开发组织和个人有什么意义

1、好的编码规范可以尽可能的减少一个软件的维护成本 , 并且几乎没有任何一个软件,在其整个生命周期中,均由最初的开发人员来维护;
2、好的编码规范可以改善软件的可读性,可以让开发人员尽快而彻底地理解新的代码;
3、好的编码规范可以最大限度的提高团队开发的合作效率;
4、长期的规范性编码还可以让开发人员养成好的编码习惯,甚至锻炼出更加严谨的思维;

等等

❽ 华为c语言编程规范是怎样的

代码总体原则
清晰第一。清晰性是易于维护、易于重构的程序必须具备的特征。
简洁为美。简介就是易于理解并且易于实现。
选择合适的风格,与源代码风格保持一致。
头文件
头文件的设计体现了大部分的系统设计,不合理的头文件布局是编译时间过长的根因,实际上是不合理的设计。
头文件中适合放置接口的声明,不适合放置实现。
头文件应当职责单一。
头文件应向稳定的方向包含。
每一个.c文件应有一个同名的.h文件,用于声明需要对外公开的接口。
禁止头文件循环依赖。
禁止包含用不到的头文件。
头文件应当自包含。
编写内部#include保护符(#define保护)。
禁止在头文件中定义变量。
只能通过包含头文件的方式使用其他C提供的接口,禁止在C中通过extern的方式使用外部函数接口和变量。
禁止在extern "C"中包含头文件。
函数
函数设计的精髓:编写整洁函数,同事把代码有效组织起来。
一个函数仅完成一个功能。
重复代码应该尽可能提炼成函数。
避免函数过长,新增函数不超过50行。
避免函数的代码块嵌套过深,新增函数的代码块嵌套不超过4层。
可重入函数应避免使用共享变量;若需要使用,则应该通过互斥手段对其加以保护。
对参数的合法性检查,由调用者负责还是接口函数负责,应在项目组模块内统一规定。缺省由调用者负责。
对函数的错误返回码要全面处理。
设计高扇入,合理扇出(小于7)的函数。扇出是指调用其它函数的数目。扇入是指有多少上级函数调用它。
废弃代码要及时清除。
函数参数不变使用const限定。
函数应避免使用全局变量、静态局部变量和I/O操作,不可避免的地方应集中使用。
检查函数所有非参数输入的有效性,如数据文件、公共变量等。
函数的参数个数不超过5个。
在源文件范围内声明和定义的所有函数,除非外部可见,否则应该加static关键字。
标识符
标识符的命名要清晰、明了,有明确含义,同时使用完整的单词或大家基本可以理解的缩写,避免使人产生误解。
产品、项目组内应保持同意的命名分格。
尽量避免名字中出现数字编号,除非逻辑上确实需要。
重构、修改部分代码时,应该保持和原有代码风格一致。
文件命令统一采用小写字符。因为不同系统对文件名大小写处理会有不同(windows不区分大小写,但是linux系统则区分)。
全局变量应增加“g_”前缀。
静态变量应增加“s_”前缀。
禁止使用单字节命名变量,但是允许定义i,j,k作为局部循环变量。
不建议使用匈牙利命名法。
对于数值或者字符串常量的定义,建议采用全大写字母,单词之间加下划线的方式命名。
变量
结构功能单一,不要设计面面俱到的数据结构。
不用或者少用全局变量
防止局部变量与全局变量同名
通讯过程中使用的机构,必须注意字节序。
严禁使用未经初始化的变量作为右值。
使用面向接口编程思想,通过API访问数据。
尽量减少没有必要的数据类型默认转换与强制转换。
宏和常量
用宏定义表达式时,要使用完备的括号。
将宏定义的多条表达式放在大括号中。
使用宏时,不允许参数发生变化。
不允许直接使用魔鬼数字。
除非必要,应尽可能使用函数代替宏。
常量建议用const定义代替宏。
质量
时刻注意易混淆的操作符
必须了解编译系统的内存分配方式,特别是编译系统对不同类型的变量的内存分配规则,如局部变量在何处分配、静态变量在何处分配等。
不仅关注接口,同样要关注实现。
禁止内存操作越界。
禁止内存泄漏。
禁止引用已经释放的内存空间。
编程时,要防止差1错误。
switch语句必须有default分支。
函数中分配的内存,在函数退出之前要释放。
不要滥用goto语句。
时刻注意表达式是否会上溢、下溢。
程序效率
在保证软件系统的正确性、简洁、可维护性、可靠性及可测试性的前提下,提高代码的效率。
通过对数据结构、程序算法的优化来提高效率。
将不变条件的计算移到循环体外。
对于多维大数组,避免来回跳跃式访问数组成员。
创建资源库,以减少分配对象的开销。
将多次被调用的“小函数”改为inline函数或者宏实现。
注释
优秀的代码可以自我解释,不通过注释即可轻易读懂。
注释的内容要清楚、明了,含义准确,防止注释二义性。
修改代码时,维护代码周边的所有注释,以保证注释与代码的一致性。不再有用的注释要删除。
文件头部应进行注释,注释需要列出:版权说明、版本号、生成日期、作者姓名、工号、内容、功能说明、与其他文件的关系、修改日志等,头文件的注释中还应有函数功能的说明。
函数声明处注释描述函数功能、性能及用法,包括输入和输出参数、函数返回值、可重入的要求等;定义处详细描述函数功能和实现要点,如实现的简要步骤、实现的理由、设计约束等。
全局变量要有详细的注释,包括对其功能、取值范围以及存取时注意事项等的说明。
尽量采用工具可以识别的格式注释。
排版与格式
程序块采用缩进风格编写,每级缩进为4个空格。
相对独立的程序块之间、变量说明之后必须加空行。
一行只写一条语句。
对等操作两边加空格,注释符与内容之间加空格。
编译
使用编译器的最高告警级别,理解所有的告警,通过修改代码而不是降低告警级别来消除所有告警。
在产品软件中,要统一编译开关、静态检查选项以及相应告警清除策略。
可测性
模块划分清晰,接口明确,耦合性小,有明确输入和输出,否则单元测试实施困难。
在统一项目组或产品组内,调测打印的日志要有统一的规定。
使用断言记录内部假设。
不能用断言来检查运行时错误。

❾ 华为网络工程师认证都需要学什么

华为认证目前覆盖Datacom、安全、无线局域网、SDN、LTE 、传送网 、接入、统一通信 、数据中心设施、存储、云计算 、大数据、数据中心、云服务、IoT、AI等20个技术领域。每个方向分为HCIA(初级)、HCIP(中级)、HCIE(高级)三个等级的认证,不同方向不同等级的认证学习的技能也不一样。

华为认证架构图

就拿学习最多的Datacom方向为例吧,Datacom-HCIA认证的学习内容有:

  1. 数据通信与网络基础
    1)数据通信网络基础
    数据通信基础概念
    信息传递的过程
    网络设备及基本功能
    网络类型及拓扑类型
    网络工程
    网络工程师
    2)网络参考模型
    数据及数据的传递
    常见的标准协议
    分层模型理念
    应用层及相应协议
    传输层及相应协议
    网络层及相应协议
    数据链路层及相应协议
    物理层及相应协议
    数据传递封装解封装过程
    3)华为VRP系统基础
    网络常用设备
    VRP的基础知识
    CLI界面
    命令行的基本命令及功能键
    2. 构建互联互通的IP网络
    1)网络层协议与IP编址
    网络层的协议
    IPv4地址的概念、分类及特殊IP地址
    IP网络以及IP子网计算
    IP网络地址规划方式
    2)IP路由基础
    路由器的基本工作原理
    路由表概念
    路由转发相关特性
    静态路由配置
    3)OSPF基础
    OSPF协议的基本特点
    OSPF适用的组网场景
    OSPF协议的工作原理
    OSPF协议的基本配置
    3. 构建以太网交换网络
    1)以太网交换基础
    以太网的基本概念
    MAC地址概念
    二层交换机工作流程与原理
    MAC地址表的构成与形成过程
    2)VLAN原理与配置
    VLAN技术产生背景
    VLAN基本概念及原理
    二层网络中VLAN数据通信过程
    VLAN的基本配置
    3)生成树协议
    生成树协议产生背景
    STP的基本概念与工作原理
    RSTP基本概念以及相对STP改进
    STP的基础配置
    其他二层环路消除技术
    4)以太网链路聚合与交换机堆叠
    链路聚合基本概念
    手工链路聚合工作原理
    LACP模式的链路聚合工作原理及特点
    iStack、CSS技术基本概念
    5)实现VLAN之间的通信
    子接口的工作原理
    三层交换机的工作机制
    子接口配置
    VLANIF配置
    4. 网络安全基础与网络接入
    1)ACL原理与配置
    ACL的基本原理和基本作用
    ACL规则的基本组成结构和匹配顺序
    通配符的使用方法
    ACL的基本应用配置
    2)AAA原理与配置
    AAA基本原理与应用场景
    本地AAA的基本配置
    3)网络地址转换基础
    NAT的技术背景
    NAT的分类和技术原理
    不同场景NAT技术的配置
    5. 网络服务与应用
    1)网络服务与应用
    TFTP、FTP、DHCP、HTTP协议原理
    配置FTP、DHCP
    6. WLAN基础
    1)WLAN概述
    WLAN基本概念与802.11协议族历史
    WLAN所使用的设备
    WLAN的组网方式
    WLAN工作流程
    WLAN的基本配置
    7. 广域网基础
    1)广域网技术基础
    广域网基本概念
    常见广域网技术
    PPP和PPPoE的工作原理
    PPP和PPPoE的基本配置
    MPLS/SR基本概念
    8. 网络管理与运维
    1)网络管理与运维
    网管与运维基本概念
    常见网管与运维手段及工具
    SNMP协议的工作原理
    基于SDN的网管与运维方案
    9. IPv6基础
    1)IPv6基础
    IPv6与IPv4的对比
    IPv6的基本概念
    IPv6报文头部的格式和原理
    IPv6地址格式和地址类型
    IPv6地址配置的方法和基本过程
    IPv6地址静态与动态配置
    IPv6静态路由的配置
    10. SDN与自动化基础
    1)SDN与NFV基础
    SDN基本概念
    华为SDN产品及解决方案
    NFV基本概念
    华为NFV产品及解决方案
    2)网络编程与自动化
    传统网络运维现状分析
    网络自动化的实现方式
    编程语言
    Python编码规范
    通过Python telnetlib实现基础自动化运维
    11. 综合案例演练
    1)园区网典型组网架构及案例实践
    园区网络架构
    园区网络生命周期
    园区网络搭建案例
    园区网络搭建实战

    华为认证需要学习的内容有很多,智汇云校是华为授权培训中心,可以到智汇云校领取华为认证资料,了解华为认证及需要学习的内容。

❿ plc编程华为能行不

能行。
规范编程,以利于后续产线设备的维护与管理。无障碍写文章PLC编程规范标准规范编程,以利于后续产线设备的维护与管理。

热点内容
ark手游怎么免费创建私人服务器 发布:2025-02-12 12:51:51 浏览:400
linux键盘布局 发布:2025-02-12 12:50:57 浏览:682
linuxlc 发布:2025-02-12 12:42:51 浏览:477
安卓协议一般支持哪个系统比较好 发布:2025-02-12 12:42:47 浏览:511
书脊算法 发布:2025-02-12 12:42:41 浏览:817
xp编程器功能介绍 发布:2025-02-12 12:37:00 浏览:973
海康威视监控密码是多少位 发布:2025-02-12 12:20:29 浏览:584
安卓的自带浏览器在哪里 发布:2025-02-12 12:20:29 浏览:722
望海潮上传 发布:2025-02-12 12:16:08 浏览:672
javathread源码 发布:2025-02-12 12:12:37 浏览:907