找到相关内容 97
MongoDB学习笔记(四) 用MongoDB的文档结构描述数据关系
MongoDB的集合(collection)可以看做关系型数据库的表,文档对象(document)可以看做关系型数据库的一条记录。但两者并不完全对等。表的结构是固定的,MongoDB集合并没有这个约束;另外,存入集合的文档对象甚至可以嵌入子文档,或者“子集合”。他们最终都可以用类似于BJSON的格式描述。我们今天就来分析MongoDB这一特性带来的独特数据管理方式。我们还是
http://cyqdata.cn/cnblogs/article-detail-34980 
嵌入式项目代码结构的分层——HAL(硬件抽象层)、FML(功能模块层)、APL(应用程序层)
一、遇到的问题   在“Zigbee之旅”系列博文中,每写一篇笔者都会编写一个小实验来展开讲解。通过这一段时间的实践,我积累了一些编码经验,但也体会到了之前的代码结构的缺陷:   (1)开发效率低:每次使用片内的某一资源(例如定时器等),笔者都要去查询CC2430中文手册,比较eggache~   (2)代码重复较多:每个实验源码中,诸如 xtal_init ,led_in
http://cyqdata.cn/cnblogs/article-detail-32297 
《大话数据结构》第2章 算法基础 2.8 函数的渐近增长
2.8 函数的渐近增长         我们现在来判断一下,两个算法A和B哪个更好。假设两个算法的输入规模都是n,算法A要做2n + 3次操作,你可以理解为先有一个n次的循环,执行完成后,再有一个n次循环,最后有三次赋值或运算,共2n + 3次操作。算法B要做3n + 1次操作。你觉得它们谁更快呢?  &nb
http://cyqdata.cn/cnblogs/article-detail-31794 
ASP.NET MVC 实战2、项目的目录结构与核心的DLL
我们新建一个ASP.NET MVC的Web Application后,默认的情况下,项目的目录结构如下: App_Data :这个目录跟我们一般的ASP.NET website是一样的,用于存放数据。 Content :这个目录是建议用来存放一下资源文件的。例如CSS、JS、图片等等。当然你不愿意的话,完全可以不放到这里来。 Controllers :这个目录是建议将
http://cyqdata.cn/cnblogs/article-detail-11702 
简单学习下Oxite的项目结构-2
前一篇:简单学习下Oxite的项目结构-1 Oxite.BackgroundServices项目,前面已经说过,略。 Oxite.Database项目: 一个数据库项目,方便数据库架构、数据的对比、更新与部署。这个就没什么好说的了,谁用谁知道。 Oxite.LinqToSqlDataProvider项目,前面已提过,略。 Oxite.LiveSearchProvider项目,对M$的LiveSea
http://cyqdata.cn/cnblogs/article-detail-11157 
ASP.NET MVC 生成简单的 xml 权限结构
    当我的一个项目到尾声时,发现系统很多模块权限有遗漏。部分模块权限遗漏是由于前期开发速度太快,开发人员未先给模块加权限而后再编写该模块功能代码。当我们检查每个模块权限是否遗漏时,噩梦来了---- 需要花费很长的时间(功能模块太多)。于是乎我写了一个控制台权限同步工具。整体思路如下:      其实在MVC内每个Action
