开发模式探索
文章平均质量分 86
漂流的代码
这个作者很懒,什么都没留下…
展开
-
软件开发的思维模式
对于软件开发,有两种思维模式: 命令式说明式 命令式的思维模式是这样:按照每个步骤描述要做的工作和任务,先做什么,后做什么,顺序是不能颠倒的; 说明式的思维模式是,描述一个物体或者概念,它有什么特性,和其他物体有什么关系。 对于编程语言,实际上是命令式与说明式思维混合在一起的。 比如,我们熟悉的C语言,其中,说明式的语句包括: 函数定义与声明变量(全局、局部原创 2013-05-16 18:12:46 · 2698 阅读 · 0 评论 -
cppquery:用C++模仿jquery的探索
获取cppquery: https://github.com/coderebot/cppquery CPPQuery是什么 CPPQuery是仿照jquery,顾名思义,就是c++ query。它是针对windows API的GUI,提供一套类似jquery的接口。目的是:简化GUI的编程,最终目的是构建一个更加简洁和智能的MVC架构。主要目标有: 将GUI中分散的代码集中处原创 2013-12-26 11:10:46 · 3045 阅读 · 0 评论 -
cppquery 简单的数据绑定对话框
上一篇文章: cppquery:用C++模仿jquery的探索 获取cppquery: https://github.com/coderebot/cppquery 在本文中,我们用绑定的方法来实现一个对话框:将高度和宽度值绑定到一个对话框上,并能够修改。如图 当然,从windows编程上来说,这只是一个非常入门的功能。我们从这里出发,来看看我们能够简化到何种程度。 该窗原创 2013-12-31 14:31:51 · 1829 阅读 · 0 评论 -
C++利用不完全实例化来获得函数模板参数的返回值和参数
有一些模板会以函数为模板参数,有时候这些模板要获得函数的返回值和参数。如在boost中的signal和slot机制,就存在这样情况。 那么,我们如何得到这些信息呢? 我们使用C++不完全实例化来实现。 比如,有这个代码 typedef function_traits Signal;能够得到Signal::result_type == void, Signal::arg1_type原创 2013-07-13 18:19:28 · 3987 阅读 · 2 评论 -
boost 的函数式编程库 Phoenix入门学习
这篇文章是我学习boost phoenix的总结。 序言 Phoenix是一个C++的函数式编程(function programming)库。Phoenix的函数式编程是构建在函数对象上的。因此,了解Phoenix,必须先从它的基础函数对象上做起。 Phoenix能够提供令人惊艳的编码效果。我先撂一个出来,看看用Phoenix能写出什么样的代码: std::for_e原创 2013-06-18 14:33:46 · 5144 阅读 · 1 评论 -
boost的signal和solt机制使用入门
本文根据boost的教程文档整理。 signal-slot是一个非常方便的接口机制,在Qt和Gtk中广泛使用。boost也实现了一个signal-slot机制。 编译包含signal-slot的代码 使用signal-slot,必须包含头文件 #include signal-slot在boost中不是纯头文件,需要一个libboost_signals.so文件,在编译时,需要原创 2013-06-17 18:03:44 · 12934 阅读 · 1 评论 -
boost function对象
本文根据boost的教程整理。 主要介绍boost function对象的用法。 boost function boost function是什么 boost function是一组类和模板组合,用于包装各种函数。从功能上,它类似于函数指针,但是比函数指针的功能更强大。 使用boost function,必须包含头文件 #include 除了头文件外,不需要额外的库。 注原创 2013-06-17 15:11:11 · 3757 阅读 · 0 评论 -
boost bind初步探究
最近对boost的bind部分比较感兴趣,对其背后的机制进行了简单的分析,和大家分享一下。 注,我所看的代码是boost_1_51_0, 想来各个版本的差异不大。 从一个例子开始 直接上代码(从官方网站摘取) 定义函数 int f(int a, int b) { return a + b; } int g(int a, int b, int c) {原创 2013-06-14 14:43:56 · 5386 阅读 · 1 评论 -
名词王国里的死刑
http://lc-wangchao.iteye.com/blog/1575984 名词王国里的死刑(翻译) 博客分类: 函数式编程 (这篇文章原来是写在我的github博客网站上的,但是那里太冷清了,所以搬运过来,以后尽量两个地方同步更新吧,另外督促自己养成常写博客的好习惯。我的github博客地址:http://lcwangchao.gith转载 2013-06-08 16:44:38 · 4485 阅读 · 0 评论 -
杂谈:关于声明式语言
对于一个需要构建复杂的内存结构,相互之间有复杂的依赖关系的应用,如GUI等,用什么样的开发方法最好? 首先,是个语言选择的问题。 C/C++,以及java这样的语言,是基于命令式的。 命令式的语言,强调的是做事的步骤,先做什么,后做什么。前面的步骤直接影响后面的步骤。这样的语言很容易被理解,却不能创造出简洁、复杂而高效的程序。 对于函数式语言,虽然我了解不多,但是相对于命令原创 2016-04-19 19:17:18 · 3317 阅读 · 0 评论