引言:一直在从事数据库开发和设计工作,也看了一些书籍,算是略有心得。很久之前就想针对关系数据库设计进行整理、总结,但因为种种原因迟迟没有动手,主要还是惰性使然。今天也算是痛下决心开始这项卓绝又令我兴奋的工作。这将是一个系列的文章,我将以讲座式的口吻展开讨论(个人偷懒,这里的总结直接拿去公司培训新人用... ...
要选择正确的集合,我们首先要了解一些数据结构的知识。所谓数据结构,就是相互之间存在一种或多种特定关系的数据元素的集合。结合下图,我们看一下对集合的分类。 集合分类 在上图中,可以看到,集合总体上分为线性集合和非线性集合。线性集合指元素具有唯一的前驱和后驱的数据结构类型。非线性集合是指具有多个前驱或... ...
WP7有约(四):课程全景Written by Allen LeeDo I trust some and get fooled by phoniness, or do I trust nobody and live in loneliness?– Linkin Park, By Myself化零为整... ...
微软于2010年12月21日发布了分布式并行计算基础平台——Dryad测试版,成为谷歌MapReduce分布式数据计算平台的竞争对手。它可以使开发人员能够在Windows或者.Net平台上编写大规模的并行应用程序模型,并能够在单机上所编写的程序很轻易的运行在分布式并行计算平台上,程序员可以利用数据中... ...
写这个系列原本的想法是讨论一下.NET中异步编程风格的变化,特别是F#中的异步工作流以及未来的.NET 5.0中的基于任务的异步编程模型。但经过三篇文章后很多人对IO异步背后实现的原理以及为什么这样能提高性能很感兴趣。其实我本不想花更多的文字在这些底层实现的细节上,一来我并不擅长这些方面,二来我们使... ...
初衷一直希望VC开发者能够方便的开发出细腻高品质的用户界面。我喜欢C++,选择的平台是Windows,所以大部分时间用VC。我自身不排斥其他技术或者开发语言或者开发工具,都去了解,了解的目的是想吸取好的思想补充VC开发方面的不足。从事界面开发方面的研究有5年了,学过很多,尝试过很多,失败过很多,但是... ...
写了一段时间的程序,感受过各种编程环境,也数次学习Emacs(或者Vi)并期望这两者能搞定大部分事情。不过,最后还是发现术业有专攻,作为编程环境的时候,某些情景这哥俩还真的不怎么适合,姑且称为不足吧,记录在这里。这里马上想说的是,我不是Emacs和Vi的粉丝,但是很喜欢两者的某些设计和功能。努力学习... ...
1. Helper大爆炸.NET Framework为我们提供了丰富的类库,但是这并不是万能地,在大部分的时间,我们都需要为我们的项目特殊定制我们的通用类库。常常,我们都可以构造一个类,类里封装一些方法。但是对于很多时候,我们并没有办法提取出这样一个类,举一个小例子,我们在很多时候,需要把url给保... ...
“智商平平”学软件金旭亮 前几天收到了一个在职普通程序员的邮件,在邮件中他说两次报考我们学校计算机专业研究生,但总是惨败而回,第1年总分考了250,砸在政治和数学上,努力复习了一年,又是砸在数学上,总分才285……。我几乎能真切地体会到他那种沮丧和不甘心——为什么我经过一年的辛苦努力,却还是原地踏步... ...
这两天首页讨论创业讨论的很火。恰好这两天在给我老婆进行创业辅导,很有感慨。创业和就业是两种完全不同的生活方式,如果你想要从就业这种生活步入到创业这种生活,需要考虑的不仅仅是创业可能带来更大的财富和自由,更重要的是要考虑你是否适合及适应这种生活方式。创业者和就业者的生活态度和做事方式往往是有天渊之别的... ...
1. 概论在过去的近十年的时间里,面向对象编程大行其道。以至于在大学的教育里,老师也只会教给我们两种编程模型,面向过程和面向对象。孰不知,在面向对象产生之前,在面向对象思想产生之前,函数式编程已经有了数十年的历史。那么,接下来,就让我们回顾这个古老又现代的编程模型,让我们看看究竟是什么魔力将这个概念... ...
中国IT教育怎么办??? 北大青鸟式泛滥。各种机构雨后春笋搬出现。可没有一家机构。能撑起一片天。凭自己机构的口碑,让学生找到工作。 悲哀。。。 笔者以切身经历,提出血泪八条建议! ...
在对NLayerApp实际项目进行讨论之前,让我们首先学习一下(或者应该说重温一下)分层/多层架构与应用系统设计原则。很多朋友会认为这些都是老掉牙的内容,只要是软件从业人员,都会对这些内容非常熟悉。然而,果真如此吗?我在这里整理这部分内容,一方面是为介绍NLayerApp打下基础,而另一方面,则是希... ...
上一篇:[原创]如何确保JavaScript的执行顺序 – 之实战篇1. 引言在上一篇文章《如何确保JavaScript的执行顺序 - 之实战篇》中,我们发现jQuery的html函数能够确保动态加载的JavaScript按照引入顺序执行。我们先来简单回顾下HTML源代码(test2.htm):<h... ...
项目简介Microsoft – Spain团队有一个很不错的“面向领域多层分布式项目”案例:Microsoft – Domain Oriented N-Layered .NET 4.0 App Sample(在本系列文章中,我使用NLayerApp作为该项目的名称进行介绍),在codeplex上的地... ...
这个想法在我脑子里已经存在很久了,大约从大二的时候就开始有这个想法,原因是当时看到我心中无限向往和喜爱的计算机被教材和老师教授成那个样子,很多身边的同学都开始过那种魔兽,睡觉,吃饭,三者无限循环的日子,要知道他们当时来学校的时候,问起为什么选软件专业,他们都说想了解计算机游戏是怎么编出来的,但是事实... ...
搜索功能(新!) 在Visual Studio中有许多不同的搜索方法(增量搜索,快速查找,在文件中查找,查找工具栏等),对于一个给定的任务往往是不太明确的。 而且查找对话框本身也使得我们没法很好的查看和跳跃代码。 Productivity Power Tools 增加了新的查找扩展。 在编辑文本的状... ...
如题,借助于 Clay 项目,我们可以编写出不可思议的 c# 代码,各种方式的对象初始化和属性赋值,简单动态创建集合,动态接口实现...本文将会令你大为惊叹:原来c#也可以这样写!! ...
在上一篇文章中,我们从构建响应灵敏的界面以及构建高可伸缩性的服务应用来讨论我们为什么需要异步编程,异步编程能给我们带来哪些好处。那么知道了好处,我们就开始吧,但是在异步编程这个方面,说总是比做简单。套用那句不是名言的名言:编写异步程序是困难的,编写可靠的异步程序尤其困难。 ...
在今天的这篇随笔中,我们不再讨论技术问题,而是来稍微放松一下,我分享一些关于如何写一篇“用户友好”的博客的相关看法和个人经验吧,相信通过这篇随笔,能够让大家对写博有个更新的体会和思考。我通常在前言部分这里写一些本篇博客要阐述的要点,要点最好根据文章内容,采用逻辑顺序进行排列,为了和下面的正文对应整齐... ...