http://cyqdata.cn/cnblogs/article-detail-11037 
关于MVC项目目录结构调整的想法
MVC项目的默认目录结构:    Scripts               : js 文件    Content               : css, image 等文件  
http://cyqdata.cn/cnblogs/article-detail-10993 
MVC2.0 用Area 扩展项目的目录结构
MVC2.0 用Area 扩展项目的目录结构       Area是MVC2.0里新特性,但是感觉在项目中应用的不是很多,也许是项目比较小吧,没有在意目录结构的整理,举个例子来说吧,比如我们在管理自己项目的后台时候需要建立一个Admin目录,总感觉Admin建在View目录下不是很好,而且对URL显示也不是很完美..比如/Admin/index.a
http://cyqdata.cn/cnblogs/article-detail-9935 
简单学习下Oxite的项目结构-1
Oxite出来有一段时间了,今天抽点时间看了下。项目的整体结构如下: 按顺序由上到下大概说一下吧。 Oxite项目算是一个核心的东西吧,分别来看一下: BackgroundServices是一个后台服务类,为下图的Oxite.BackgroundServices项目服务: 具体的关系大概如下: IBackgroundService接口提供一个Run方法,然后由Backgroun
http://cyqdata.cn/cnblogs/article-detail-9930 
MVC结构简介
本文编译自J2EE的相关文档。MVC(Model-View-Controller)应用程序结构被用来分析分布式应用程序的特征。这种抽象结构能有助于将应用程序分割成若干逻辑部件,使程序设计变得更加容易。 MVC结构提供了一种按功能对各种对象进行分割的方法(这些对象是用来维护和表现数据的),其目的是为了将各对象间的耦合程度减至最小。MVC结构本来是为了将传统的输入(input)、处理(processi
http://cyqdata.cn/cnblogs/article-detail-9079 
.net framework 3.5 和 4.0 的结构图以及Namespaces参考,强烈推荐下载了解!
经常会被别人问你熟悉.NET Framework吗?  而且还不清楚.NET Framework 到底有哪些东西,然后我就在网上找了一些资料,供自己收集总结,同时也将这份资料分享给各位博友,共同学习,共同进步!   其他相关学习资料: MSDB库(中文) ASP.NET 4    .NET Framework 3.5 结构图下载地址: http://down
http://cyqdata.cn/cnblogs/article-detail-2705 
CQRS体系结构模式实践案例:Tiny Library:领域仓储与事件存储
领域仓储(Domain Repository)与事件存储(Event Store)是CQRS体系结构应用系统中C部分(Command部分)的重要组件。虽然都是存储机制,但两者有着本质的区别:领域仓储是属于领域层的,而事件仓储则是属于基础结构层的。领域模型产生事件,领域仓储负责保存、发布事件,并通过事件序列重塑领域模型。由于领域仓储的存在,使得“内存领域模型(In-memory Domain)”成为可能。 在上文中我已经对对象的状态做了一些介绍,通过这些介绍我们能够了解到,在应用系统中,是领域事件导致了对象状态的变化,于是,我们只需要把这些领域事件按顺序记录下来,我们就有能力将领域模型还原到任何一个时间点上。就以Tiny Library中的Reader聚合为例,当Reader刚刚被创建的时候,它的Name状态是空的,客户程序可以通过Reader实体的ChangeNam
http://cyqdata.cn/cnblogs/article-detail-2535 
CQRS体系结构模式实践案例:Tiny Library:系统架构
写在前面 也许在阅读了上篇文章中我列出的那部分资料后,还是有很多朋友对领域驱动设计不了解。正如上文评论中有网友提到微软西班牙团队也做了一个面向领域的分布式应用系统架构的案例,地址是http://microsoftnlayerapp.codeplex.com/。在这个站点的首页上,又对领域驱动设计做了诠释,我觉得总结的很好,特地将其翻译成中文写在这里,供大家参考: DDD is much more than this! We're talking about complex apps…, all their business rules (Domain logic) are points that, in most of the cases, need to be changed quite a lot during the app’s life. So
http://cyqdata.cn/cnblogs/article-detail-368 
Windows Phone 7 不温不火学习之《工程结构
像学习Android 一样也必须先把Windows Phone 7的工程结构了解清楚才好,Windows Phone 7的项目结构以一个最标准的WP7应用为例,截图如下: 把其中一些对应的文件展开如下: 下面一起来了解一下对应文件的作用和用法。     1.Properties AppManifest.xml翻译成中文为应用列表,当我们的WP应用开发完成后,会打包并发布,而此文件的作用是把我们需要布署和发布的所有文件列表列出来,这个跟Android 的Manifest 是不大相同的,Android 的manifest 虽然也可以理解成列表,但Andriod 必须自己手动添加需要的应用权限、服务、广播等。而这个文件最好是不要动它为好。文件内容如下:AssemblyInfo.cs做过Winform 或者 Asp.net 肯定对这个不陌生,这里不做过多介绍。WMAppMa
http://cyqdata.cn/cnblogs/article-detail-336 
数据结构与算法回顾之二叉树的遍历(下)
上节我们给出了广度优先遍历算法的实现和深度优先遍历算法的递归实现,本节我们讨论深度优先的三种遍历形式的非递归实现。 1.非递归先序遍历:先访问树的根节点,然后是左子树和右子树。根节点入栈,循环判断栈是否为空,如果不为空,出栈跟节点并访问根节点,如果右子树非空,让右子树先入栈;如果左子树非空,再让左子树入栈,执行循环,直到栈中为空。 代码如下: /// <summary> /// 先序遍历 /// </summary> /// <param name="root">开始节点</param> public void IterativePreorder(BSTNode root) { BSTNode p = root;
http://cyqdata.cn/cnblogs/article-detail-321 
深入浅出Flex Viewer 2.1(二)——体系结构
一、概述       在上一篇文章《深入浅出Flex Viewer 2.1(一)——概述》中,笔者对Flex Viewer用于构建以地图为中心的富客户端(RIA)应用的原型的功能和价值做了简要地介绍。在本文中,笔者将继续介绍该框架的体系结构。通过本文,读者可以详细了解到Flex Viewer框架源代码的关键目录和文件结构,以及这些文件中所包含或涉及到的系统的哪些构件(第二章);以及这些构件间的逻辑关系和连接这些构件所用的关键技术,如:消息总线(EventBus)、配置项管理(Config Manager)、数据共享机制(DataManager)的基本介绍(第三章)。 二、框架源码的结构视图       一般来说默认的Flex Viewer框架的源代码的结构如下图所示,
http://cyqdata.cn/cnblogs/article-detail-180 
选择结构(if..else..,switch,try..catch..)的拆分
编程中经常遇到很多条件,以及条件套条件的情况,以至于一个方法会写得非常地长。有多种方法可以规避这个问题。比如反射,策略模式,表驱动等等。先抛开这些方法不讲,从根本需求来探索这个过程。   一个switch结构可能是这样: swicth(case)   case 1:     //do1     break;   case 2:     //do2     break;   ..... 这里注释的do部分代码可能会是很多很多行,以及嵌套switch,if结构。 进一步,这个模型演化成 swicth(case)   case 1:     do1();     break;   case 2:     do2();     break;   .....   do1(){} do2(){}   也就是将里面的代码模块化。这个方法有效的减小了一个方法的代码长度。实际上
http://cyqdata.cn/cnblogs/article-detail-166