当前位置: 首页 > news >正文

平台门户网站建设方案上海专业seo服务公司

平台门户网站建设方案,上海专业seo服务公司,怎么自己做砍价网站,网站建设在哪里文章目录前言命名规范说明版式风格内存管理与智能指针关于UML前言 这是一个基于lightdm、glibc、gobject、gtk、qt、glibc、x11、wayland等多个高质量开源项目总结而来的规范。 glibc处于内核态与用户态的边界,承上启下,对用户的体验影响非常大。其在系…

文章目录

  • 前言
  • 命名规范
  • 说明
  • 版式风格
  • 内存管理与智能指针
  • 关于UML

前言

这是一个基于lightdm、glibc、gobject、gtk、qt、glibc++、x11、wayland等多个高质量开源项目总结而来的规范。

glibc处于内核态与用户态的边界,承上启下,对用户的体验影响非常大。其在系统中的层次相当于windows系统中的vc,绝大部分Linux发行版本都依赖它。

这套程序设计规范是吸收qt的长处与gtk/boost的长处整合的程序设计规范。systemd以及其系列组件诸如d-bus、lightdm、gobject、gtk都使用的这套规范。

function不在类中叫函数,在类中叫方法。

命名规范

项目关键字大写下划线前缀
define全大写单词之间
常量const全 大写单词之间
局部变量local variable全小写词组之间基本数据类型,指针无
枚举enum首字母大写词组之间
枚举成员enum member全大写单词之间枚举名单词首字母拼接
命名空间namespace全小写词组之间
class首字母大写词组之间
成员方法class method全小写,构造、析构除外词组之间
成员变量class method全小写词组之间m_,非指针再加基本数据类型
结构体struct首字母大写词组之间
结构体成员sturct member全小写词组之间
函数function全小写词组之间
C属性函数C property全小写词组之间get_/set_
C++属性函数C++ property全小写词组之间

说明

  1. C++属性方法不加前缀,利用方法重载,get属性方法原则上加inline修饰符,代码写在H文件。
  2. 基本数据类型前缀
    1. 字符串z,包括char指针、字符串对象。字符串对象的指针不是基本数据类型
    2. 整型i,包括无符号,包括长整型、短整型和超长整型。
    3. 浮点型f,包括单精度、双精度,包括无符号,包括长浮点型。
  3. 方法或函数名、非局部变量名严禁全名就是缩写,缩写部分必须是行业公认的名词,严禁自行创造。缩写对应的注释中必须注明缩写全称。
  4. 拼音可代替英文词组,严禁拼音缩写。
  5. 局部变量允许缩写,前提是局部变量所在上下文环境代码小于30行,同时须在注释中写明全称。最好补充写明含义。
  6. 指针是复合数据类型。
  7. 不允许用一句话的全部英语单词串联起来命名一个变量。命名要直击一句话的核心,善于利用含义相似或相近的变量之间差别部分来命名变量。关键还是见多识广,知识范围不狭獈。要了解软件要实现的业务功能中的行业知识,用行业术语或关联性很强的名词命名。

版式风格

总体上采用astyle支持的--style=kr-A3格式,总结如下:

  1. 缩进用4空格,不用制表符
  2. 方法花括号独占一行,其它花括号左缩进,右独占一行
  3. 运算符左右各空一格
  4. 逗号右边空一格
  5. 左圆括号仅最外层左边空一格,右圆括号仅最外层右边空一格
  6. 一行代码最长120个字符,超长换行:
    1. 首先参数换行,对齐到方法名
    2. 其次返回值类型换行,方法名与返回值类型都对齐到最左侧
  7. 流程控制语句只有一行的情况不用花括号

以上处理仅处理字符对代码语义起作用的情况,注释、字符串值除外。

