动态网站制作指南 [  QQ表情  ]
[ 投票调查 ]
[ 企业邮箱 ]
[ 网站空间 ]
网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
ASP源码 | .Net源码 | PHP源码 | JSP源码 | JAVA源码 | CGI源码 | VB源码 | C++源码 | Delphi源码 | PB源码 | VF源码 | 汇编 | 服务器
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > C/C++教程
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
网络编程:ASP教程,ASP.NET教程,PHP教程,JSP教程,C#教程,数据库,XML教程,Ajax,Java,Perl,Shell,VB教程,Delphi,C/C++教程,软件工程,J2EE/J2ME,移动开发
文章搜索服务
邮件订阅
输入你的邮件地址,
你将不会错过任何关于:
[ C/C++教程 ]的信息

本月文章推荐
.罗云彬VxD教程--虚拟8086模式的内.
.C++对象布局及多态实现探索之虚继.
.水滴石穿C语言之正确使用const.
.C程序开发经典实例之3.
.怎样在程序中利用C++支持多国语言.
.动态链结函式库(DLL-Dynamic Li.
.C/C++编程新手错误分析(1).
.如何监视剪贴板.
.十全十美游戏.
.利用.NET语言开发自己的脚本语言.
.VC中解决两个难懂的安全性问题.
.如何在BCB中调试Active Form.
.C++对象计数.
.Winsocket编程之套接字原理.
.C++中控制Windows关机的实用技巧.
.C++ 让你的任务栏图标动起来.
.文本模式下的GUI设计,使用tc2.0.
.Delphi编程中实现动画鼠标.
.在C语言中引入类的概念.
.绝对能够测试你的C语言功力的几个.

在未来时态下开发C++程序

发表日期:2008-3-8 |


在未来时态下开发C++程序(图一)  在未来时态下开发C++程序(图二)
  数据结构学习讲座(C++版)

  好的软件能够适应变化。它提供新的特性,适应到新的平台,满足新的需求,处理新的输入。   新的函数将被加入到函数库中,新的重载将发生,于是要注重那些含糊的函数调用行为的结果;新的类将会加入继续层次,现在的派生类将会是以后的基类,并已为此作好预备;将会编制新的应用软件,函数将在新的运行环境下被调用,它们应该被写得在新平台上运行正确;程序的维护人员通常不是原来编写它们的人,因此应该被设计得易于被别人理解、维护和扩充。   这么做的一种方法是:用C++语言自己来表达设计上的约束条件,而不是用注释或文档。例如,假如一个类被设计得不会被继续,不要只是在其头文件中加个注释,用C++的方法来阻止继续。   假如一个类需要其实例全部创建在堆中,不要只是对用户说了这么一句,用以前介绍过的方法来强迫这一点。   假如拷贝构造和赋值对一个类是没有意义的,通过申明它们为私有来阻止这些操作。   应该判定一个函数的含意,以及它被派生类重定义的话是否有意义。假如是有意义的,申明它为虚,即使没有人立即重定义它。假如不是的话,申明它为非虚,并且不要在以后为了便于某人而更改;确保更改是对整个类的运行环境和类所表示的抽象是有意义的。   处理每个类的赋值和拷贝构造函数,即使“从没人这样做过”。他们现在没有这么做并不意味着他们以后不这么做。假如这些函数是难以实现的,那么申明它们为私有。这样,不会有人误调编译器提供的默认版本而做错事(这在默认赋值和拷贝构造函数上经常发生)。   基于最小惊奇法则:努力提供这样的类,它们的操作和函数有自然的语法和直观的语义。和内建数据类型的行为保持一致:拿不定主意时,仿照int来做。   要承认:只要是能被人做的,就有人这么做(WQ:莫菲法则)。他们会抛异常;会用自己给自己赋值;在没有赋初值前就使用对象;给对象赋了值而没有使用;会赋过大的值、过小的值或空值。一般而言,只要能编译通过,就有人会这么做。所以,要使得自己的类易于被正确使用而难以误用。要承认用户可能犯错误,所以要将你的类设计得可以防止、检测或修正这些错误。   努力于可移植的代码。写可移植的代码并不比不可移植的代码难太多,只有在性能极其重要时采用不可移植的结构才是可取的。即使是为特定的硬件设计的程序也经常被移植,因为这些平台在几年内就会有一个数量级的性能提升。可移植的代码使得你在更换平台是比较轻易,扩大你的用户基础,吹嘘支持开放平台。这也使得你赌错了操作系统时比较轻易补救。 将你的代码设计得当需要变化时,影响是局部的。尽可能地封装;将实现细节申明为私有。只要可能,使用无名的命名空间和文件内的静态对象或函数。避免导致虚基类的设计,因为这种类需要每个派生类都直接初始化它--即使是那些间接派生类。避免需要RTTI的设计,它需要if...then...else型的瀑布结构。每次,类的继续层次变了,每组if...then...else语句都需要更新,假如你忘掉了一个,你不会从编译器得到任何告警。   未来时态的考虑只是简单地增加了一些额外约束:   ·提供完备的类,即使某些部分现在还没有被使用。假如有了新的需求,你不用回过头去改它们。   ·将你的接口设计得便于常见操作并防止常见错误。使得类轻易正确使用而不易用错。例如,阻止拷贝构造和赋值操作,假如它们对这个类没有意义的话。防止部分赋值。   ·假如没有限制你不能通用化你的代码,那么通用化它。例如,假如在写树的遍历算法,考虑将它通用得可以处理任何有向不循环图。   未来时态的考虑增加了你的代码的可重用性、可维护性、健壮性,已及在环境发生改变时易于修改。它必须与进行时态的约束条件进行取舍。太多的程序员们只关注于现在的需要,然而这么做牺牲了其软件的长期生存能力。是与众不同的,是离经叛道的,在未来时态下开发程序。
上一篇:改进的发牌程序 人气:512
下一篇:关于C语言中图形模式的问题 人气:511
浏览全部C/C++的内容 Dreamweaver插件下载 常用网页广告代码全集
  最新网站源码 最新软件下载
2008-9-7 站长中国企业(公司)网站系统 v4.2
2008-9-7 PBDigg v2.0 Build 20080821
2008-9-7 玩玩小游戏FLASH系统 v2.1
2008-9-7 522QQ在线电视直播程序 v1.1
2008-9-7 Pcook cms 文章管理系统 (老Y CM
2008-9-7 仿代码小说小偷系统 v1.0
2008-9-7 百度一搜集成搜索管理系统
2008-9-7 小贤统计器 v1.0
2008-9-7 UCenter Home-中秋搏饼插件 v1.2
2008-9-7 iBlacklist通话黑名单汉化破解补
2008-9-7 EndlessWalls无尽壁纸 v1.0.4破解
2008-9-7 Dynolicious车载测量仪v1.1破解版
2008-9-7 iVoodoo巫毒娃娃1.0.1破解版
2008-9-7 iWallpape精品墙纸1.2破解版
2008-9-7 iChillout自然音效工具1.1破解版
2008-9-7 Todo计划提醒1.2破解版
2008-9-7 allRadio电台集合1.01破解版
2008-9-7 My Money个人理财1.0破解版
  发表评论
姓 名: 验证码:
内 容:
站长工具:网站收录查询 | Google PR查询 | ALEXA排名查询 | CSS在线编辑器 | 广告代码 | Html转换js | js/vbs加密 | md5加密 | 进制转换
实用工具:汉字翻译拼音 | 符号对照表 | 个税计算 | 经典小工具 | 汉字简繁转换 | 普通单位换算 | 公制单位换算 | 生辰老黄历 | 国内电话区号 国家代码与域名缩写 | 文字加密解密 | 健康查询 | 万年历 | 汉字横竖排版 | 手机号码查询 | 计算器 | ip搜索
业务联系 | 广告刊登 | 频道合作 | 投稿荐稿 | 联系方式 | 加入收藏 | RSS订阅
Copyright © 2000-2008 www.knowsky.com All rights reserved | 网络实名:动态网站制作指南 | 沪ICP备05001343号
ホームページ制作 不動産検索システム 求人情報
防水工事·改修工事 フットサル大会 探偵