共找到 79 项 “Nagel” 相关结果
- 全部分类
- 全部
- 文学
- 历史
- 哲学/宗教
- 法律
- 政治/社会
- 医学
- 教育/心理学
- 艺术/传媒
- 研究生考试
- 资格认证考试
- 公开课
- 语言
- 经济金融
- 管理学
- IT/计算机
- 自然科学
- 工学/工程
- 体育
- 行业资料
- 音乐
- 汽车机械制造
- 文档模板
- 创业
- 农学
- 生活
- 数据库教程
- 民族
作者: (美)Christian Nagel,(美)Bill Evjen,(美)Jay Glynn等著;李铭译
出版社:清华大学出版社,2010
简介: 本书是Wrox畅销书,C#经典名著!2009年度全行业优秀畅销书。自第一版出版以来,都是国内读者的普遍好评,累计销量近十万册。 《C#高级编程(第7版)》的顶级专家作者团队首先复习了C#的基础知识,之后详细讲解了该语言和架构中的所有新增功能,使读者能立即开始编写Windows应用程序和ASP.NET Web应用程序。 本书几乎涵盖C#语言的所有功能,对于C#初学者和有经验的程序员是值得大力推荐的书籍。实践证明,本书是关于C# 和 Visual Studio的一本全面而且权威的参考书。 新的C# 4对于在Visual Studio 2010中编写代码是必不可少的。这本实用指南强调,C#是编写.NET 4应用程序的首选语言。《C#高级编程(第7版)》的顶级专家作者团队首先复习了C#的基础知识,之后详细讲解了该语言和架构中的所有新增功能,使读者能立即开始编写Windows应用程序和ASP.NET Web应用程序。 本书主要内容 ◆ 回顾.NET体系结构、对象、泛型、继承、数组、运算符、类型强制转换、委托、事件、Lambda表达式等 ◆ 详细论述C#中的动态对象、命名参数和可选参数、COM专用的交互操作功能、安全类型变体 ◆ 阐述.NET 4的新增功能、WF 4、ADO.NET 数据服务、MEF、并行任务库和PLINQ ◆ 深入探讨LINQ、WCF、WPF、流文档和固定文档及Silverlight等功能强大的技术 ◆ 回顾ASP.NET编程,介绍ASP.NET MVC和ASP.NET 动态数据等新功能 ◆ 讨论使用WCF、MSMQ、点对点和联合进行通信
作者: (美)Karli Watson,(美)Christian Nagel等著;齐立波翻译
出版社:清华大学出版社,2010
简介: 《c#入门经典(第5版)》全面讲解c# 2010和.net架构编程知识,为您编写卓越c# 2010程序奠定坚实基础。 c#入门经典系列是屡获殊荣的c#名著和超级畅销书。最新版的《c#入门经典(第5版)》 全面讲解c# 2010基础知识,浓墨重彩地描述web和windows编程以及数据访问(数据库和xml)等内容,详细介绍c#编程工具以及visual studio 2010中的visual c# 2010开发环境。贯穿全书的分步说明和极富启迪意义的示例指引您使用高效c# 2010代码得心应手地编写程序。 《c#入门经典(第5版)》主要内容简介 ·解释变量和表达式等基本c# 2010语法知识 ·介绍泛型的含义和用法 ·讨论windows编程和windows窗体 ·介绍c#改进内容、lambda表达式和扩展方法 ·解释windows应用程序部署方法 ·讨论xml并简要介绍linq ·深入探讨调试和错误处理方法 ·演示有效wpf和wcf技术 《c#入门经典(第5版)》一书的作者karli watson是infusion development 公司高级顾问,并担任boost.net的技术架构师和it自由撰稿人、作家和开发人员。他曾编著多本.net(尤其是c#)书籍,极擅长以浅显易懂的方式阐明复杂技术主题。 《c#入门经典(第5版)》一书的另一作者christian nagel是微软技术代言人、微软mvp,拥有逾25年的软件开发经验。christian熟悉各种语言和平台,曾编写多本.net图书,并多次在国际会议上发表重要演讲。
著者还有:(美)Jacob Vibe Hammer、Jon D. Reid、Morgan Skinner、Daniel Kemper、Christian Nagel
作者: (美)Karli Watson[等]著;齐立波,黄俊伟译
出版社:清华大学出版社,2014
简介:《C#入门经典 系列是屡获殊荣的C#名著和超级畅销书。最新版的 C#入门经典(第6版) 面向编程新手,全面介绍使用C# 2012和.NET Framework编写程序的基础知识。本书无与伦比的作者团队与您分享多年积累的C#和.NET Framework使用经验,首先简明扼要地介绍这两种技术,解释其含义、相互关系以及使用原因,然后循序渐进地讨论编程基础知识、Web编程、桌面编程以及数据访问技术。本书的讲解详明透彻,以通俗易懂的方式分步骤解析大量基础性示例,为您提供了在实践中锻炼运用新学知识的机会。 主要内容 ◆ 介绍编程基础知识,如变量、流程控制和面向对象编程 ◆ 着重介绍初学者在编写C#程序时最常用的工具:Visual Studio 2012中的Visual C# 2012开发环境 ◆ 阐述调试和错误处理 ◆ 详细讲解集合、比较和转换,探讨C#语言的新增功能 ◆ 深入分析WPF以及其他可用于创建和部署桌面应用程序的重要技术 ◆ 探讨Windows Store应用程序 ◆ 介绍ASP.NET Web编程和Web应用程序的部署 ◆ 分析文件系统数据、XML和LINQ
作者: (美) Christian Nagel, Bill Evjen, Jay Glynn等著
简介:C#经典名著!也是Wrox红皮书中最畅销的品种之一,从第一版开始就名满天下;其第3版被中华读书报、CSDN、《程序员》等机构评选为2005年最权威的十大IT图书之一(第2名);在中国版协、中国出版科学研究所、《出版参考》杂志组织的“2005年度输出版、引进版优秀图书”评选活动中获得“2005年度引进版科技类优秀图书”奖。第4版面向C# 2005,在全面展示.NET新特性的同时继续完善原有的内容,是有一些C#基础知识的学习者或者想迁移到C#的其他程序员全面掌握C#的首选教程。
C#高级编程——C# 5.0 & .NET 4.5.1(第9版)
简介: 本书由.NET专家的梦幻组合编写,包含开发人员使用C#所需的所有内容。C#是编写.NET应用程序的一种语言,本书适合于希望提高编程技巧的、有经验的C#程序员,也适用于刚开始使用C#的专业开发人员。本书探讨了Visual Studio 2013和.NET Framework4.5.1、新的测试驱动开发和并发编程功能。所有示例的源代码都可以下载,读者可以立即开始编写Windows桌面应用程序、Windows Store应用程序和ASP.NET Web应用程序。
作者: (美)托马斯·内格尔((Thomas Nagel)著;宝树译
出版社:当代中国出版社,2008
简介: 《你的第一本哲学书》在美国与罗素的《西方哲学史》齐名,是哲学入门的必读书目,已被译成二十种语言出版。在这本小书中,当代西方哲学界的领军人物内格尔用生动的语言,高超的分析技巧,以及深刻而冷静的洞察力向我们充分展现了哲学思考的真正旨趣。他告诉我们如何知道外部世界的存在;如何知道他人心灵的存在;如何判断行为的对与错;如何面对死亡的恐惧;又如何寻找到生活的意义。希望你对生活的审视,就从你的第一本哲学书开始。 《你的第一本哲学书》的目的不是要给出答案——即使我本人认为正确的答案——而是以一种非常平易的方式把你引向哲学问题。与其先学上一大堆哲学理论,不如首先对这些理论所要尝试解答的问题产生困惑: 我们如何知道外部世界的存在? 我们如何知道他人心灵的存在? 身体与心灵的关系是怎样的? 词语的意义何在? 我们有自由意志吗? 什么样的行为是对的,什么样的行为是错的? 什么样的不平等是不公正的? 死亡是否意味着终点? 生活的意义何在?
作者: (美)托马斯·内格尔( Thomas Nagel)著;贾可春译
出版社:中国人民大学出版社,2010
简介: 人的自我具有一种分裂的本性,它能超越自己的经验即从客观的观点来 思考世界,也能从自身所处的特殊视角即从主观的观点来看待世界。本书旨 在处理主观性和客观性的关系问题。作者认为,解决此问题的关键在于如何 看待客观性。客观性无法对世界作出令人满意的解释,但解决的方法不是禁 止客观化,而是求得客观性与不可还原的主观性的协调,即以本然的观点看 世界。作者探讨了这个问题在身心关系、知识与怀疑、思想与实在及道德哲 学等方面的表现。作者处理这一问题的独特方法,为哲学探究开辟了一条全 新的途径。在形而上学、认识论及价值哲学等领域,本书都是一部极为重要 的著作。
作者: (美) Christian Nagel ... [等] 著
简介: C#经典名著,连续畅销十五年,累计销售超20万册,引领无数读者进入程序开发殿堂 最新版更新至C# 2012和.NET 4.5 2009年度/2011年度全行业优秀畅销书,深受广大读者喜爱 2008年度优秀技术图书! 2007年度最畅销的C#销售图书! 2006年最受读者喜爱的十大技术开发类图书! 2005年最权威的十大IT图书之C#2010最新版
作者: (美)Simon Robinson,(美)Christian Nagel等著;李敏波翻译
出版社:清华大学出版社,2005
简介:对于开发人员来说,把C#语言及其相关环境.NET Framework描述为多年来最重要的新技术一点都不夸张。.NET提供了一种新环境。在这个环境中,可以开发出运行在Windows上的几乎所有应用程序,而C#是专门用于.NET的新编程语言。例如,使用C#可以编写出动态Web页面、XML Web服务、分布式应用程序的组件、数据库访问组件或传统的Windows桌面应用程序。本书介绍.NET Framework 1.1,即.NET Framework的第2版,但本书的大部分内容也适用于.NET Framework 1.0。如果使用1.0版本进行编码,就需要作一些修改,本书将在需要修改的地方指出要修改的内容。 不要被.NET这个名称所愚弄,这个名称仅强调Microsoft相信分布式应用程序是未来的趋势,即处理过程分布在客户机和服务器上,但C#不仅仅是编写Internet或与网络相关的应用程序的一种语言,它还提供了一种编写Windows平台上几乎任何类型的软件或组件的方式。另外,C#和.NET都对编写程序的方式进行了革新,更易于实现在Windows上编程。 这是一个相当重要的声明。毕竟,我们都知道计算机技术的发展速度非常快,每年Microsoft都会推出新软件、新的编程工具或Windows的新版本,并宣称这些对开发人员都非常有用,.NET和C#也不例外。 .NET和C#的重要性 为了理解.NET的重要性,考虑一下近10年来出现的许多Windows技术的本质会有一定的帮助。尽管所有的Windows操作系统在表面上看来完全不同,但从Windows 3.1(1992年)到Windows Server 2003,在内核上都有相同的Windows API。在我们转而使用Windows的新版本时,API中增加了非常多的新功能,但这是一个演化和扩展API的过程,并非是替换它。 开发Windows软件所使用的许多技术和架构也是这样。例如,COM (Component Object Model,组件对象模型)是作为OLE (Object Linking and Embedding,对象链接和嵌入)开发出来的,那时,它在很大程度上仅是把不同类型的办公文档链接在一起,所以利用它可以把一个小Excel电子表格放在Word文档中。之后,它逐步演化为COM、DCOM (Distributed COM,分布式组件对象模型)和最终的COM+。COM+是一种复杂的技术,它是几乎所有组件通信方式的基础,实现了事务处理、消息传输服务和对象池。 Microsoft选择这条道路的原因非常明显:它关注向后的兼容性。在过去的这些年中,第三方厂商编写了相当多的Windows软件,如果Microsoft每次都引入一项不遵循现有代码基础的新技术,Windows就不会获得今天的成功。 向后兼容性是Windows技术的极其重要的特性,也是Windows平台的一个长处,但它有一个很大的缺点。每次某项技术进行演化,增加了新功能后,都会比它以前更复杂。很明显,对此必须进行改进。Microsoft不可能一直扩展这些开发工具和语言,使它们越来越复杂,既要保证能跟上最新硬件的发展步伐,又要与20世纪90年代初开始流行的Windows产品向后兼容。如果要得到一种简单而专业化的语言、环境和开发工具,让开发人员轻松地编写优秀的软件,就需要一种新的开端。 这就是C#和.NET的作用。粗略地说,.NET是一种在Windows上编程的新架构—— 一种新API。C#是一种新语言,它可以利用.NET Framework及其开发环境中的所有新特性,以及在最近20年来出现的面向对象的编程方法。 在继续介绍前,必须先说明,向后兼容性并没有在这个演化进程中失去。现有的程序仍可以使用,.NET也兼容现有的软件。软件组件在Windows上的通信,现在几乎都是使用COM实现的。因此,.NET能够提供现有COM组件的包装器(wrapper),以便.NET组件与之通信。 Microsoft已经扩展了C++,提供了一种新语言J#,还对VB进行了很多改进,把它转变成为功能更强大的VB.NET,并允许把用这些语言编写的代码用于.NET环境。但这些语言都因有多年演化的痕迹,所以不能完全用现在的技术来编写。 本书将介绍C#编程技术,同时提供.NET体系结构工作原理的必要背景知识。我们不仅会介绍C#语言的基础,还会给出使用各种相关技术的应用程序示例,包括数据库访问、动态的Web页面、先进的图形技术和目录访问等。惟一的要求是用户至少熟悉一门在Windows上使用的高级语言,例如C++、VB或J++。 .NET的优点 前面阐述了.NET的优点,但并没有说它会使开发人员的工作更易于完成。在本节中,我们将简要讨论.NET的改进特性。 ● 面向对象的编程:.NET Framework和C#从一开始就完全是基于面向对象的。 ● 优秀的设计:一个基类库,它是以一种非常直观的方式设计出来的。 ● 语言的无关性:在.NET中,VB.NET、C#、J#和Managed C++等语言都可以编译为通用的中间语言(Intermediate Language)。这说明,语言可以用以前没有的方式交互操作。 ● 对动态Web页面的支持:ASP具有很大的灵活性,但效率不是很高,这是因为它使用了解释性的脚本语言,且缺乏面向对象的设计,从而导致ASP代码比较凌乱。.NET使用一种新技术ASP.NET,它为Web页面提供了一种集成式的支持。使用ASP.NET,可以编译页面中的代码,这些代码还可以使用.NET高级语言来编写,例如C#、J#或VB.NET。 ● 高效的数据访问:一组.NET组件,总称为ADO.NET,提供了对关系数据库和各种数据源的高效访问。这些组件也可以访问文件系统和目录。.NET内置了XML支持,可以处理从非Windows平台导入或导出的数据。 ● 代码共享:.NET引入了程序集的概念,替代了传统的DLL,可以完美无暇地修补代码在应用程序之间的共享方式。程序集有解决版本冲突的正式系统,程序集的不同版本可以同时存在。 ● 增强的安全性:每个程序集还可以包含内置的安全信息,这些信息可以准确地指出谁或哪种类型的用户或进程可以调用什么类的哪些方法。这样就可以非常准确地控制程序集的使用方式。 ● 对安装没有任何影响:有两种类型的程序集,分别是共享程序集和私有程序集。共享程序集是可用于所有软件的公共库,私有程序集只用于某个软件。私有程序集功能完备,所以安装过程非常简单,没有注册表项,只需把相应的文件放在文件系统的相应文件夹中即可。 ● Web服务的支持:.NET集成了对开发Web服务的完全支持,用户可以开发出任何类型的应用程序。 ● Visual Studio .NET 2003:.NET附带了一个开发环境Visual Studio .NET,它可以很好地利用C++、C#、J#、VB.NET和ASP.NET进行代码编写。Visual Studio .NET集成了Visual Studio 6环境中各种语言专用的所有最佳功能。 ● C#:是使用.NET的一种面向对象的新语言。 第1章将详细讨论.NET体系结构的优点。 .NET Framework 1.1中的新增特性 .NET Framework的第1版(1.0版)在2002年发布,赢得了许多人的喝彩。.NET Framework的最新版本1.1在2003年发布,它被认为是对该架构进行了较小的改进。即使是较小的改进,新版本仍有一些非常明显的变化和新增的内容,值得我们探讨一番。 在对.NET Framework 1.1版本进行的所有改进中,Microsoft试图确保对使用1.0版本编写的代码改动尽可能少。即使做了这样的努力,但在新版本中仍有一些显著的变化。许多代码的改进是为了增强安全性。读者可以在Microsoft的GotDotNet Web站点(http://www.gotdotnet.com)上查看完整的改进列表。 下面详细论述.NET Framework 1.1版本中的一些改进和Visual Studio .NET 2003(.NET Framework 1.1的开发环境)的新增特性。 可移动性 在使用.NET Framework 1.0和Visual Studio .NET 2002时,要创建可移动应用程序,就必须下载Microsoft Mobile Internet Toolkit(MMIT)。而现在,有了.NET Framework 1.1和Visual Studio .NET 2003,就可以直接创建可移动应用程序,不需要下载其他工具包了。 在使用Visual Studio .NET 2003创建新项目时,这是显而易见的。例如,在查看可以创建的C#项目类型列表时,会看到ASP.NET Mobile Web Application和Smart Device Application。ASP.NET Mobile Web Application项目类型可以用于建立基于Web的可移动应用程序。Smart Device Application项目类型可以创建用于Pocket PC或其他Windows CE设备的应用程序。为Windows CE设备建立的第三方客户应用程序利用的是Compact Framework,这是.NET Framework的删节版本。 打开任何一种可移动项目类型,系统就会在Visual Studio .NET工具箱中列出一组可用的可移动服务器控件,然后用户就可以使用这些控件创建应用程序。 新的数据提供程序 在新的架构中,另一个大的变化是ADO.NET。ADO.NET是访问和处理数据的.NET方式,现在它有两个新的数据提供程序,其中一个用于ODBC,另一个用于Oracle。 在使用.NET Framework 1.0时,就可以使用ODBC数据提供程序,但它需要单独下载。另外,一旦下载,这个数据提供程序的命名空间就是Microsoft.Data.Odbc。 而在.NET Framework 1.1中,ODBC数据提供程序是内置的,不需要单独下载。而且可以通过System.Data.Odbc命名空间来使用ODBC数据源,访问ODBC数据连接、数据适配器和数据读取器对象。 另一个新的数据提供程序用于处理Oracle数据库。该数据库在企业中的应用非常广泛,缺乏Oracle数据提供程序常常是.NET进入企业的一大障碍。为了使用这个新的数据提供程序,需要在项目中引用System.Data.OracleClient命名空间。 新的语言:Visual J# 在安装Visual Studio .NET 2003时,注意该版本提供了一种新语言Visual J#,可用于建立.NET应用程序。在此版本之前,Visual Studio .NET 2002需要单独安装该语言。 Visual J#简称为J#(读作J-Sharp),是Visual J++语言的新版本。它非常类似于Java语言,Java开发人员通过它将很容易迁移到.NET中。J#开发人员将使用.NET类库来代替Java运行 时库。 在.NET平台上,J#开发人员将拥有与C#开发人员相同的能力。使用J#,也可以建立.NET类、Windows窗体应用程序、ASP.NET Web应用程序和XML Web服务。另外,还可以像使用其他.NET兼容语言那样,以跨语言的方式使用J#。例如,可以创建一个J#类,并在C#应用程序中使用这个J#类,或者可以创建一个C#类,并在J#应用程序中使用这个C#类。 与其他语言一样,在.NET Framework中也有用于J#的内置编译器。所有的编译器都位于C:\Windows\Microsoft .NET\Framework\v1.1.xxxx目录下。C#的编译器是csc.exe,VB.NET的编译器是vbc.exe,J#的编译器是vjc.exe。 并发执行 并发执行side-by-side execution是指在同一个服务器上运行应用程序的多个版本,其中不同的应用程序版本使用不同的运行库版本。Microsoft一直都向开发人员承诺提供这个功能,但该功能总是很难可视化,因为只能使用Framework的一个版本。在发布了Framework的第2版.NET Framework 1.1后,就可以看到Microsoft提供的这个功能了。现在,可以创建.NET应用程序面向.NET Framework 1.1的新版本,同时还可以让面向.NET Framework 1.0的旧应用程序像以前那样继续运行。 支持Internet Protocol 6(IPv6) 最近,许多Internet使用IP 4运行,IP4也称为IPv4。它提供了IP地址,例如255.255.255. 255。.NET Framework 1.1现在支持IPv6,IPv6是在1995年创建的,解决了IPv4所面临的许多问题。如果人们一直采用IPv4,将很快用尽可用的IP地址。 .NET Framework 1.1通过System.Net命名空间支持IPv6,ASP.NET和XML Web服务也支持IPv6。 Visual Studio .NET 2003的改进 在升级.NET Framework时,还对Visual Studio .NET本身进行了升级。注意,在开始页面上有一些新图形,该页面上对象的组织方式也有所不同。另外,新IDE最重大的变化是,一旦安装,就不是简单地把Visual Studio .NET 2002升级为Visual Studio .NET 2003,而是安装了一个全新的IDE版本。如果机器上已经安装了Visual Studio .NET 2002,就会得到两个完全独立的VS.NET IDE。这样,如果要创建和使用面向.NET Framework 1.0的应用程序,就使用VS.NET 2002;如果要创建和使用面向.NET Framework 1.1的应用程序,就使用VS.NET 2003。 还应注意,在打开用VS.NET 2002创建的项目时,系统会询问是否要把项目升级为VS.NET 2003项目,如果回答“是”,就会把项目升级为面向.NET Framework 1.1的应用程序。注意,这是一个不可逆的过程。 除了这些较大的变化之外,在VS.NET 2003的IDE中,Intellisense的智能化程度更高,代码自动完成功能更强。本书将使用IDE的这个版本。 C#的优点 C#在某种程度上可以看作是.NET面向Windows环境的一种编程语言。在过去的十几年里,Microsoft给Windows和 Windows API添加了许多功能,VB和C++也经历了许多变化。虽然VB和C++最终已成为非常强大的语言,但这两种语言也存在问题,因为它们保留了原来的一些内容。 对于Visual Basic来说,它的主要优点是很容易理解,许多编程工作都很容易完成,基本上隐藏了Windows API和COM组件结构的内涵。其缺点是Visual Basic从来没有实现真正意义上的面向对象,所以大型应用程序很难分解和维护。另外,因为VB的语法继承于BASIC的早期版本(BASIC主要是为了让初学者更容易理解,而不是为了编写大型商业应用程序),所以不能真正成为结构化或面向对象的编程语言。 另一方面,C++在ANSI C++语言定义中有其自己的根。它与ANSI不完全兼容,因为Microsoft是在ANSI定义标准化之前编写C++编译器的,但已经相当接近了。遗憾的是,这导致了两个问题。其一,ANSI C++是在十几年前的技术条件下开发的,因此不支持现在的概念(例如Unicode字符串和生成XML文档),某些古老的语法结构是为以前的编译器设计的(例如成员函数的声明和定义是分开的)。其二,Microsoft同时还试图把C++演变为一种用于在Windows上执行高性能任务的语言—— 在语言中避免添加大量Microsoft专用的关键字和各种库。其结果是在Windows中,该语言成为了一种非常杂乱的语言。让一个C++开发人员说说字符串有多少个定义方式就可以说明这一点:char*、LPTSTR、string、CString (MFC 版本)、CString (WTL 版本)、wchar_t*和 OLECHAR*等。 现在进入.NET时代—— 一种全新的环境,它对这两种语言都进行了新的扩展。Microsoft给C++添加了许多Microsoft专用的关键字,并把VB演变为VB.NET,保留了一些基本的VB语法,但在设计上完全不同,从实际应用的角度来看,VB.NET是一种新语言。 在这里,Microsoft决定给开发人员另一个选择—— 专门用于.NET、具有新起点的语言, 即Visual C# .NET。Microsoft在正式场合把C#描述为一种简单、现代、面向对象、类型非常安全、派生于C和C++的编程语言。大多数独立的评论员对其说法是“派生于C、 C++ 和Java”。这种描述在技术上是非常准确的,但没有涉及到该语言的真正优点。从语法上看,C#非常类似于C++和Java,许多关键字都是相同的,C#也使用类似于C++和Java的块结构,并用括号({})来标记代码块,用分号分隔各行语句。对C#代码的第一印象是它非常类似于C++或Java代码。但在这些表面上的类似性后面,C#学习起来要比C++容易得多,但比Java难一些。其设计与现代开发工具的适应性要比其他语言更高,它同时具有Visual Basic的易用性、高性能以及C++的低级内存访问性。C#包括以下一些特性: ● 完全支持类和面向对象编程,包括接口和继承、虚函数和运算符重载的处理。 ● 定义完整、一致的基本类型集。 ● 对自动生成XML文档说明的内置支持。 ● 自动清理动态分配的内存。 ● 可以用用户定义的特性来标记类或方法。这可以用于文档说明,对编译有一定的影响(例如,把方法标记为只在调试时编译)。 ● 对.NET基类库的完全访问权,并易于访问Windows API。 ● 可以使用指针和直接内存访问,但C#语言可以在没有它们的条件下访问内存。 ● 以VB的风格支持属性和事件。 ● 改变编译器选项,可以把程序编译为可执行文件或.NET组件库,该组件库可以用与ActiveX控件(COM组件)相同的方式由其他代码调用。 ● C#可以用于编写ASP.NET动态Web页面和XML Web服务。 应该指出,对于上述大多数特性,VB.NET和Managed C++也具备。但C#从一开始就使用.NET,对.NET特性的支持不仅是完整的,而且提供了比其他语言更合适的语法。C#语言本身非常类似于Java,但其中有一些改进,因为Java并不是为应用于.NET环境而设计的。 在结束这个主题前,还要指出C#的两个局限性。其一是该语言不适用于编写时间急迫或性能非常高的代码,例如一个要运行1000或1050次的循环,并在不需要这些循环时,立即清理它们所占用的资源。在这方面,C++可能仍是所有低级语言中的佼佼者。其二是C#缺乏性能极高的应用程序所需要的关键功能,包括保证在代码的特定地方运行的内联函数和析构函数。但这类应用程序非常少。 编写和运行C#代码需要的环境 .NET运行在Windows 98、2000、XP和2003上,要使用.NET编写代码,需要安装.NET SDK,除非使用内置了.NET Framework 1.0和1.1的Windows Server 2003。除非要使用文本编辑器或其他第三方开发环境来编写C#代码,否则一般使用Visual Studio .NET 2003。运行托管代码不需要安装完整的SDK,但需要.NET运行库。需要把.NET运行库分布到还没有安装它的客户机上。 本书的内容 在本书中,首先在第1章介绍.NET的整体结构体系,给出编写托管代码需要的背景知识,此后本书分几部分介绍C#语言及其在各个领域中的应用。 第一部分(第1~11章)—— C#语言 本部分给出C#语言的背景知识。这部分没有指定任何语言,但假定读者是有经验的编程人员。首先介绍 C#基本语法和数据类型,再介绍C#的面向对象特性,之后是C#中的一些高级 论题。 第二部分(第12~18章)—— .NET环境 在本部分中,介绍在.NET环境中的编程规则。特别是Visual Studio .NET、安全性、.NET应用程序的线程部署,以及把库生成为程序集的方式。 第三部分(第19~20章)—— Windows窗体 本部分讨论传统Windows应用程序的创建,在.NET中这种应用程序称为Windows窗体。Windows窗体是应用程序的客户版本,使用.NET创建这些类型的应用程序是实现该任务的一种快捷、简单的方式。除了介绍Windows窗体之外,我们还将论述GDI+,这种技术可用于创建包含高级图形的应用程序。 第四部分(第21~24章)—— 数据 这部分介绍如何使用ADO.NET访问数据库,以及目录和Active Directory交互。我们还详细说明.NET对XML的支持,以及对Windows操作系统的支持。 第五部分(第25~27章)—— Web编程 这一部分介绍如何编写在网站上运行的组件,如何编写网页。其中包括ASP.NET的使用和Web服务程序的编写。 第六部分(第28~29章)—— 交互操作 COM的向后兼容性是.NET的一个重要组成部分,COM+负责事务处理、对象池和消息的排队。本部分将介绍.NET对处理COM和COM+的支持,并讨论如何编写与这些技术交互的C#代码。 第七部分(第30~32章)—— Windows基本服务 本部分是本书主要内容的总结,介绍如何访问文件和注册表,如何通过应用程序访问Internet,以及如何使用Windows服务。 第八部分—— 附录(本书仅提供内容下载地址) 本部分包含几个附录,详细介绍了面向对象的编程规则及C#编程语言专用的信息。这些附录在本书中并未给出,您可以通过本书提及的Web站点http://www.wrox.com获得其PDF版本。 如何下载本书的示例代码 在您学习本书的示例时,可以选择手工输入所有的代码,也可以使用与本书有关的源代码文件。本书所有的源代码都可以从http://www.wrox.com/上下载。在您登录到这个站点时,只需使用Search工具或使用书名列表就可以找到本书。接着单击本书信息页面上的Download Code链接,就可以获得所有的源代码。 提示: 许多图书的书名都很相似,所以通过ISBN查找本书是最简单的,本书的ISBN是0-7645-5759-9。 下载了代码后,就可以使用自己喜欢的解压缩工具对它进行解压缩。另外,也可以进入Wrox代码的主下载页面http://www.wrox.com/dynamic/books/download.aspx,查看本书所用的代码和其他Wrox图书。 勘误表 尽管我们已经尽了各种努力来保证本书不出现错误,但是错误总是在所难免,如果您在本书中找到了错误,例如拼写错误或代码错误,请告诉我们,我们将不胜感激。通过勘误表,可以让其他读者避免受挫,当然,这还有助于提供更高质量的信息。 要在网站上找到本书的勘误表,可以登录http://www.wrox.com,通过Search工具或书名列表查找本书 ,然后在本书的信息页面上,单击Book Errata链接。在这个页面上,可以查看已经提交并通过编辑检查的所有勘误。包含每本书的错误勘误表链接的完整图书列表可通过http://www.wrox.com/misc-pages/booklist.shtml获得。 如果没有在Book Errata页面上找到自己发现的错误,可以进入http://www.wrox.com/ contact/techsupport.shtml,填写其上的表单,将您发现的错误发送给我们。我们会检查您的信息,如果正确,就把它上传到该书的勘误表页面上,或在本书的后续版本中采用。 p2p.wrox.com P2P邮件列表是为作者和读者之间的讨论而建立的。读者可以在p2p.wrox.com上加入P2P论坛。该论坛是一个基于Web的系统,用于传送与Wrox图书相关的信息和相关技术,与其他读者和技术用户交流。该论坛提供了订阅功能,当论坛上有新贴子时,会给您发送您选择的主题。Wrox作者、编辑和其他业界专家和读者都会在这个论坛上进行讨论。 在http://p2p.wrox.com上有许多不同的论坛,帮助读者阅读本书,在读者开发自己的应用程序时,也可以从这个论坛中获益。要加入这个论坛,需执行下面的步骤: (1) 进入p2p.wrox.com,单击Register链接。 (2) 阅读其内容,单击Agree按钮。 (3) 提供加入论坛所需的信息及愿意提供的可选信息,单击Submit按钮。 然后就可以收到一封电子邮件,其中的信息描述了如何验证账户,完成加入过程。 提示: 不加入P2P也可以阅读论坛上的信息,但只有加入论坛后,才能发送自己的信息。 加入论坛后,就可以发送新信息,回应其他用户的贴子。可以随时在Web上阅读信息。如果希望某个论坛给自己发送新信息,可以在论坛列表中单击该论坛对应的Subscribe to this Forum图标。 对于如何使用Wrox P2P的更多信息,可阅读P2P FAQ,了解论坛软件的工作原理,以及许多针对P2P和Wrox图书的常见问题解答。要阅读FAQ,可以单击任意P2P页面上的FAQ链接。
作者: Karli Watson,Christian Nagel等著;齐立波翻译
出版社:清华大学出版社,2006
简介:这是一本曾成就无数C#程序员的经典名著,厚而不“重”,可帮助您轻松掌握C# 2005的各种编程知识,为您的职业生涯打下坚实的基础!本书自第1版问世,国内销量达3万册!一本首选的入门教程。本书作者都是各自领域的专家,都是C#语言和.NET Framework爱好者。 本书将全面介绍C#编程的所有知识,共分为5篇:第1篇是C#语言:介绍了C#语言的所有内容,从基础知识到面向对象的技术,应有尽有。第2篇是Windows编程:介绍如何用C#编写Windows应用程序,如何部署它们。第3篇是Web编程:描述Web应用程序的开发、Web服务和Web应用程序的部署。第4篇是数据访问:介绍在应用程序中如何使用数据,包括存储在硬盘文件上的数据、以XML格式存储的数据和数据库中的数据。第5篇是其他技术:讲述使用C#和.NET Framework的一些额外方式,包括程序集、属性、XML文档、网络和GDI+图形编程。 本书适合于想学习使用.NET Framework编写C#程序的初级读者,也适合于已了解.NET 1.0,而想学习.NET 2.0和Visual Studio 2005最新功能的读者。更多>>
作者: (美)托马斯·内格尔(Thomas Nagel)著;万以译
出版社:上海译文出版社,2004
简介:本书探讨人生的意义 、本质和价值。作者从对待死亡、性行为、社会不平等、战争和政治权力的态度问题,引申出有关人格同一性、意识、自由和价值等更为基本的哲学问题,贯串全书的中心,乃是个体的人生观及其与各种非个人的实在概念的关系这一问题。正是这个问题,突破了哲学内部的界线,从伦理学延伸到形而上学。同样出于对这个问题的关注,引发了论述心的哲学、论荒诞、论道德运气的文章, 作者的论述清晰明了,体现了分析哲学的特有风格。 [看更多]
Beginning microsoft Visual C# 2008
作者: (美)Karli Watson,(美)Christian Nagel等著;齐立波翻译
出版社:清华大学出版社,2008
简介:《C#入门经典(第4版)》通过C#可以很容易地学习.NET Framework 3.5的强大功能,所以C#是开始您编程生涯的绝佳方式。《C#入门经典(第4版)》全面阐述了C#编程的所有方面,包括C#语言本身、Windows编程、Web编程及数据源的使用等内容。 学习了新的编程技巧后,《C#入门经典(第4版)》介绍了如何高效地部署应用程序和服务,论述了许多高级技术,如图形化编程。另外,还探讨了如何使用Visual C# Express 2008、Visual Web Developer Express 2008和Visual Studio 2008的功能。所有这些内容都已更新,以反映.NET Framework 3.5和Visual Studio 2008的变化。各章的样例代码和示例还可以用于创建强大且安全的应用程序。 《C#入门经典(第4版)》语言简练,条理清晰,涵盖了Visual C# 2008和.NET Framework 3.5的全部内容。通过学习《C#入门经典(第4版)》,您将能够快速入门,轻松开发出自己的应用程序。 《C#入门经典(第4版)》主要内容 C#的所有基础知识和面向对象编程 通过C#语言编写和部署Windows应用程序 开发定制的Web应用程序和利用Web服务的技巧 数据访问技术,包括使用LINQ处理XML数据 通过单击按钮将应用程序发布到Web上 使用Windows Presentation Foundation、Windows Workflow Foundation、Windows Communication Foundation、GDI+和联网等其他技术 《C#入门经典(第4版)》读者对象 《C#入门经典(第4版)》适合于想学习使用.NET Framework编写C#程序的读者,也适合于已了解.NET,又想学习.NET 3.5或Visual Studio 2008最新功能的读者。
作者: (美)欧内斯特·内格尔(Ernest Nagel),(美)詹姆士·R. 纽曼(James R. Newman)著;陈东威,连永君译
出版社:中国人民大学出版社,2008
简介: 1931年,库尔特·哥德尔发表了一篇革命性的论文,对传统数学和逻辑研究中作为基础的某些根本性假定提出了挑战。时至今日,他对未知领域进行的探索,已被公认为是对现代科学思想的重大贡献。 本书是第一本既面向学者又面向非专业人士,对哥德尔证明的主要思路和广泛含义作了易懂的解释的书。对任何具有逻辑和哲学品味的受过教育的人士来说,它提供了一个深入了解先前无法企及的论题的机会。 在此书的新版中,普利策奖的获奖作者道格拉斯·R·霍夫斯塔特对这一经典著作的原文进行了重新斟酌和更新,澄清了模糊之处,使论述更为清晰,并使行文更具可读性。他同时加进了一篇新的前言,其中披露了他本人和这一开创性著作的特殊的个人联系,这本书对他本人专业生涯的影响,解释了哥德尔证明的基本精神,并且阐明了哥德尔证明是怎样和为什么直到今天仍然具有相关的意义。
作者: (美)Christan Nagel,Bill Evjen,Jay Glynn等著;李铭翻译
出版社:清华大学出版社,2008
简介:《C#高级编程(第6版)》面向C#2008和NET 3.5,在全面展示,NET和C#新特性的同时继续完善原有的内容,是有一些C#基础知识的读者或者想迁移到C#的其他程序员全面掌握C#2008的首选教程。《C#高级编程(第6版)》以.NET 3.5和VS2008为基础,是C# 2008及其环境的最终指南。《C#高级编程(第6版)》首先介绍了.NET的体系结构和方法论,解释了C#语言不能孤立看待,而必须放在.NET Framework中考虑原因。在论述了C#的基础知识之后,深入探讨了C#编程的所有内容。《C#高级编程(第6版)》添加了许多新示例,来解释如何使用C#完成各种任务。另外,还增加了一些全新的章节,包括LINQ、SQL、ADO.NET实体、Windows Communication Foundation、Windows Workflow Foundation、Windows Presentation Foundation、数组、系统事务处理、跟踪、事件日志等,使读者能清晰、全面地理解C# 2008提供的所有功能。 《C#高级编程(第6版)》主要内容 编写Windows应用程序和Windows服务 用ASP.NET 3.5编写Web页面 用C#处理XML的技巧 用ADO.NET访问数据库 用C# 2008生成图形 各种C#插件 用LINQ轻松地处理SQL Server数据库和XML 《C#高级编程(第6版)》读者对象 《C#高级编程(第6版)》适用于希望学习C#开发语言的最新版本的、有经验的开发人员。
简介:本书作者托马斯·内格尔是位分析哲学家,本书探讨了某些有关人生意义、性质和价值的根本问题。共分十四章:死亡,荒诞,道德方面的运气,性反常,战争与屠杀,公共事务中的冷酷无情,优先政策,平等,价值的不完整性,伦理学不需要生物学,大脑的对切与意识的统一,作为一只蝙蝠是什么样?泛心论,主观的和客观的。本书富有独创性和启发性,论证生动。
作者: 欧内斯特内格尔
出版社:上海译文出版社 2015年02月
简介:
欧内斯特内格尔(Ernest Nagel,1901-1985),20世纪美国著名的哲学家,以探索科学的本质而著称。《科学的结构》一书是内格尔思想的集中表现,被誉为科学哲学的十大经典之一。本书围绕着科学说明这一核心展开,对科学说明的本质、研究的逻辑以及知识的结构进行了全面论述,内容涉及物理科学、生物科学、数学用至社会科学。它的中译本的出版将有助于我国科学哲学研究的进一步深入。
【编辑推荐】
《二十世纪西方哲学经典》选收二十世纪西方哲学界各主要流派影响较大的著作,通过有选择的译介,旨在增进文化积累,拓展学术视野,丰富研究课题,为了解和研讨现代西方哲学提供系统而完整的**手资料,以利于理论界、学术界深化对西方文化的研究和借鉴。 《猜想与反驳》是其中一本。
Professional C# 2005 with .NET 3.0
作者: (美)Christian Nagel,(美)Bill Evjen,(美)Jay Glynn等著;李铭翻译
出版社:清华大学出版社,2007
简介:对于开发人员来说,把C#语言及其相关环境.NET Framework描述为多年来最重要的新技术一点都不夸张。.NET提供了一种新环境。在这个环境中,可以开发出运行在Windows上的几乎所有应用程序,而C#是专门用于.NET的新编程语言。例如,使用C#可以编写出动态Web页面、XML Web服务、分布式应用程序的组件、数据库访问组件、传统的Windows桌面应用程序,甚或可以联机/脱机运行的新型智能客户应用程序。本书介绍.NET Framework 2.0和新发布的.NET Framework 3.0版。如果读者使用1.0、1.1或2.0版本编码,本书的一些章节就不适用。本书将标注出只适用于.NET Framework 3.0的新增内容。 不要被.NET这个名称所愚弄,这个名称仅强调Microsoft相信分布式应用程序是未来的趋势,即处理过程分布在客户机和服务器上,但C#不仅仅是编写Internet或与网络相关的应用程序的一种语言,它还提供了一种编写Windows平台上几乎任何类型的软件或组件的方式。另外,C#和.NET都对编写程序的方式进行了革新,更易于实现在Windows上编程。更多>>
简介:"Featuring updates and the inclusion of nine new chapters, Analytic Philosophy: An Anthology, 2nd Edition offers a comprehensive and authoritative collection of the most influential readings in analytic philosophy written over the past hundred years. Features broad coverage of analytic philosophy, including such topics as ethics, methodology, and freedom and personal identity Focuses on classic or seminal articles that were especially influential or significant New articles in this edition include "Proof of an External World" by G. E. Moore, "Criteria, Defeasibility, and Knowledge" by John McDowell, "Sensations and Brain Processes" by J. J. C. Smart, selections from Sense and Sensibilia by J. L. Austin, "Other Bodies" by Tyler Burge, "Individualism and Supervenience" by Jerry Fodor, "Responsibility and Avoidability" by Roderick Chisholm, "Alternative Possibilities and Moral Responsibility" by Harry Frankfurt, and "Personal Identity" by Derek Parfit Offers diverse approaches to analytic philosophy by including readings from Austin, Wittgenstein, Quine, and Davidson "-- "Analytic Philosophy: An Anthology, 2nd Edition is a comprehensive and authoritative collection of the most influential readings in analytic philosophy written over the past hundred years. In addition to maintaining the first edition鈥檚 coverage of seminal writings and the latest works on the philosophy of language, philosophy of mind, metaphysics, epistemology, ethics, and methodology, this second edition features nine additional chapters, including treatment of externalism in philosophy of mind by Burge and Fodor, and an important treatment of perception by McDowell. Other featured authors include Gottlob Frege, Bertrand Russell, W. V. Quine, David Lewis, Thomas Nagel, John Searle, Donald Davidson, Bernard Williams, and many more. With its breadth of scope and expert selection of the best classic and cutting edge writings, Analytic Philosophy: An Anthology, 2nd Edition represents an invaluable and essential resource for anyone interested in twentieth-century analytic philosophy"--
作者: 托马斯·内格尔
出版社:上海译文出版社 2015年02月
简介:
托马斯内格尔(Thomas Nagel,1937— ),美国当代著名哲学家,现为纽约大学哲学与法学教授,美国艺术与科学学院院士,英国科学学院院士。
《利他主义的可能性》是托马斯内格尔的代表作,他用分析哲学的方法,从主观性和客观性的角度来探讨利他主义行为的动机结构。作为一部谈论利他主义问题时难以绕开的经典作品,它在西方的学术论文中被无数次引用,并受到相关领域学者的反复推荐。
【编辑推荐】
《二十世纪西方哲学经典》选收二十世纪西方哲学界各主要流派影响较大的著作,通过有选择的译介,旨在增进文化积累,拓展学术视野,丰富研究课题,为了解和研讨现代西方哲学提供系统而完整的**手资料,以利于理论界、学术界深化对西方文化的研究和借鉴。 《猜想与反驳》是其中一本。
The Structure of Science:Problems in the Logic of Scientific Explanation
作者: (美)欧内斯特·内格尔(Ernest Nagel)著;徐向东译
出版社:上海译文出版社,2002
简介:就冰的例子而论,以上指出的第二点———被说明项逻辑上不蕴含前提,作为对说明的一个普遍要求,争议不大。因为若不满足这个条件,则前提的合取在逻辑上就会等价于被说明项;在这种情况下,前提不过是重新阐述要待说明的定律而已。例如,考虑这一定律:一个自由落体经历一定距离所需的时间正比于该距离的值的平方根。这个定律逻辑上是从如下定律推出的,即一个自由落体所经历的距离正比于下落的时间间隔的平方。可是,由于这个前提正好是被说明项的等价数字变换,因而没有谁会把它看作是对这个被说明项的说明。(这个例子违反一个说明必须有不止一个前提的要求。由于过分复杂,不能详述不违反这个条件、但被说明项在逻辑上仍然等价于前提的例子。例如,力学的牛顿表述和18世纪的理论物理学家约瑟夫·拉格朗热给出的表述是等价的,尽管前者为物理学的初学者所熟悉,而后者由于使用高等数学就不太为人所知了。)如果谁要这样做,他或许正把被说明项当作对其自身的说明。 因此,看来清楚的是,我们希望,在一个令人满意的说明中,对某个东西进行论断的说明前提多于被说明项所断言的东西。更具体地说,我们的希望是,在对一个特定定律的说明中,至少前提之一应满足如下要求:当与另外的合适假定相结合时,该前提应该就能说明其他定律,而不是只能说明这个定律;另一方面,甚至当把那些另外的假定与该定律结合起来时,借助于这个特定定律来说明这个前提,应该就不可能了。在一个说明中,如果没有一个前提满足这一要求,那么就会得出两个不受欢迎的结果:首先,要得到前提的证据,而这一证据又不是所讨论的被说明项提供的证据,是不可能的;其次,除了在孤立事例中外,由于已知事实以及尚待发现的事实还没有关联,所以说明不会有意义地把题材的组织发展成为一个体系。 前提必定不能等价于被说明项的要求足以充分地排除许多伪说明,在这样的说明中,前提不过是通过为尚待说明的事实杜撰新名称而重新命名了它们而已。伪说明的经典例子是莫里哀 的讽刺作品的抨击对象,在他的作品中,莫里哀对那些人大加嘲弄,因为他们用鸦片具有安眠功效的宣言来说明鸦片引人入睡这一事实。有时可以在通俗科学讲解中发现不明显的说明例子,即如果一个物体不受非平衡外力的作用,其速度就会保持不变,因为一切物体都具有一种内在的惯性力。这就是一个伪说明,因为“惯性”这个词正是该定律所阐述的事实的另一个名称。 通常有人批评说这个据以阐明原因概念的思想是含糊其辞的;已经提出了一些有力的异议——尤其是针对空间连续性和时间连续性的常识概念,因为这些概念含有一系列混乱。而且, 在一些高级的科学如数学物理学中,那个思想是十分多余的,这无疑是对的;在对这个原因概念的确认的说明(如以上例子)中,当这种说明是按照现代物理理论来分析时,刚才提到的4个条件是否实际上得到了实现,这甚至引起了争议。不过,不管这个概念出于理论物理学的目的是多么不合适,它在许多其他的研究部门中继续起着作用。甚至于在实际事务中,在实验室中,在为了获得种种结果而在对合适手段进行处理的历程中使用抽象的物理理论时,正是这个概念坚定地体现在我们所采用的语言中。实际上,为了得到其他的东西,正是因为有某些东西能够加以处理,但不是相反,因果语言才成为描述许多事件之间的关系的合法而且方便的方式。 另一方面,在这个词的业已指明的意义上,不是一切自然律都是因果律。简要考查一下各门科学中用作说明前提的各种定律,便会明白这一点。 让我们把在这个暗示中牵涉到的东西弄得更清楚。当说一个表达式是被“明显地”定义时,总是可以把该表达式从它所产生的任何语境中消去,因为可以不改变语境的意义就用那个进 行定义的表达式取代它。因此,表达式“x是一个三角形”是由表达式“x是由三条直线段界定的一个封闭的平面图形”定义的。这样就可以把前者(被定义的表达式)从有利于后者(进行定义的表达式)的任何语境中消去;例如,“三角形的面积等于其底与高之积的一半”这一陈述便可以用如下逻辑上等价的陈述来取代,即“由三条直线段围成的一个封闭的平面图形的面积等于其底与高之积的一半”。另一方面,对于玻尔理论中的这一理论表达式来说,即“x是当一个电子从氢原子的接近最小的可允许轨道跃迁到最小的可允许轨道时激发出的辐射波长”,当把它等同于一个近似地具有“y是出现在氢光谱的某一位置上的谱线”这…形式的表达式时,它就不是在被明显地定义了。其实这两个表达式有相当不同的内涵,这是显然的。因此,虽然对应规则在这两个表达式之间确立起一个确定联系,但在这样的陈述中,比如说“在大约百分之十的氢原子中,产生电子从其接近最小的轨道到最小的可允许轨道的跃迁”,前者就不能为后者取代。若要尝试这种指定的取代,则结果事实上便会毫无意义。 不能按照实验思想明显地定义在当前的科学中采用的理论概念,对此,得不到任何不可侵犯的结论性证明,也许也不可能有任何这样的证明。这儿提出来的问题将在下一章得到更充分 的讨论。可是,应该注意到,还没有谁成功地构造出这样的定义。不仅如此,还有充分的理由相信,在实际应用中,对应规则并不是按照实验概念来构成理论概念的显式定义。 这些理由之一已得到注意。当经由一个模型来表述一个理论时,用于阐明该模型的语言通常具有实验程序并不具有的内涵。因此,正如上面注意到的,在玻尔理论中,指称电子跃迁的 表达式不等价于指称谱线的表达式。这样,在这种情形中,由于在显式定义中,进行定义的表达式和被定义的表达式在意义上是等价的,因此最不可能的是,对应规则能够提供显式定义。 或许另一个更有分量的理由是,对应规则经常使理论概念与不止一个实验概念相协调。正如业已论证的,理论概念只是由一个理论的公设隐含地定义的(甚至当理论只是经由一个模型被提出时)。因此,作为一种逻辑必然性,有无限数目的实验概念与一个理论概念相对应。例如,在玻尔理论中,电子跃迁的理论概念对应于一条谱线的实验概念;但(通过普朗克辐射定 律——该定律可以从玻尔理论中推出)也可以使这一理论概念等同于那个可以在实验上决定的黑体辐射中的温度变化。因此,在使一个特定的理论概念对应于两个或多个实验思想(虽然大概是在不同的场合、在不同问题情景中的实验思想)的情形中,认为理论概念是由,这两个实验思想中的每一个依次明显地定义的,不免会显得荒唐。 理论概念和实验概念之间缺乏唯一的对应,这值得进一步的评注和例证。一个熟悉的事实是,在科学中(尤其是虽然不完全是在数学物理学中),理论一般是被精心表述的,理论概念(不管它们是该理论系统的基元还是按照这些基元加以定义的东西)之间的关系也是很精确地阐述的。若要严格地探究理论假定的演绎推理,则这种精心和精确就是本质的。另一方面,把理 论思想和实验思想联系起来的对应规则,一般来说没有得到明确的表述;在实践中,这二者的等同是比较松散粗糙的。 对于工具主义的理论观来说,这些类似的困难就不会出现,因为按照这一观点,关于理论的恰当问题不是它们是否为真,而是它们是不是表达和推断实验现象的有效方法。理论含有那些对实际不存在的东西进行指谓或描述的表达式,或理论含有不与实验概念相联系的表达式,这个事实实际上被认为证实了如下主张,即理论必须按照它们在研究中作为媒介的、工具的功能来加以分析,而不是按照它们作为对某个题材的客观描述的合适性来加以分析。从这个观点来看,比如说,气体分子运动理论采用了质点、瞬时速度、完全弹性之类的限制性概念,这并不是它的瑕疵。因为该理论的任务并不是忠实地描绘气体的蒸发,而是提供一种对气体的某些性质进行分析和符号处理的方式,以便在具体的实验情形中,当可以得到关于这样一些性质的信息时,这个理论可以按照所需要的精确度推出关于其他性质的信息。 类似地,在研究气体的热学性质时,我们使用了一个把气体分析为离散粒子的聚集体的理论,虽然当我们研究与气体相联系的声学现象时,我们采用了一个把气体表达为连续介质的理 论,这种做法并不会给工具主义的见解带来麻烦。当被解释为或者是真或者是假的陈述时,这两个理论表面上看来是互不相容的。但当被解释为推理技术或推理的指导原则时,这两个理论是虽不同但互补的理论,每一个理论都是处理一系列专门问题的有效的智慧工具。不管怎样,在使用一个理论来处理一类问题,并使用一个明显不一致的理论来处理另一类问题时,物理学家不会感到有什么明显的内疚,在处理光的衍射和偏振问题时,他们采用了应用范围较广的光的波动理论——按照这个理论,光现象是按照周期性的波动来表示的,但在处理反射和折射问题时,他们却继续使用较为简单的几何光学理论——按照这个理论,光被分析为一种直线传播。在运用量子力学来分析谱线的微细结构时,他们引入了基于相对论的考虑;在运用量子论来分析化学键的本质时,他们又忽视这样的考虑。这种例子可以加倍举出;如果它们没有证明什么其他的东叫,它们至少表明,在理论用于实验研究时,理论的字面上的真实性不是主要关心的对象。 但假设力学技术逐步发达,我们学会了如何磨光或切削物体,这样就可以使一个物体的表面贴切地适合于另一个物体的表面。最终我们会想到取三个物体,磨平它们的表面,直到其中的任何两个物体都能平滑地相互适合。这个方法看来为具有最大平滑性的面提供了一个优良的客观标准,不管我们是不是准备把满足这一标准的面叫做“平面”。问这样的表面是否“确实”是平面显然毫无意义,因为它们是平面乃是通过定义,通过假设除了这里阐述的这个标准之外别无其他的“是一个平面”的标准。也请注意在判断两个面是否贴切地相互适合时,我们可以使用某种光学检验,如一个检验会表明当两个表面密合时就不会通过光线。不过,虽然我们可以使用这样的光学检验,我们不会假设(不管是明确地还是隐含地)光是沿“直线”传播,这样我们的方法实际上就不是循环的。我们不过是使用一个观察事实来作为说两个表面密合的一个条件。注意这一点具有本质的意义,即当说一个表面是一个平面时,唯一关键的事实问题是:这个表面是不是满足所指明的表面之间密合的条件。尤其是,在把“平面”这个名称赋予这样的表面时,并不涉及到与欧氏几何相联系的假定,这一点是应该注意到的。 ……



