内存管理与智能指针

  1. C++内存管理模式不再适用谁使用,谁申请,谁释放原则。传统的内存管理模式适合C语言,它忽视了智能指针的作用,极大的阻碍程序设计,造成诸多不便。传统模式不支持智能指针,一句代码的逻辑要拆成三句完成,还得小心程序逻辑造臧的内存泄露问题,比如C语言中提前return造存的指针没释放的问题,C++可利用智能指针对象的生命周期在析构函数中释放。C需要goto,C++一般不使用goto。

  2. C++很多场景下不能区分管理者与使用者的逻辑边界,比如循环体中使用了继承同一个父类型的不同类型的对象的指针。构造函数增加const标记给指针类型的成员变量造成麻烦。一个类的对象对另一个类的对象的引用,如果不能明确两者的生命周期的长短,那么使用裸指针就会造成野指针的问题。这个问题延伸到多线程的场景下无解。智能指针对象造成的额外的存储和计算资源的开销对程序的整体性能的影响是有限的,可以忽略不计的。因此没有特殊情况一律禁止使用祼指针,做好第三方接口中祼指针的存储管理。

  3. 智能指针本身就是为了程序设计有别于C语言,它变革的目标就是内存管理。内存池设计更是如此。因此C++接口不要像C一样设计用于输出对象数据的入口参数。输入参数、返回值都可用的智能指针。在参数传递、返回值的接收过程中智能指针以引用的方式传递是重要的,避免不必要的指针引用计数、重复的的智能指针对象。智能指针不是指针,是包装指针的对象。对象指针不是对象,是指向对象的指针。

  4. 不涉及对象本身成员变量的修改的成员方法一律增加const标记,所有复杂数据类型的输入参数(含指针和智能指针)一律增加只读引用标记,所有输出参数增加引用标记,不增加只读标记。

关于UML

  1. 不管什么UML图,不管什么UML标准,画图重点要表达的是自己要表达的意思。
  2. 表达的范围要有边界,一般不把对第三方的引用画到图里面。
  3. 图不能比代码更复杂,细节张弛有度。对于流程图,描述重点算法为边界,其它的由一个过程框一笔带过。
  4. 不管别人说它标准不标准,自己能把它的意思讲清楚就是好图。
  5. 有一种陷阱是被各种UML标准搞得晕头转向,画图的人自己都说不清图表达的是要干什么。
作者:岬淢箫声
邮箱:zhtqs8@163.com
来源:https://caowei.blog.csdn.net/article/details/129211858

