- 博客(18)
- 资源 (2)
- 收藏
- 关注
原创 C++ Templates基础篇
概要泛型程序设计的思想由来已久。Ada是最早支持泛型编程的程序语言。然后C++也加入了对泛型编程的支持。现在泛型编程思想已经被公认为是一种独立于OO的优秀的编程哲学。在C++中,泛型编程思想体现为一个基本概念,即模板。本文从理论和应用地角度简单地阐述C++模板的。关键词 模板,C++ ,Templates,机制,应用目录1. 引言... 21.1.
2007-07-31 11:38:00 1864
原创 感自主知识产权
以前总是在听别人说自主知识产权对于一个企业的可持续发展至关重要。但是很长一段时间我都无法理解,一直认为这只不过是企业领导或政府官员的说词而已。但是在看了中央8台播放的《岁月风云》之后,再结合对我们公司现今的发展的了解,突然觉得自主知识产权不仅对一个企业,对于一个国家特别是一个发展中的国家来说都可以说有着举足轻重的地位。就拿我们公司来说,在80年代自主研发了一套用于纸质出版和印刷的
2007-07-31 11:30:00 1522
原创 C++和C#之泛型编程对比
摘要泛型编程的思想由来已久,由STL之父-Alex Stepanov提出。Ada、C++、以及最近的Java和C#都相继加入了对泛型编程的支持。其中已纳入C++标准的STL ,就是泛型编程的一个成功的应用。由于每种语言的特性不同,因此在泛型的实现上大有差别,那么这些编程语言在泛型的实现机制和编程应用方面到底有什么区别呢?本文试图从这两个方面来探讨C++和C#在泛型编程支持方面的区别。关键词
2007-07-30 15:33:00 6644
原创 这次我是真的受了伤
对于我来说,最大的伤害莫过于被人误解。因为很多年前,我被人误解着过完了黑色的高中三年,那是一段让人难以忘却的充满忧郁的日子。在大学四年里,我努力着忘掉过去,忘掉忧伤,治好了自己的忧郁症。今年是我参加工作的第二个年头,生活很平静,因为我对所深爱的编程事业的执著和热爱,因为我带着感恩的心,因为我带着一颗平淡的心…..。正如很多人所说的那样,人的际遇并不以人的意志为转移。当你带着一片滚烫
2007-07-30 15:26:00 1359
原创 C++设计开发规范(0):序言
你是否已经经历过或正经历某个使用c++构建的系统的熵变的过程。或许你已经读过很多关于提供设计和编码质量的书籍或文章;或许曾经很长一段时间你在反思自己在某个项目中的过失;或许你看到了IT世界其实是由一大堆成文或不成文的规范组成..,等等。的确,我们需要改进我们的工作,改善我们对于自我的认识。在后续的文章中,我们试图提供一系列的规范来约束我们的设计和编码,帮助我们提升自我的价值。 当然
2007-07-24 18:37:00 851
原创 C++设计开发规范(附录A):注释详解
附录A 注释详解n 注释interface/class/enum/struct etc./*! /interface IExporter For the usage of exporting the file to PDF/PS/XML etc. */ interface IExporter {
2007-07-24 18:26:00 1172
原创 C++设计开发规范(10):编码规范
10. 编码规范“编码风格应该尽可能地合理、简洁”10.1. 书写风格√ 要求类的书写风格如下: //单继承,写成一行 classs ClassName : public BaseClassName //多重继承,写成多行classs ClassName : public BaseClassName1,public BaseClass
2007-07-24 18:25:00 928
原创 C++设计开发规范((9):并行性设计开发规范
9. 并行性设计开发规范C++设计的初衷就是用于开发对性能要求比较高的系统应用程序。这些年硬件的发展速度超乎想象,硬件速度的垂直发展主要体现在CPU 工艺的改进,缩短CPU的指令执行周期,但是事务本质上的限度决定了硬件速度的提升必然存在一个瓶颈。为了突破这个瓶颈,硬件速度趋向水平发展,主要体现在CPU走向多核化。我们现在就处于这样一个多核时代。与此同时,CPU的多核化推进并行程序的
2007-07-24 18:23:00 900
原创 C++设计开发规范((8):安全设计开发规范
8. 安全性设计开发规范C++程序的执行安全性完全依赖于操作系统以及程序员的技艺,我们只能适应操作系统的安全性,但是我们可以提高程序员的技艺从而来提供程序的安全性。注:这个部分需要完善。
2007-07-24 18:21:00 912
原创 C++设计开发规范((7): 错误处理规范
7. 错误处理规范一致的错误处理方式一直是语言/平台设计专家所关注的问题。好的错误处理方式可以提供程序的鲁棒性,还可以提高程序的可调试和可测试性。注:这个部分需要完善。
2007-07-24 18:20:00 791
原创 C++设计开发规范(6):移植性设计规范
6. 移植性设计规范本规范中只讨论C++应用程序在不同的操作系统(如Linux和Windos操作系统)平台之间的移植性。l 推荐不要加入移植性设计,如果需求/软件架构没有明确要支持可移植性。l 推荐尽量使用C标准库函数。√ 要求分离出不可移植的代码。 例如,n 汇编代码#ifdef SOMECODE __asm{…}n 文件分隔符WIND
2007-07-24 18:19:00 1152
原创 C++设计开发规范(5):扩展性设计规范
5. 扩展性设计规范扩展的方式有很多种,常见的有基类/抽象类继承、接口实现、回调函数、虚函数重载、组合等。l 推荐(相对)遵守敏捷开发(面向对象设计)基本原则: a. SRP(单一职责原则)就一个类而言,应该有仅只有一个引起它变化的原因。b. OCP(开放封闭原则)软件实体(类、模块、函数等)应该是可扩展的,但是不可修改
2007-07-24 18:18:00 1279
原创 C++设计开发规范(4):成员设计规范
4. 成员设计规范4.1. 一般规范√ 要求重载成员之间的相同参数的顺序和名称要一致。 例如, class EventLog { public: EventLog();EventLog(const string& logName); EventLog(const string&
2007-07-24 18:16:00 938
原创 C++设计开发规范(3):类型设计规范
3. 类型设计规范“一切以简单为美“ C++中的类型繁多,其中包括(具体)类、基类、接口、结构、枚举、数组等。在此规范中,我们不详细讨论抽象类和接口,因为这两个类型属于一个特殊的逻辑分组,和扩展性有关,我们在扩展性设计规范中进行讨论。任何的编程语言都可以看成是一个类型系统。在这个类型系统中,每个类型都扮演这各自的职责,各有其意义:n (具体)类:在遵循某个特定的开发
2007-07-24 18:14:00 1361
原创 C++设计开发规范(2):命名规范
2. 命名规范“站在使用者的角度进行命名” 一致的命名可以让程序更清晰,让代码具有更强的说明性,从而提高程序的可读性和可维护性。本规范中描述了最基本的命名规范,包括如何使用大小写,并为软件设计开发中涉及到的基本概念的命名提供参考规范,如名字空间、类型、成员、参数命名等。2.1. 大小写约定常见的大小写约定有两种:PascalCasing和camelCasing
2007-07-24 18:12:00 1583
原创 C++设计开发规范(1):引言
1. 引言1.1. 核心价值“集大众之智慧,方为大智慧。”1.2. 参考1.2.1. 深度探索C++对象模型/(美)Stanley Lippman著;候捷译. 武汉:华中科技大学出版社,2001.51.2.2. C++编程规范/ Sutter H,Alexandrescu A.著;刘基城译. 北京:人民邮电出版社,2006.11
2007-07-24 18:10:00 1324 1
原创 C++设计开发规范(0):目录
目录1. 引言... 51.1. 核心价值... 51.2. 参考... 51.3. 约定... 51.4. 基本术语... 52. 命名规范... 62.1. 大小写约定... 62.2. 通用命名约定... 72.3. 名字空间的命名... 7
2007-07-24 18:08:00 1079
原创 可移植性设计
1. 概述我们在讨论系统移植的时候,通常会提到一个概念:平台。平台可以是硬件平台,也可以是软件平台,软件平台通常指的就是操作系统。而按照应用领域的不同,我们又可以将软件平台细分为J2EE、.NET平台,如此等等。衡量系统的可移植性要从两个角度来看待,一个是垂直的,一个是水平的。所谓的垂直移植性,就是如何将一个应用程序从某个平台的一个版本移植到另外一个版本。如将一个应用程序从win
2007-07-03 19:27:00 11462 2
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人