DTS代码__感悟01

1、分类

  各种类,如何高效的组织起来:

    以后看代码的时候能够 很清晰

    以后扩展的时候,能够很方便

  1.1、分类:将各种类,划分成各种大类,然后 一个类型的n个类 使用相同的基类

  比如:各种 动作类,各种 事故预案类

2、虚函数 --> 多态

  使用好,威力无穷

  2.1、在 查找符合要求的一棵树的时候,很好用

   2.1.1、比如,查找 配网开关树 的时候

    2.1.1.1、我的做法:将查找树的逻辑都写在一个主函数中,代码 量大、乱、复杂

    2.1.1.2、严工的做法(DrDTS中):看函数 GetKgTree(..),各个相关类都有该函数,子类的多态函数 负责自己的逻辑代码

   2.1.2、使用 虚函数 的优点:

    2.1.2.1、将一整块代码 分割成 各个类的自己的代码,代码块就变小了。(看起来不会是那么大一块,看着就烦心)

    2.1.2.2、将一整块的代码 分割成各个小的部分,每个子类管理自己的逻辑功能,各自管好自己的事情就好。维护的时候 检查 各个小的逻辑代码块 保持自己的正确性 就可以了。

    2.1.2.3、逻辑看起来就更清晰。

3、

4、

5、

时间: 2024-10-01 08:07:38

DTS代码__感悟01的相关文章

梦断代码阅读笔记01

大致浏览了一下<梦断代码>这本书,觉得还是挺感兴趣的.第一章软件时间,作者以一名程序员的身份自述,故事性很强,读起来不会感觉枯燥.在第一章中作者认为程序员与其他人的不同之处在于他们从一开始,而我们从零开始,想来也正是如此,他谈了软件的发展历程以及过程中好多伟大的研究者为其发展而做的贡献,这个行业也是很多前辈付出了诸多努力才推出来的,所以需要我们付出更多的努力去发展他. 第二章中作者讲到我们做任务需要蓝图,也就是需要有计划,提前计划好,按计划来做任务,这样对于碰到一些问题才不至于举手无措,另外在

用python执行 js代码__来自脚本之家

安装依赖 首先安装依赖:Boost, 这一步网上的大部分教程都差不多,也是必须的; 1 2 3 sudo apt-get install scons sudo apt-get install libboost-dev libboost-thread-dev sudo apt-get install libboost-system-dev libboost-python-dev 安装PyV8 网上的大部分教程均是使用svncheckout出V8,PyV8的代码,然后再设置什么V8的目录为V8_HO

《梦断代码》读后感01——Chandle的开始

故事的开始是在上个世纪的硅谷,那是软件的淘金时代,当时的人们带着各种各样新奇的想法投身计算机科技行业.就像故事开头一样,当时的科技行业就是一个Sumer——一个白板,一个轮廓,所有科技大牛都在上面添上自己浓墨重彩的一笔.但就像硬币的两面一样,有的兴盛,有的衰败,见惯了科技方面绝无仅有的创举,见惯了把科技历史拉近一大步的成功,但也有失败,那种无人问津的错误,使一个人跌入低谷的失足之举.我们在欣赏着软件史上的辉煌之时,一定要认识到这背后的种种辛酸困顿,<梦断代码>就是如此的一个故事,作者罗森伯格借

Autolayout代码实现举例-01使用线性公式

1.例子1 需求: 令一个宽高都为200的view永远显示在屏幕的中央. 1 // 1.创建蓝色view 2 UIView *blueView =[[UIView alloc] init]; 3 blueView.backgroundColor = [UIColor blueColor]; 4 // 使用Autolayout必须关闭下面这个属性, 意思是不要把AutoresizingMask应用到Contrainsts中 5 blueView.translatesAutoresizingMask

梦断代码---读书笔记01

有意思的开端 软件时间 对程序员来说最可怕的是什么?自己辛苦很久做出的软件有各种深藏bug.这本书不同于我以前看过的书籍,大多都是概念,专业的话语让你要多审视几遍,你才会懂它的意思.它以讲故事的方式向我展开了所谓软件的开端.作者开始以自己对一款游戏的"开发"开始了,对周而复始的生活哭笑不得,对"昙花一现"的互联网时间告诉自己也同时向我讲述了数字时代的新时间机制下,一切皆有可能--新技术产生.公司创立.创造财富,而且速度惊人.这也意味着我等没时间做到尽善尽美---无须

代码学习与感悟

一:看师兄的代码觉得很精炼,记录学习下. 名称的命名很简洁,看的懂的英文缩写. 1. ''' 这段脚本中 用strip()去除每行头尾的空格 用line.startswith('#') 来判断行是否以'#'开头 ''' for line in open(topo_file, 'r'): line = line.strip() if line.startswith('#') or line == '': continue 2. ''' 用一行代码实现了:将list中的字符串以空格分开并转化为int

01.Redis安装

1.安装Redis 1.下载.解压Redis [[email protected] Redis]$ ll total 1248 -rwxrwxr-x. 1 lizhiwei lizhiwei 1276198 Sep 20 23:31 redis-2.8.22.tar.gz [[email protected] Redis]$ tar -zxvf redis-2.8.22.tar.gz 2.安装Redis [[email protected] Redis]$ ll total 1252 drwxr

Js间断/连续的文字滚动代码

Js间断/连续的文字滚动代码 Js文字滚动代码,可设置间断滚动和连续滚动.滚动时是向上滚动的,控制Li列表滚动,兼容性表现地不错,兼容IE/火狐.Opera等浏览器,代码如下: 01 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"> 02 <html> 03 <head> 04 <title>文字间隔滚动代码-兼容IE和FireFox</title>

__利用PHP的debug_backtrace函数,实现PHP文件权限管理、动态加载

利用PHP的debug_backtrace函数,实现PHP文件权限管理.动态加载 简述 可能大家都知道,php中有一个函数叫debug_backtrace,它可以回溯跟踪函数的调用信息,可以说是一个调试利器. 好,来复习一下.view source?01    one();02     03    function one() {04        two();05    }06     07    function two() {08        three();09    }10