自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(5)
  • 资源 (36)
  • 收藏
  • 关注

转载 C# 改变恢复系统鼠标样式

using System.Runtime.InteropServices; [DllImport("User32.DLL")]public static extern bool SetSystemCursor(IntPtr hcur, uint id);public const uint OCR_NORMAL = 32512;public const uint OCR_IB

2014-10-14 15:27:40 2252

转载 C# WinForm TreeView改变选中节点颜色,失去焦点时选中节点仍突显。

当用户焦点离开TreeView时,TreeView选中节点仍然高亮,但是颜色太浅,几乎看不出来。这里重写一下DrawMode();可以控制选中节点颜色。TreeView.HideSelection = False;可让选中节点保持高亮。参考:http://msdn.microsoft.com/zh-cn/library/system.windows.forms.treeview.hid

2014-10-13 17:12:56 8090 1

转载 Winform中TreeView不同级节点设不同右键菜单

判断你的TreeNode的Level,根据Level的不同设置不同的右键菜单通常触发的是鼠标点击事件myTreeView.MouseClick += new MouseEventHandler(myTreeView_MouseClick); void myTreeView_MouseClick(object sender, MouseEventArgs e) { myTreeView.Cont

2014-10-11 18:25:14 2603

转载 WinForm(C#)中跨线程访问控件的解决方法

由于多线程可能导致对控件访问的不一致,导致出现问题。C#中默认是要线程安全的,即在访问控件时需要首先判断是否跨线程,如果是跨线程的直接访问,在运行时会抛出异常。解决办法有两个:1、不进行线程安全的检查2、通过委托的方式,在控件的线程上执行publicpartialclassForm1:Form   {       pu

2014-10-11 08:44:05 3081

转载 WinForm TreeView的一点用法

TreeView一般都包含父节点和子节点,常规情况下有以下几种情况:1.选中父节点之后,该父节点下面的所有子节点都被选中,取消选择父节点,则该父节点下面所有的子节点全部跟着取消选择。2.如果某一个父节点下面有任何一个子节点被选中,那么该父节点也是处于选中状态。3.如果某一个父节点下面最后一个处于选中的子节点被取消选中的话(这句话貌似有点绕口),该父节点也要处于取消选中的状态。

2014-10-08 14:35:23 1621

Origin绘制热图(数据及.opj文件)

博客《origion绘制热图》对应数据及结果http://blog.csdn.net/suncherrydream/article/details/75731408

2017-07-22

Origin导入多个文件(数据及效果opj文件)

博客《Origin将多个文件数据导入》对应的数据及结果 http://blog.csdn.net/suncherrydream/article/details/75736339

2017-07-22

java数据结构和算法电子书配套代码及算法动画演示

(美)Robert Lafore著 简介:国外经典计算机科学教材:本书是一本有关计算机编程中所应用的数据结构和算法的书,以针对C++和Java这两种语言的主要差别的描述、集中讨论的数组问题为基础,循序渐进地介绍了简单排序、栈和队列等方面内容。

2017-05-17

利用python绘制热图、计算网络节点degree、kshell、介数中心性、接近中心性、特征向量中心性、PageRank,计算相关性含环境、代码、数据源

利用python绘制热图、计算网络节点degree、kshell、介数中心性、接近中心性、特征向量中心性、PageRank,计算相关性含环境、代码、数据源

2017-05-12

UCINET教程

英文文档,较全面

2017-04-11

ucinet6中文版 下载

UCINET网络分析集成软件包括一维与二维数据分析的NetDraw,还有正在发展应用的三维展示分析软件Mage等,同时集成了Pajek用于大型网络分析的Free应用软件程序。利用UCINET软件可以读取文本文件、KrackPlot、Pajek、Negopy、VNA等格式的文件。它能处理32 767个网络节点。当然, 从实际操作来看,当节点数在5000~10000之间时,一些程序的运行就会很慢。 社会网络分析法包括中心性分析、子群分析、角色分析和基于置换的统计分析等。 另外,该软件包有很强的矩阵分析功能,如矩阵代数和多元统计分析。它是目前最流行的,也是最容易上手、最适合新手的社会网络分析软件。

2017-03-17

整体网分析讲义 UCINET软件实用指南

《整体网分析讲义:UCINET软件实用指南》全书共分12个章节,全面介绍了社会网分析的重要内容——整体网分析,以及如何使用UCINET软件实施测量。具体内容包括社会网络分析简介、整体网研究概要、凝聚子群研究、社会网络的关联性、结构洞与中间人等。该书可供各大专院校作为教材使用,也可供从事相关工作的人员作为参考用书使用。 社会网络分析被认为是与理性选择学派、新制度理论学派并举的重要学派,在管理学、社会学等领域有很大影响,而国内相关论著比较少。《整体网分析讲义:UCINET软件实用指南》梳理了大量国内、国外研究成果,全面介绍了社会网分析的重要内容——整体网分析,以及如何使用UCINET软件实施测量。《整体网分析讲义:UCINET软件实用指南》最大的特点是全面、详尽、实用,是读者使用UCINET软件进行整体网分析的得力助手。 作者简介

2017-03-17

jython-installer-2.7-b1.jar

java调用python,解决了jython2.7中出现的问题,即Cannot create PyString with non-byte value

2016-12-30

NetworkX环境搭建需要安装包

包括: matplotlib-1.1.0.win32-py2.7.exe networkx-1.11-py2.7.egg numpy-1.6.1-win32-superpack-python2.7.exe python-2.7.11.msi pywin32-214.win32-py2.7.exe python2.7版本安装networkx步骤.docx

2016-11-19

Python基础教程(第2版)

《Python基础教程(第2版)》包括Python程序设计的方方面面,首先从Python的安装开始,随后介绍了Python的基础知识和基本概念,包括列表、元组、字符串、字典以及各种语句。然后循序渐进地介绍了一些相对高级的主题,包括抽象、异常、魔法方法、属性、迭代器。此后探讨了如何将Python与数据库、网络、C语言等工具结合使用,从而发挥出Python的强大功能,同时介绍了Python程序测试、打包、发布等知识。最后,作者结合前面讲述的内容,按照实际项目开发的步骤向读者介绍了几个具有实际意义的Python项目的开发过程。 《Python基础教程(第2版)》内容涉及的范围较广,既能为初学者夯实基础,又能帮助程序员提升技能,适合各个层次的Python开发人员阅读参考。 《Python基础教程(第2版)》是经典教程的全新改版.作者根据Python版本的种种变化,全面改写了书中内容,做到既能“瞻前”也能“顾后”。《Python基础教程(第2版)》层次鲜明、结构严谨、内容翔实,特别是在最后几章。作者将前面讲述的内容应用到了10个引人入胜的项目中,并以模板的形式介绍了项目的开发过程。《Python基础教程(第2版)》既适合初学者夯实基础。又能帮助Python程序员提升技能,即使是Python方面的技术专家,也能从书里找到令你耳目一新的东西。

2016-07-06

HTTP The Definitive Guide

超文本转移协议(Hypertext Transfer Protocol,HTTP)是在万维网上进行通信时所使用的协议方案。HTTP有很多应用,但最著名的是用于web浏览器和web服务器之间的双工通信。 HTTP起初是一个简单的协议,因此你可能会认为关于这个协议没有太多好 说的。但现在,你手上拿着的是却一本两磅重 的书。如果你对我们怎么会写出一本650页 的关于HTTP的书感到奇怪的话,可以去看一下目录。本书不仅仅是一本HTTP首部的参考手册;它是一本名副其实的web结构圣经。 本书中,我们尝试着将HTTP中一些互相关联且常被误解的规则梳理清楚,并编写了一系列基于各种主题的章节,对HTTP各方面的特性进行了介绍。纵观全书,我们对HTTP“为什么”这样做进行了详细的解释,而不仅仅停留在它是“怎么做”的。而且,为了节省大家寻找参考文献的时间,我们还对很多HTTP应用程序正常工作所必须的、重要的非HTTP技术进行了介绍。在组织得便于使用的附录中,可以找到按照字母排序的首部参考(这些首部构成了最常见的HTTP文本的基础)。我们希望这种概念性的设计有助于读者对HTTP的使用。 本书是为所有希望理解HTTP以及Web底层结构的人编写的。软硬件工程师也可以将本书作为HTTP及相关web技术的条理清楚的参考书使用。系统架构师和网络管理员可以通过本书更好地了解如何设计、实现并管理复杂的网络架构。性能工程师和分析人员可以从高速缓存和性能优化的相关章节中获益。市场营销和咨询专家可以通过概念的介绍更好地理解web技术的前景。 本书对一些常见的误解进行了说明,推荐了“各种使用诀窍”,提供了便捷的参考资料,并且对枯燥且令人费解的标准规范进行了可读性很强的介绍。在这本书里,我们对Web正常工作所必须且互相关联的技术进行了详细的介绍。 本书是很多对因特网技术充满热情的人经过大量工作写成的。希望对你有所帮助。

2016-07-06

《The C++ Programming Language》中文版+英文版

The C++ Programming Language 中文英版 C++必备经典书籍

2016-07-06

《Impact of opinion clustering》

虽然高效的疫苗接种率上升,但可以被疫苗阻止的传染病却大规模爆发,如麻疹。越来越多的证据表明无法获得疫苗不是主要原因,具有不接种疫苗意识的个体形成集群导致疾病爆发概率的急剧上升。结果表明:我们估计的用于避免疾病爆发的疫苗接种率太低了。

2016-03-27

《Complex social contagion makes networks more vulnerable to disease outbreaks》

社会网络被广泛的应用于人与人之间传染病的动态传播。疫苗干扰了疾病在网络中的传播过程。确实,足够高的疫苗接种率在很大程度上能够有效地阻止疾病在网络中传播。我们有越来越多的证据表明,健康的行为需要社会强化。健康行为可以通过复杂的传染过程在社会网络中传播,如接种疫苗,拒绝方法等。通过对健康行为和传染病传播过程仿真建模,我们发现,在其他条件相同的前提下,健康行为的传播过程对疾病传播动力学有很大的影响。动力学产生变化的原因在于,含易感人群的拓扑结构的不同,易感染群在健康行为传播的过程中产生;反过来,健康行为的传播又依赖于整个社会网络的拓扑结构。我们的发现指出:健康行为在预测和控制疾病爆发中的重要性。

2016-03-25

统计建模与R软件

书中结合数理统计问题对R软件进行科学、准确和全面的介绍,以便使读者能深刻理解该软件的精髓和灵活、高效的使用技巧.此外,还介绍了在工程技术、经济管理、社会生活等各方面的丰富的统计问题及其统计建模方法,通过该软件将所建模型进行求解,使读者获得从实际问题建模入手,到利用软件进行求解,以及对计算结果进行分析的全面训练.

2016-03-17

Taobao oceanbase代码

//供学习用,禁止用于商业用途。 2012.04.20   OceanBase解决什么问题   许多公司的核心资产是各种各样的商业数据,例如淘宝的商品、交易、订单、购物爱好等等,这些数据通常是结构化的,并且数据之间存在各种各样的关联,传统的关系数据库曾经是这些数据的最佳载体。然而,随着业务的快速发展,这些数据急剧膨胀,记录数从几千万条增加到数十亿条,数据量从百GB增加到数TB,未来还可能增加到数千亿条和数百TB,传统的关系型数据库已经无法承担如此海量的数据。OceanBase解决不断增加的结构化数据存储与查询的问题。   从Eric Brewer教授的CAP(一致性C: Consistency, 可用性A: Availability,分区容错性P: Tolerance of network Partition)理论角度分析,作为电子商务企业,淘宝和其他公司的业务对一致性和可用性的要求高于分区容错性,数据特征是数据总量庞大且逐步增加,单位时间内的数据更新量并不大,但实时性要求很高。这就要求我们提供一套更加偏重于支持CA特性的系统,同时兼顾可分区性,并且在实时性、成本、性能等方面表现良好。   OceanBase的架构   OceanBase的逻辑架构简图    ▲   OceanBase架构的一些基本概念   主键   row key,也称为primary key,类似于DBMS的主键,与DBMS不同的是,OceanBase的主键总是二进制字符串(binary string),但可以有某种结构。OceanBase以主键为顺序存放表格数据   sstable   一种数据存储格式,OceanBase用来存储一个或几个表的一段按主键连续的数据   tablet   一个表按主键划分的一个(前开后闭的)范围,通常包含一个或几个sstable,一个tablet的数据量通常在256MB左右   基准数据和动态数据   OceanBase以增量方式记录一段时间内的表格数据的增删改,从而保持着表格主体数据在一段时间内相对稳定,其中增删改的数据称为动态数据(通常在内存,也称为内存表),而一段时间内相对稳定的主体数据称为基准数据,基准数据和转储后(保存到SSD固态盘或磁盘)的动态数据以sstable格式存储   ChunkServer   保存基准数据的服务器,通常是多台,为了避免软件硬件故障导致的服务中断,同一份基准数据通常保存了3份并存储在不同ChunkServer上   UpdateServer   保存动态数据的服务器,一般是单台服务器。为了避免软件硬件故障导致的服务中断,UpdateServer记录commit log并通常使用双机热备   MergeServer   进行静态动态数据合并的服务器,常常与ChunkServer共用一台物理服务器。MergeServer使得用户能够访问到完整的最新的数据   RootServer   配置服务器,一般是单台服务器。为了避免软件硬件故障导致的服务中断,RootServer记录commit log并通常采用双机热备。由于RootServer负载一般都很轻,所以它常常与UpdateServer共用物理机器   冻结   指动态数据(也称为内存表)的更新到一定时间或者数据量达到一定规模后,OceanBase停止该块动态数据的修改,后续的更新写入新的动态数据块(即新的内存表),旧的动态数据块不再修改,这个过程称为冻结   转储   出于节省内存或者持久化等原因将一个冻结的动态数据块(内存表)持久化(转化为sstable并保存到SSD固态盘或磁盘上)的过程   数据合并(merge)   查询时,查询项的基准数据与其动态数据(即增删改操作)合并以得到该数据项的最新结果的过程。此外,把旧的基准数据与冻结的动态数据进行合并生成新的基准数据的过程也称为数据合并   联表(join)   一张表与另一张或几张表基于主键的左连接关系,类似于DBMS的自然连接   COW   Copy on Write的缩写,在OceanBase中特指BTree在更新时复制数据备份写入,避免系统锁的技术手段   OceanBase的特点   OceanBase功能   OceanBase设计和实现的时候暂时摒弃了不紧急的DBMS的功能,例如临时表,视图(view),研发团队把有限的资源集中到关键点上,当前OceanBase主要解决数据更新一致性、高性能的跨表读事务、范围查询、join、数据全量及增量dump、批量数据导入。   OceanBase数据访问特点   虽然数据总量比较大,但跟许多行业一样,淘宝业务一段时间(例如小时或天)内数据的增删改是有限的(通常一天不超过几千万次到几亿次),根据这个特点,OceanBase把一段时间内的增删改等修改操作以增量形式记录下来(称之为动态数据,通常保存在内存中),这样也使得了主体数据在一段时间内保持了相对稳定(称之为基准数据)。   由于动态数据相对较小,通常情况下,OceanBase把它保存在独立的服务器UpdateServer的内存中。以内存保存增删改记录极大地提高了系统写事务的性能。此外,假如每条修改平均消耗100 Bytes,那么10GB内存可以记录100M(即1亿)条修改,且扩充UpdateServer内存即增加了内存中容纳的修改量。不仅如此,由于冻结后的内存表不再修改,它也可以转换成sstable格式并保存到SSD固态盘或磁盘上。转储到SSD固态盘后所占内存即可释放,并仍然可以提供较高性能的读服务,这也缓解了极端情况下UpdateServer的内存需求。为了应对机器故障,动态数据服务器UpdateServer写commit log并采取双机(乃至多机)热备。由于UpdateServer的主备机是同步的,因此备机也可同时提供读服务。   因为基准数据相对稳定,OceanBase把它按照主键(primary key,也称为row key)分段(即tablet)后保存多个副本(一般是3个)到多台机器(ChunkServer)上,避免了单台机器故障导致的服务中断,多个副本也提升了系统服务能力。单个tablet的尺寸可以根据应用数据特点进行配置,相对配置过小的tablet会合并,过大的tablet则会分裂。   由于tablet按主键分块连续存放,因此OceanBase按主键的范围查询对应着连续的磁盘读,十分高效。   对于已经冻结/转储的动态数据,OceanBase的ChunkServer会在自己不是太繁忙的时候启动基准数据与冻结/转储内存表的合并,并生成新的基准数据。这种合并过程其实是一种范围查询,是一串连续的磁盘读和连续的磁盘写,也是很高效的。   传统DBMS提供了强大的事务性、良好的一致性和很短的查询修改响应时间,但数据规模受到严重制约,缺乏扩展性;现代云计算提供了极大的数据规模、良好的扩展性,但缺乏跨行跨表事务、数据一致性也较弱、查询修改响应时间通常也较长,OceanBase的设计和实现融合了二者的优势:   --------------------------------------------------------------------------------   UpdateServer:类似于DBMS中的DB角色,提供跨行跨表事务和很短的查询修改的响应时间以及良好的一致性。   ChunkServer:类似于云计算中的工作机(如GFS的chunk server),具有数据多副本(通常是3)、中等规模数据粒度(tablet大小约256MB)、自动负载平衡、宕机恢复、机器plug and play等特点,系统容量及性能可随时扩展。   MergeServer:结合ChunkServer和UpdateServer,获得最新数据,实现数据一致性。   RootServer:类似于云计算中的主控机(如GFS master),进行机器故障检测、负载平衡计算、负载迁移调度等。   --------------------------------------------------------------------------------   上述的DBMS和云计算技术的优势互补使得OceanBase既具有传统DBMS的跨行跨表事务、数据的强一致性以及很短的查询修改响应时间,还有云计算的海量数据管理能力、自动故障恢复、自动负载平衡以及良好的扩展性。   OceanBase当前在淘宝的应用   OceanBase现在已经应用于淘宝收藏夹,用于存储淘宝用户收藏条目和具体的商品、店铺信息,每天支持4~5千万的更新操作。等待上线的应用还包括CTU、SNS等,每天更新超过20亿,更新数据量超过2.5TB,并会逐步在淘宝内部推广,也期待外部合作者。   主要的性能数据   测试软硬件环境   Red Hat Enterprise Linux Server release 5.4 (Tikanga)   gcc version 4.1.2 20080704 (Red Hat 4.1.2-46)   Intel(R) Xeon(R) CPU E5520 @ 2.27GH   ChunkServer & MergeServer:Memory 16GB Disk 300GB SAS*10 NO Raid   UpdateServer & RootServer:Memory 48GB Disk 300GB SAS*6 Raid1   测试环境部署简图   ▲   测试数据规模   21亿条数据,基准数据3备份。   测试Schema   两张表,其中表1中有21列,表2中11列。   其中表1中的11列和表2中的11列存在join关系。   单条记录大小为500字节。   测试性能曲线图   Range数据查询   ▲   单条数据查询   ▲   当压力最大时,ChunkServer单台输出数据90MB/S,已经接近了千兆网卡的极限   更新数据   ▲

2015-10-23

OceanBase-千亿级海量数据库_日照.pdf

淘宝的开源数据库OceanBase的文档

2015-10-23

《大规模分布式存储系统:原理解析与架构实战》迷你书.pdf

《大规模分布式存储系统:原理解析与架构实战》是分布式系统领域的经典著作,由阿里巴巴高级技术专家“阿里日照”(OceanBase核心开发人员)撰写,阳振坤、章文嵩、杨卫华、汪源、余锋(褚霸)、赖春波等来自阿里、新浪、网易和百度的资深技术专家联袂推荐。理论方面,不仅讲解了大规模分布式存储系统的核心技术和基本原理,而且对谷歌、亚马逊、微软和阿里巴巴等国际型大互联网公司的大规模分布式存储系统进行了分析;实战方面,首先通过对阿里巴巴的分布式数据库OceanBase的实现细节的深入剖析完整地展示了大规模分布式存储系统的架构与设计过程,然后讲解了大规模分布式存储技术在云计算和大数据领域的实践与应用。

2015-10-23

李春葆:数据结构习题与解析(C语言版)

李春葆:数据结构习题与解析(C语言版)

2015-03-02

C#多媒体定时器 工具

使用方法 (1) 添加dll文件到项目中 (2) 使用命名空间 using Dongzr.MidiLite; (3) 定义 EventHandler. void timer1_Tick(object sender, EventArgs e) { //.......................... } (4) 定义计时器 static MmTimer timer1; (5) 初始化并开始 timer1 = new MmTimer(); timer1.Mode = MmTimerMode.Periodic; timer1.Interval = 1; timer1.Tick += new EventHandler(timer1_Tick); timer1.Start(); (6) 停止并释放 timer1.Stop(); timer1.Dispose(); 另外,在项目中的工具栏中也可以看到该控件,也可以将该控件直接拖到窗体上,设置属性,添加事件,然后开始计时。

2015-01-27

简单的事件委托源码

该程序是应用委托事件的一个小例子,结构清晰明了,可以用来学习事件和委托

2014-07-01

利用MVC模式编写的Winform程序源码

根据文章《Introduction to Model View Control (MVC) Pattern using C#》编写的程序源码,可以用来学习MVC,文章链接http://www.c-sharpcorner.com/UploadFile/rmcochran/MVC_intro12122005162329PM/MVC_intro.aspx?ArticleID=448db537-f236-497d-a16b-46c5d1141e3f 其他用户翻译后文章地址http://www.cnblogs.com/c-delight/archive/2005/12/27/305694.html

2014-06-27

Framework Design Guidlines, Second edition.rar

Framework Design Guidelines, Second Edition, teaches developers the best practices for designing reusable libraries for the Microsoft .NET Framework. Expanded and updated for .NET 3.5, this new edition focuses on the design issues that directly affect the programmability of a class library, specifically its publicly accessible APIs. This book can improve the work of any .NET developer producing code that other developers will use. It includes copious annotations to the guidelines by thirty-five prominent architects and practitioners of the .NET Framework, providing a lively discussion of the reasons for the guidelines as well as examples of when to break those guidelines. Microsoft architects Krzysztof Cwalina and Brad Abrams teach framework design from the top down. From their significant combined experience and deep insight, you will learn * The general philosophy and fundamental principles of framework design * Naming guidelines for the various parts of a framework * Guidelines for the design and extending of types and members of types * Issues affecting-and guidelines for ensuring-extensibility * How (and how not) to design exceptions * Guidelines for-and examples of-common framework design patterns Guidelines in this book are presented in four major forms: Do, Consider, Avoid, and Do not. These directives help focus attention on practices that should always be used, those that should generally be used, those that should rarely be used, and those that should never be used. Every guideline includes a discussion of its applicability, and most include a code example to help illuminate the dialogue. Framework Design Guidelines, Second Edition, is the only definitive source of best practices for managed code API development, direct from the architects themselves. A companion DVD includes the Designing .N ET Class Libraries video series, instructional presentations by the authors on design guidelines for developing classes and components that extend the .NET Framework. A sample API specification and other useful resources and tools are also included.

2014-06-23

《人月神话》(中文+英文)

目录第1章 焦油坑 1.1 编程系统产品 《人月神话》 1.2 职业的乐趣 1.3 职业的苦恼 第2章 人月神话 2.1 乐观主义 2.2 人月 2.3系统测试 2.4 空泛的估算 2.5 重复产生的进度灾难 第3章 外科手术队伍 3.1 问题 3.2 Mills的建议 3.3 如何运作 3.4 团队的扩建 第4章 贵族专制、民主政治和系统设计 4.1 概念的完整性 4.2 获得概念的完整性 4.3 贵族专制统治和民主政治 4.4 在等待时,实现人员应该做什么 第5章 画蛇添足 5.1 结构师的交互准则和机制 5.2 自律-开发第二个系统所带来的后果 第6章 贯彻执行 6.1 文档化的规格说明-手册 6.2 形式化定义 6.3 直接整合 6.4 会议和大会 6.5 多重实现 6.6 电话日志 6.7 产品测试 第7章 为什么巴别塔会失败 7.1 巴别塔的管理教训 7.2 大型编程项目中的交流 7.3 项目工作手册 7.4 大型编程项目的组织架构 第8章 胸有成竹 8.1 Portman的数据 8.2 Aron的数据 8.3 Harr的数据 8.4 OS/360的数据 8.5 Corbato的数据 第9章 削足适履 9.1 作为成本的程序空间 9.2 规模控制 9.3 空间技能 9.4 数据的表现形式是编程的根本 第10章 提纲挈领 10.1 计算机产品的文档 10.2 大学科系的文档 10.3 软件项目的文档 10.4 为什么要有正式的文档 第11章 未雨绸缪 11.1 试验性工厂和增大规模 11.2 惟一不变的就是变化本身 11.3 为变更计划系统 11.4 为变更计划组织架构 11.5 前进两步,后退一步 11.6 前进一步,后退一步 第12章 干将莫邪 12.1 目标机器 12.2 辅助机器和数据服务 12.3 高级语言和交互式编程 第13章 整体部分 13.1剔除bug的设计 13.2 构件单元调试 13.3 系统集成调试 第14章 祸起萧墙 14.1 里程碑还是沉重的负担 14.2 “其他的部分反正会落后” 14.3 地毯的下面 第15章 另外一面 15.1 需要什么样的文档 15.2 流程图 15.3 自文档化的程序 第16章 没有银弹-软件工程中的根本和次要问题 16.1 摘要 16.2 介绍 16.3 是否一定那么困难呢?-根本困难 16.4 以往解决次要困难的一些突破 16.5 银弹的希望 16.6 针对概念上根本问题的颇具前途的方法 第17章 再论“没有银弹” 17.1 人狼和其他恐怖传说 17.2 存在着银弹-就在这里! 17.3 含糊的表达将会导致误解 17.4 Harel的分析 17.5 Jones的观点-质量带来生产率 17.6 那么,生产率的情形如何 17.7 面向对象编程-这颗铜质子弹可以吗 17.8 重用的情况怎样 17.9 学习大量的词汇-对软件重用的一个可预见,但还没有被预言的问题 17.10 子弹的本质-形势没有发生改变 第18章 《人月神话》的观点:是与非 18.1 第1章 焦油坑 18.2 第2章 人月神话 18.3 第3章 外科手术队伍 18.4 第4章 贵族专制、民主政治和系统设计 18.5 第5章 画蛇添足 18.6 第6章 贯彻执行 18.7 第7章 为什么巴别塔会失败 18.8 第8章 胸有成竹 18.9 第9章 削足适履 18.10 第10章 提纲挈领 18.11 第11章 未雨绸缪 18.12 第12章 干将莫邪 18.13 第13章 整体部分 18.14 第14章 祸起萧墙 18.15 第15章 另外一面 18.16 第1版结束语 第19章 20年后的《人月神话》 19.1 为什么要出版20周年纪 《人月神话(影印版)》 念版本 19.2 核心观点-概念完整性和结构师 19.3 开发第二个系统所引起的后果-盲目的功能和频率猜测 19.4 图形界面的成功 19.5 没有构建舍弃原型-瀑布模型是错误的! 19.6 增量开发模型更佳-渐进的精化 19.7 关于信息隐藏,Parnas是正确的,我是错误的 19.8 人月到底有多少神话色彩?-Boehm的模型和数据 19.9 人就是一切(或者说,几乎是一切) 19.10放弃权利的力量 19.11更令人惊讶的新事物是什么?-数百万的计算机 19.12全新的软件产业-塑料薄膜包装的成品软件 19.13买来开发-使用塑料包装的成品软件包作为构件 19.14软件工程的状态和未来 结束语:令人向往、激动人心和充满乐趣的50年 注解与参考文献

2013-09-23

定时器详解及例题课件

本演示文稿详细介绍了SetTimer及KillTimer的参数及并结合实例讲解了它的使用方法,清晰,明了。

2012-10-18

C#委托与事件

委托 和 事件在 .Net Framework中的应用非常广泛,然而,较好地理解委托和事件对很多接触C#时间不长的人来说并不容易。它们就像是一道槛儿,过了这个槛的人,觉得真是太容易了,而没有过去的人每次见到委托和事件就觉得心里别(biè)得慌,混身不自在。本文中,我将通过两个范例由浅入深地讲述什么是委托、为什么要使用委托、事件的由来、.Net Framework中的委托和事件、委托和事件对Observer设计模式的意义,对它们的中间代码也做了讨论。

2012-10-17

C#+4.0图解教程.pdf

《C# 4.0图解教程》是一本广受称赞的C#教程。它以图文并茂的形式,用朴实简洁的文字,并辅之以大量表格和代码示例,全面地阐述了最新版C#语言的各种特性,使读者能够快速理解、学习和使用C#。同时,《C# 4.0图解教程》还讲解了C#与VB、C++等主流语言的不同点和相似之处。 《C# 4.0图解教程》是经典的C#入门书,不仅适合没有任何编程语言基础的初级读者阅读,而且还是有VB、C++等语言基础的C#初学者的最佳选择。 目 录    第1章 C#和NET框架  1   1.1 在NET之前 1    1.1.1 20世纪90年代后期的Windows编程 1    1.1.2 下一代平台服务的目标 2    1.2 进入Microsoft NET 2    1.2.1 NET框架的组成 2    1.2.2 大大改进的编程环境 3   1.3 编译成CIL 5    1.4 编译成本机代码并执行 5    1.5 CLR 6    1.6 CLI 7    1.7 缩写回顾 8    第2章 C#编程概述 9    2.1 一个简单的C#程序 9    2.2 标识符和关键字 11   2.2.1 命名约定 11   2.2.2 关键字 12   2.3 Main:程序的起始点 12   2.4 空白 13   2.5 语句 13   2.5.1 简单语句 13   2.5.2 块 14   2.6 从程序中输出文本 14   2.6.1 Write 14   2.6.2 WriteLine 15   2.6.3 格式字符串 15   2.6.4 多重标记和值 16   2.7 注释 16   2.7.1 关于注释的补充 17   2.7.2 文档注释 17   2.7.3 注释类型总结 18   第3章 类型、存储和变量 19   3.1 C#程序是一组类型声明 19   3.2 类型是一种模板 20   3.3 实例化类型 20   3.4 数据成员和函数成员 21   3.5 预定义类型 21   3.6 用户定义类型 23   3.7 栈和堆 24   3.7.1 栈 24   3.7.2 堆 25   3.8 值类型和引用类型 25   3.8.1 存储引用类型对象的成员 26   3.8.2 C#类型的分类 27   3.9 变量 27   3.9.1 变量声明 27   3.9.2 多重变量声明 29   3.9.3 使用变量的值 29   3.10 静态类型和dynamic关键字 29   3.11 可空类型 30   3.11.1 创建可空类型 30   3.11.2 为可空类型赋值 31   第4章 类:基础 32   4.1 类的概述 32   4.2 程序和类:一个快速的示例 33   4.3 声明类 33   4.4 类成员 34   4.4.1 字段 34   4.4.2 显式和隐式字段初始化 35   4.4.3 声明多个字段 36   4.4.4 方法 36   4.5 创建变量和类的实例 37   4.6 为数据分配内存 37   4.7 实例成员 38   4.8 访问修饰符 39   4.9 从类的内部访问成员 41   4.10 从类的外部访问成员 42   4.11 综合应用 43   第5章 方法 45   5.1 方法的结构 45   5.2 本地变量 47   5.2.1 类型推断和var关键字 47   5.2.2 嵌套块中的本地变量 48   5.3 本地常量 49   5.4 方法调用 51   5.5 返回值 52   5.6 参数 54   5.6.1 形参 54   5.6.2 实参 55   5.6.3 带位置输入参数的方法示例 55   5.7 值参数 56   5.8 引用参数 58   5.9 输出参数 60   5.10 参数数组 62   5.10.1 方法调用 63   5.10.2 数组作实参 65   5.11 参数类型总结 66   5.12 方法重载 66   5.13 命名参数 67   5.14 可选参数 68   5.15 栈帧 71   5.16 递归 72   第6章 类进阶 74   6.1 类成员 74   6.2 实例类成员 76   6.3 静态字段 76   6.4 从类的外部访问静态成员 77   6.4.1 静态字段示例 77   6.4.2 静态成员的生存期 78   6.5 静态函数成员 79   6.6 其他静态类成员类型 80   6.7 成员常量 80   6.8 属性 82   6.8.1 属性声明和访问器 83   6.8.2 属性示例 83   6.8.3 使用属性 84   6.8.4 属性和关联字段 85   6.8.5 执行其他计算 86   6.8.6 只读和只写属性 87   6.8.7 计算只读属性示例 87   6.8.8 属性和数据库示例 88   6.8.9 属性vs公共字段 88   6.8.10 自动实现属性 89   6.8.11 静态属性 89   6.9 实例构造函数 90   6.9.1 带参数的构造函数 91   6.9.2 默认构造函数 92   6.10 静态构造函数 93   6.10.1 静态构造函数示例 93   6.10.2 构造函数的可访问性 94   6.11 对象初始化列表 94   6.12 析构函数 95   6.12.1 调用析构函数 96   6.12.2 标准清理模式 98   6.13 比较构造函数和析构函数 99   6.14 readonly修饰符 99   6.15 this关键字 100   6.16 索引 101   6.16.1 什么是索引 102   6.16.2 索引和属性 102   6.16.3 声明索引 103   6.16.4 索引的set访问器 104   6.16.5 索引的get访问器 104   6.16.6 关于索引的补充 105   6.16.7 为Employee示例声明索引 105   6.16.8 另一个索引示例 106   6.16.9 索引重载 107   6.17 访问器的访问修饰符 107   6.18 分部类和分部类型 109   第7章 类和继承 12   7.1 类继承 112   7.2 访问继承的成员 113   7.3 隐藏基类的成员 115   7.4 基类访问 116   7.5 使用基类的引用 117   7.5.1 虚方法和覆写方法 119   7.5.2 覆写标记为override的方法 120   7.5.3 覆盖其他成员类型 123   7.6 构造函数的执行 124   7.6.1 构造函数初始化语句 125   7.6.2 类访问修饰符 127   7.7 程序集间的继承 128   7.8 成员访问修饰符 129   7.8.1 访问成员的区域 130   7.8.2 公有成员的可访问性 131   7.8.3 私有成员的可访问性 131   7.8.4 受保护成员的可访问性 132   7.8.5 内部成员的可访问性 132   7.8.6 受保护内部成员的可访问性 132   7.8.7 成员访问修饰符的总结 133   7.9 抽象成员 133   7.10 抽象类 134   7.10.1 抽象类和抽象方法的示例 135   7.10.2 抽象类的另一个例子 136   7.11 密封类 137   7.12 静态类 137   7.13 扩展方法 138   第8章 表达式和运算符 142   8.1 表达式 142   8.2 字面量 143   8.3 整数字面量 144   8.4 字符字面量 145   8.5 字符串字面量 146   8.6 求值顺序 147   8.6.1 优先级 148   8.6.2 结合性 148   8.7 简单算术运算符 149   8.8 求余运算符 149   8.9 关系比较运算符和相等比较运算符 150   8.10 递增运算符和递减运算符 152   8.11 条件逻辑运算符 153   8.12 逻辑运算符 154   8.13 移位运算符 155   8.14 赋值运算符 157   8.15 条件运算符 158   8.16 一元算术运算符 159   8.17 用户定义类型转换 160   8.18 运算符重载 162   8.18.1 运算符重载的限制 163   8.18.2 运算符重载的示例 164   8.19 typeof运算符 165   8.20 其他运算符 166   第9章 语句 167   9.1 什么是语句 167   9.2 表达式语句 168   9.3 控制流语句 169   9.4 if 语句 169   9.5 if…else语句 170   9.6 switch语句 171   9.6.1 分支示例 172   9.6.2 switch语句的补充 173   9.6.3 switch标签 174   9.7 while循环 174   9.8 do循环 175   9.9 for循环 176   9.9.1 for语句中变量的有效范围 177   9.9.2 初始化语句和迭代表达式中的多表达式 178   9.10 跳转语句 178   9.11 break语句 178   9.12 continue语句 179   9.13 标签语句 180   9.13.1 标签 180   9.13.2 标签语句的范围 180   9.14 goto语句 181   9.15 using语句 182   9.15.1 资源的包装使用 183   9.15.2 using语句的示例 183   9.15.3 多个资源和嵌套 184   9.15.4 using语句的另一种形式 185   9.16 其他语句 186   第10章 命名空间和程序集 187   10.1 引用其他程序集 187   10.2 命名空间 191   10.2.1 命名空间名称 194   10.2.2 命名空间的补充 194   10.2.3 命名空间跨文件伸展 195   10.2.4 嵌套命名空间 195   10.3 using指令 196   10.3.1 using命名空间指令 196   10.3.2 using别名指令 197   10.4 程序集的结构 198   10.5 程序集标识符 199   10.6 强命名程序集 200   10.7 程序集的私有方式部署 201   10.8 共享程序集和GAC 201   10.8.1 把程序集安装到GAC 201   10.8.2 GAC内的并肩执行 202   10.9 配置文件 203   10.10 延迟签名 203   第11章 异常 205   11.1 什么是异常 205   11.2 try语句 206   11.3 异常类 207   11.4 catch子句 207   11.4.1 使用特定catch子句的示例 208   11.4.2 catch子句段 209   11.5 finally块 210   11.6 为异常寻找处理代码 211   11.7 更进一步搜索 211   11.7.1 一般法则 212   11.7.2 搜索调用栈的示例 213   11.8 抛出异常 214   11.9 不带异常对象的抛出 215   第12章 结构 217   12.1 什么是结构 217   12.2 结构是值类型 218   12.3 对结构赋值 219   12.4 构造函数和析构函数 220   12.4.1 实例构造函数 220   12.4.2 静态构造函数 221   12.4.3 构造函数和析构函数的总结 221   12.5 字段初始化是不允许的 222   12.6 结构是密封的 222   12.7 装箱和取消装箱 222   12.8 结构作为返回值和参数 222   12.9 关于结构的附加信息 222   第13章 枚举 224   13.1 枚举 224   13.1.1 设置底层类型和显式值 225   13.1.2 隐式成员编号 226   13.2 位标志 227   13.2.1 Flags特性 229   13.2.2 使用位标志的示例 230   13.3 关于枚举的补充 231   第14章 数组 233   14.1 数组 233   14.1.1 定义 233   14.1.2 重要细节 234   14.2 数组的类型 234   14.3 数组是对象 235   14.4 一维数组和矩形数组 236   14.5 实例化一维数组或矩形数组 236   14.6 访问数组元素 237   14.7 初始化数组 238   14.7.1 显式初始化一维数组 238   14.7.2 显式初始化矩形数组 239   14.7.3 初始化矩形数组的语法点 239   14.7.4 快捷语法 240   14.7.5 隐式类型数组 240   14.7.6 综合内容 241   14.8 交错数组 241   14.8.1 声明交错数组 242   14.8.2 快捷实例化 242   14.8.3 实例化交错数组 242   14.8.4 交错数组中的子数组 243   14.9 比较矩形数组和交错数组 244   14.10 foreach语句 245   14.10.1 迭代变量是只读的 246   14.10.2 foreach语句和多维数组 247   14.11 数组协变 248   14.12 数组继承的有用成员 249   14.13 比较数组类型 252   第15章 委托 253   15.1 什么是委托 253   15.2 声明委托类型 255   15.3 创建委托对象 255   15.4 赋值委托 257   15.5 组合委托 257   15.6 为委托增加方法 258   15.7 从委托移除方法 259   15.8 调用委托 259   15.9 委托的示例 260   15.10 调用带返回值的委托 261   15.11 调用带引用参数的委托 262   15.12 匿名方法 262   15.12.1 使用匿名方法 263   15.12.2 匿名方法的语法 263   15.12.3 变量和参数的作用域 265   15.13 Lambda表达式 266   第16章 事件 269   16.1 事件和委托相似 269   16.2 源代码组件概览 270   16.3 声明事件 271   16.3.1 事件是成员 271   16.3.2 委托类型和EventHandler 272   16.4 触发事件 272   16.5 订阅事件 273   16.6 标准事件的用法 275   16.6.1 使用EventArgs类 275   16.6.2 通过扩展EventArgs来传递数据 276   16.6.3 使用自定义委托 276   16.7 MyTimerClass代码 278   16.8 事件访问器 279   第17章 接口 280   17.1 什么是接口 280   17.2 声明接口 283   17.3 实现接口 284   17.4 接口是引用类型 285   17.5 接口和as运算符 287   17.6 实现多个接口 287   17.7 实现具有重复成员的接口 288   17.8 多个接口的引用 289   17.9 派生成员作为实现 291   17.10 显式接口成员实现 291   17.11 接口可以继承接口 294   第18章 转换 297   18.1 什么是转换 297   18.2 隐式转换 298   18.3 显式转换和强制转换 299   18.4 转换的类型 300   18.5 数字的转换 301   18.5.1 隐式数字转换 301   18.5.2 溢出检测上下文 302   18.5.3 显式数字转换 303   18.6 引用转换 306   18.6.1 隐式引用转换 307   18.6.2 显式引用转换 308   18.6.3 有效显式引用转换 308   18.7 装箱转换 309   18.8 拆箱转换 311   18.9 用户自定义转换 312   18.9.1 用户自定义转换的约束 312   18.9.2 用户自定义转换的示例 313   18.9.3 计算用户自定义转换 314   18.9.4 多步用户自定义转换的示例 315   18.10 is运算符 316   18.11 as运算符 317   第19章 泛型 318   19.1 什么是泛型 318   19.2 C#中的泛型 320   19.3 泛型类 321   19.4 声明泛型类 321   19.5 创建构造类型 322   19.6 创建变量和实例 323   19.6.1 使用泛型的栈的示例 324   19.6.2 比较泛型和非泛型栈 325   19.7 类型参数的约束 326   19.7.1 Where子句 327   19.7.2 约束类型和次序 327   19.8 泛型方法 328   19.8.1 声明泛型方法 328   19.8.2 调用泛型方法 329   19.8.3 泛型方法的示例 330   19.9 扩展方法和泛型类 331   19.10 泛型结构 332   19.11 泛型委托 332   19.12 泛型接口 334   19.12.1 使用泛型接口的示例 335   19.12.2 泛型接口的实现必须唯一 336   19.13 泛型的协变和逆变 337   19.13.1 接口的协变和逆变 341   19.13.2 有关变化的更多内容 342   第20章 枚举数和迭代器 344   20.1 枚举数和可枚举类型 344   20.1.1 使用foreach语句 344   20.1.2 枚举数类型 345   20.2 使用IEnumerator接口 346   20.3 IEnumerable接口 349   20.4 不实现接口的枚举数 351   20.5 泛型枚举接口 352   20.6 IEnumerator接口 352   20.7 IEnumerable接口 354   20.8 迭代器 355   20.8.1 迭代器块 356   20.8.2 使用迭代器来创建枚举数 357   20.8.3 使用迭代器来创建可枚举类型 358   20.9 常见迭代器模式 360   20.10 产生可枚举类型和枚举数 360   20.11 产生多个可枚举类型 361   20.12 产生多个枚举数 362   20.13 迭代器实质 363   第21章 介绍LINQ 365   21.1 什么是LINQ 365   21.2 LINQ提供程序 366   21.3 查询语法和方法语法 368   21.4 查询变量 369   21.5 查询表达式的结构 370   21.5.1 from子句 371   21.5.2 join子句 372   21.5.3 什么是联结 373   21.5.4 查询主体中的fromletwhere片段 375   21.5.5 orderby子句 378   21.5.6 select…group子句 378   21.5.7 查询中的匿名类型 380   21.5.8 group子句 380   21.5.9 查询延续 382   21.6 标准查询运算符 383   21.6.1 查询表达式和标准查询运算符 384   21.6.2 标准查询运算符的签名 385   21.6.3 委托作为参数 386   21.6.4 LINQ预定义的委托类型 387   21.6.5 使用委托参数的示例 388   21.6.6 使用Lambda表达式参数的示例 388   21.7 LINQ to XML 390   21.7.1 标记语言 390   21.7.2 XML基础 390   21.7.3 XML类 391   21.7.4 使用XML树的值 394   21.7.5 使用XML属性 397   21.7.6 节点的其他类型 400   21.7.7 使用LINQ to XML的LINQ查询 401   第22章 异步编程简介 404   22.1 进程、线程以及异步编程 404   22.1.1 多线程处理带来的问题 405   22.1.2 多线程处理的复杂度 405   22.2 并行循环 406   22.3 BackgroundWorker类 408   22.3.1 BackgroundWorker类的示例代码 411   22.3.2 BackgroundWorker用于WPF程序的例子 414   22.4 异步编程模式 416   22.5 BeginInvoke和EndInvoke 417   22.5.1 等待—直到结束模式 418   22.5.2 AsyncResult类 419   22.5.3 轮询模式 420   22.5.4 回调模式 421   22.6 计时器 423   第23章 预处理指令 426   23.1 什么是预处理指令 426   23.2 基本规则 426   23.3 #define和#undef指令 427   23.4 条件编译 428   23.5 条件编译结构 429   23.6 诊断指令 431   23.7 行号指令 431   23.8 区域指令 432   23.9 #pragma warning指令 433   第24章 反射和特性 434   24.1 元数据和反射 434   24.2 Type类 435   24.3 获取Type对象 436   24.4 什么是特性 438   24.5 应用特性 439   24.6 预定义的保留的特性 439   24.6.1 Obsolete特性 439   24.6.2 Conditional特性 440   24.6.3 预定义的特性 441   24.7 有关应用特性的更多内容 442   24.7.1 多个特性 442   24.7.2 其他类型的目标 442   24.7.3 全局特性 443   24.8 自定义特性 443   24.8.1 声明自定义特性 444   24.8.2 使用特性的构造函数 444   24.8.3 指定构造函数 444   24.8.4 使用构造函数 445   24.8.5 构造函数中的位置参数和命名参数 445   24.8.6 限制特性的使用 446   24.8.7 自定义特性的最佳实践 447   24.9 访问特性 448   24.9.1 使用IsDefined方法 448   24.9.2 使用GetCustomAttribute方法 449   第25章 其他主题 450   25.1 概述 450   25.2 字符串 450   25.2.1 使用StringBuilder类 451   25.2.2 格式化数字字符串 452   25.3 把字符串解析为数据值 455   25.4 关于可空类型的更多内容 457   25.4.1 使用空接合运算符 458   25.4.2 使用可空用户自定义类型 459   25.5 Main方法 460   25.6 文档注释 461   25.6.1 插入文档注释 462   25.6.2 使用其他XML标签 463   25.7 嵌套类型 463   25.7.1 嵌套类的示例 464   25.7.2 可见性和嵌套类型 465   25.8 和COM的互操作 467

2012-10-15

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除