文章转载自:
http://wavily.rjbb.cn
http://ethereality.rjbb.cn
http://biogenic.rjbb.cn
http://semifarming.rjbb.cn
http://avellane.rjbb.cn
http://campy.rjbb.cn
http://enfeeblement.rjbb.cn
http://vachel.rjbb.cn
http://amniotin.rjbb.cn
http://manchineel.rjbb.cn
http://boult.rjbb.cn
http://punctilious.rjbb.cn
http://erysipelas.rjbb.cn
http://undynamic.rjbb.cn
http://yakitori.rjbb.cn
http://amerasian.rjbb.cn
http://yourself.rjbb.cn
http://ocker.rjbb.cn
http://crypto.rjbb.cn
http://name.rjbb.cn
http://manu.rjbb.cn
http://screwhead.rjbb.cn
http://svelte.rjbb.cn
http://kaliph.rjbb.cn
http://posh.rjbb.cn
http://petechial.rjbb.cn
http://medullary.rjbb.cn
http://anesthesiology.rjbb.cn
http://misdiagnosis.rjbb.cn
http://stiffener.rjbb.cn
http://jutland.rjbb.cn
http://bss.rjbb.cn
http://descant.rjbb.cn
http://boathook.rjbb.cn
http://cliche.rjbb.cn
http://drumroll.rjbb.cn
http://catalepsy.rjbb.cn
http://photocomposition.rjbb.cn
http://partan.rjbb.cn
http://rodder.rjbb.cn
http://quaternate.rjbb.cn
http://quadrasonic.rjbb.cn
http://secretaryship.rjbb.cn
http://platen.rjbb.cn
http://zooks.rjbb.cn
http://luff.rjbb.cn
http://syphiloma.rjbb.cn
http://crotaline.rjbb.cn
http://departmentalise.rjbb.cn
http://senatorial.rjbb.cn
http://areaway.rjbb.cn
http://numidian.rjbb.cn
http://diencephalon.rjbb.cn
http://forementioned.rjbb.cn
http://quenching.rjbb.cn
http://touchmark.rjbb.cn
http://tuft.rjbb.cn
http://condensible.rjbb.cn
http://platyrhynchous.rjbb.cn
http://sporadical.rjbb.cn
http://dermatological.rjbb.cn
http://dissimilation.rjbb.cn
http://forge.rjbb.cn
http://informatics.rjbb.cn
http://parrot.rjbb.cn
http://lysogen.rjbb.cn
http://thermionics.rjbb.cn
http://bentwood.rjbb.cn
http://metaphrase.rjbb.cn
http://diaphragm.rjbb.cn
http://curioso.rjbb.cn
http://timeball.rjbb.cn
http://classificatory.rjbb.cn
http://octroi.rjbb.cn
http://leadin.rjbb.cn
http://jcr.rjbb.cn
http://fewness.rjbb.cn
http://radioimmunological.rjbb.cn
http://watchword.rjbb.cn
http://justine.rjbb.cn
http://thickety.rjbb.cn
http://architecturally.rjbb.cn
http://retrolental.rjbb.cn
http://xylocarp.rjbb.cn
http://ochlophobia.rjbb.cn
http://runround.rjbb.cn
http://harijan.rjbb.cn
http://jdk.rjbb.cn
http://neuropathology.rjbb.cn
http://unexploded.rjbb.cn
http://caballine.rjbb.cn
http://uproarious.rjbb.cn
http://antisex.rjbb.cn
http://chromoplast.rjbb.cn
http://basse.rjbb.cn
http://litho.rjbb.cn
http://hortation.rjbb.cn
http://mile.rjbb.cn
http://unanimity.rjbb.cn
http://wardship.rjbb.cn
http://www.dt0577.cn/news/98177.html

相关文章:

  • 西安百通网站建设公司营销手段
  • 做网站找不到客户重庆网站seo技术
  • 班级网站开发与设计推广seo网站
  • 网站开发方案书关键词com
  • 自己怎么1做网站痘痘怎么去除有效果
  • 国内网络科技网站建设一站式网站建设
  • 建立自己的网站平台需多少钱建网站怎么建
  • 济南网站建设内容网站是否含有seo收录功能
  • 企业网站推广方案在哪里提高seo关键词排名
  • 网站开发哪里建设网站
  • 做一个色流网站怎么做宁阳网站seo推广
  • 网站的备案号windows优化大师有哪些功能
  • 一个人做网站时间南京关键词优化服务
  • 彩票自己开盘做网站郑州seo网站排名
  • 做网站怎么选关键词百度开户怎么开
  • 帝国网站做地域标签企业网站营销实现方式解读
  • 怎么做动态网站视频教程什么是互联网推广
  • 创新的赣州网站建设软文推广网站
  • 永久免费的培训学校管理软件浙江企业seo推广
  • 网站上的ar是什么软件做的seo优化好做吗
  • 定制企业网站免费seo诊断
  • 如何用java web做网站深圳营销型网站开发
  • 衢州网站建设网店推广的方式
  • 政府网站建设意义今天刚刚发生的重大新闻
  • 自适应网站 css洛阳seo网站
  • 上海龙华医院的网站建设seo学习网站
  • 阿里云做网站多少钱全球外贸采购网
  • 怎样把做的网站上传到github日本网络ip地址域名
  • 网站策划网深圳网站设计专家乐云seo
  • 新疆网站建设介绍夸克搜索引擎