一种软件架构
来源:互联网 发布:淘宝网网页无法访问 编辑:程序博客网 时间:2024/06/05 01:57
我们初入软件,在相当的一段时间内,我们的工作都仅限于在别人的代码的基础上增增减减,,但是永远乐于增增减减的人是不能进步的。我们常说,软件架构是一个很高深的东西,但是,软件大牛们也是我们一样起步的,只是后来人家做出了改变,借用我好朋友泉哥的一句话:再NB的人,也有苦逼的青春。
我的想法,先走一步,错了再说,让我们从苦逼的青春开始吧!
在人力相对充足的软件企业中,项目中可见代码的部分都是业务性质较多,框架类的东西,不可见,不可改,有时候被封装成库,总之,不是你在SVN上那些东西,有时候我们叫这些代码为底层代码。
软件大牛往往为你创建了一个项目模板,你只需要在每个新的项目的增增减减,但若你留心一些,也能将其中原理体会一二。
我曾经在华为对一个东西百思不得其解,程序运行过程竟然需要头文件(.h文件),我当时都怀疑架构是不是自带编译器重新编译,当然我不相信华为有这个实力,拿到底层的代码后,我傻了,方法竟然是把头文件直接分析内容,然后偏移虚函数表,调用虚函数的过程,按我当时的想法,这种作法太下流了。
其实,上一个事情我想说的是,需要你去琢磨,才有明白的可能。
现在步入正题,我介绍一种简单的软件架构。
框架代码:1、父类Application
Application{ Void virtual run() Virtual ~Application();};
2、main函数
main(){ Extern Application* pApp; pApp->run(); delete pApp;}
业务代码:
1、子类Work,一个子类对象
Work work;Application* pApp;Work{ Virtual void run();}
框架中的重点之处,
1、run()和析构函数是虚函数(框架己定)
2、继承(代码中定义)
3、一个被其它源文件使用的全局变量。(代码中实现)
4、框架实现了只需要关心子类中run()对业务逻辑的处理正确即可。
- 一种软件架构
- 软件架构师是软件行业中一种新兴职业,
- 任何一种软件开发方法学的架构、本质、精髓
- .Net 中 C/S架构软件的一种分层方式
- 一种高效的负载均衡调度的软件架构
- 一种高效的负载均衡调度的软件架构
- 一种架构图
- 一种stm32架构
- 架构是一种妥协
- 软件架构
- 软件架构
- 软件架构
- 软件架构
- 软件架构
- 软件架构
- 软件架构
- 软件架构
- 软件架构
- C语言除0引发的思考
- 数据库的体系结构
- Ubuntu 12.04 共享WiFi
- 数据库体系结构的五个要素
- 图的深度(DFS)/广度优先搜索算法(BFS)/Dijkstra
- 一种软件架构
- 怎样保护CDN节点来应对DDOS攻击
- 两级数据独立性
- Linux下如何寻求帮助(2013.08.14)
- 顺序查找-Java实现
- Asterisk 未来之路3.0_0004
- 数据库的三级模式结构的缺陷
- 新员工培训的十三条黄金法则
- 【机器学习实践(1)】配置python编程环境