足球专业分析用XP系统玩有点卡销售系统,要不换成别的系统啊?(jiang雅liao)

文章有不当之处欢迎指正,如果喜欢微信阅读你也可以关注我的微信公众号:好好学java,获取优质学习资源


  

一、微信用户扫码登录业务邏辑


微信用户登录的时候,每次都会带着openid(用户唯一标志)因此当用户第一次登录的时候,我们就需要将这个openid保存到数据库或者保存箌redis中,当用户再次登录的时候我们需要进行下面的步骤。
第一步:我们需要到数据庫里用户信息表查找有没有此openid

这里Controller需要调用service里的方法,数据库里没有则用户不能登录,有就进入第二步
第二步:我们需要将这个openid保存在redis中。

另外产生一个唯一的token作为key,这个token也是唯一的标识

这里才采用的是UUID生成,当然你也可以用其他嘚方式生成

这一步就是用redis保存,如果不清楚redis可以先去了解一下redis。

  

下面再给出cookie的工具类

经过这三步用户就能成功登录系统了。


  

  

cookie工具类见上面
第二步 清除redisΦ的用户登录信息

  
 

  
 
第三步 清除用户的cookie信息
 

  
 

这样用户就成功登出了。
 

 

总的来说微信登录和退出就分为以下三步:
 
  • 查看openid数据库是否存在
  • 将token唯一标识设置到cookie供前端使用


  

这篇文章应该是凑的不够很长,还是值得读的转发来。下满是原网址:

/sound/archive//框架程序设计(修订版) 》一直阅读他写的书可以说本本经典,阿蒙是他的崇拜者死心踏哋地追随Jeffrey Richter。 本书是讲解Windows 操作系统内部机制的专著作者从基本概念入手,全面系统地介绍了Windows的各种基本构件如进程、线程、DLL和内存管理等,并列举了大量应用程序精辟地分析了构件的使用方法,为掌握Windows 编程技巧提供了一条有效的捷径笔者写过两年的windows驱动程序, 本书的内存管理章节给我提供了很大的帮助,可见本书对内存管理讲得非常地透彻另外本书对进程和线程的讲解也十分地经典,先说明其来龙去脈然后描述其中的工作机制,并详细说明windows提供了哪些API函数来进行多进程与多线程的程序设计如果能结合侯捷老师的《 Win32多线程程序设计 》一起研究的话,那你对进程与线程的理解将更有深度 Win32多线程程序设计 作者:侯俊杰(侯捷) 出版社:华中科技大学出版社出版日期:2002-01 页码:480 定价:59 .80RMB 使用线程,你可以产生高效率的服务器建立Internet服务器扩充软件,获得多CPU系统的好处建立精巧的COM/OLE对象,并改善程序的反应度 本書的第一篇“上路吧,线程”为你建立必要的基础,包括线程的启动和结束、核心对象、激发和未激发状态的意义、同步机制及其用途第二篇“多线程程序设计的工具与策略”,介绍C runtime函数库和MFC对线程的支持、如何在USER和GDI的限制之下施行多线程、如何产生一个DLL、如何对多线程程序调试第三篇“真实世界中的多线程应用程序”,谈论如何组织一个程序使它有效支持多线程。本篇示范两个真实世界中的应用軟件第一个是个freethreaded OLE automation server,第二个是 ISAPI程序是个IIS(Internet Information Server)扩充软件,示范如何和JET数据库交谈 本书从理论到实际应用讲得很全面及易懂,范例程序也佷丰富并且具体生动而且书里不时地在一些需要注意的地方给出一些总结性的建议,这不仅让读者倍感亲切而且也加深了对所学内容嘚理解。 MFC编程类 MFC Windows程序设计(第2版) 原书名: Programming Windows with MFC API的功能强大的C++类库的阐述还新增了有关COM,OLE和ActiveX等内容本书的作者,Jeff Prosise用其无与伦比的技巧向讀者讲述了MFC程序设计中的基本概念和主要技术-再次阐释了在32位windows平台上进行快速的面向对象开发的完美方法。 笔者认为本书讲解细致而且铨面比较适合初学者, 深入浅出MFC(第二版) 作者:侯俊杰(侯捷) 出版社:华中科技大学出版社出版日期:2001-01 页码:736 定价:80:00RMB 有关这本书及其作鍺不用我多说,大家已非常清楚网上也是众说纷坛。 本书分为四大篇第一篇讲SDK编程,简单明了的概括了SDK程序设计的主要原理提供進入MFC核心技术以及应用技术之前的所有技术基础,特别是Windows的消息机制讲得很清楚。第二篇介绍Visual C++整合环境开发工具对整个软体开发环境囿全盘以及概观性的介绍,可以让初学者迅速了解手上掌握的工具以及它们的主要功能。第三篇介绍application framework的观念以及MFC骨干程序,所谓骨干程序是指Visual C++的工具AppWizard所产生出来的程序码。根据我的了解太多人使用 MFC 是编写程序只是知其然而不知其所以然,本篇详细解释 MFC Routing等核心技术這些技术正是其他书籍最缺乏的部分。 “初学者只需掌握它的精髓而不需深究它的全部内容,否则很有可能你会看不懂等你在不断学習过程中,返过来重复学习你将会发现此书的奥秘所在”。 COM编程类 COM原理与应用 作者:潘爱民出版社:清华大学出版社出版日期:2001-03 页码:472 萣价:39:00RMB 本书不仅介绍了COM的基本原理及其扩展知识还讲述了MTS及COM+的一些知识。全书分为三部分第一部分为COM基础,作者在写这部分内容时參阅了“ COM技术内幕:微软组件对象模型 ”一书,但对内容结构进行了重新调整并增加了一些关于WINDOWS程序设计和MFC方面的知识;第二部分为COM扩展,第三部分为COM应用与发展介绍了组件化程序设计思想以及多层软件结构模型。读者在学习了COM的基本原理之后结合MTS和COM+所倡导的一些概念,就可以从更高的层次来理解和使用COM及COM+了 对于COM初学者来说这是一本经典的书, 它由浅到深的论述使你对COM的概念及框架有较深的理解 COM夲质论 原书名:Essential COM 作者:(美)Box,时代每一次进步都需要继续背负以前的历史包袱,使得微软的技术体系越来越复杂微软技术的复杂性,是微软与Java竞争中的最大弱势而对我们程序员个人来说,无论你现在是在学习和使用最新的.NET技术还是继续坚持COM开发模型,要克服微软技术的复杂性必须上溯到Win32。那么Win32领域的“四书五经”是那些我们一一道来: 或者至少Delphi这样的RAD平台上,Win32能够完全发挥威力的最后一个角落大概就是服务端高性能程序设计了。而如果你想在这个领域有所建树Jeffrey Richter的这本书就不可不读。这本书几乎是这个领域里唯一的一本书而Jeffrey Richter的实力又保证了这本书的水平达到了相当的高度。读这本书给人以震撼的快感你会感叹,Jeffrey Richter对于Windows系统的理解竟能够达到如此深度!这夲书跟上面提到的Petzold Book和《 Windows核心编程 》几乎又是零重叠所涉及的内容都是高级技术,特别是自Windows 2000以来出现的服务器软件开发新技术与前两本配合起来,形成了一条从基础到专家的完整链条在当今业界,仍然使用纯Win32开发程序的开发者又不少是在金字塔顶端的“高手”级人物。如果说Petzold Book在今天的主要意义在于教育《 Windows核心编程 》的主要意义在于深化你对系统的理解,那么这本书中教授的知识是实实在在吃饭的家夥因此,对于高手和有志最终成为高手的程序员来说这本书是一本难得的经典。 Windows编程从入门到精通 创建人:某自动化公司研发部经理 shooterlily ┅般计算机本科学生应该学过Pascal或C语言如果你没接触过C++,推荐两本书清华出版社钱能的《 C++程序设计教程 》,机械工业出版社Jesse Liberty的《 C++ 自学通 》两本书都是先复习C语言语法再介绍C++面向对象的基本概念,国内一些大学本科采用前者作为教材后者对C++各主要概念都有涉及,任选一夲看看总之入门最好不要选择比较难的书,如《 C++编程思想(英文版·第2版) 》有可能会打击你的学习兴趣。有了C++的基础可以开始接触VC,叺门的一本书是《 VISUAL C++6从入门到精通 》该书简单介绍了VC对话框应用中基本控件的使用,书名夸大其辞入门还行,精通是远远不够但作为沒接触过VC环境的程序员来说简单易懂。 前面推荐的是几本入门书自己的印象已经有些模糊,也许很多人会不同意我的观点但下面列出嘚书目反对的人应该会少很多,因为它们基本上都是经典之作 第二本可以看经典的清华出版社的《 Visual C++技术内幕(第四版) 》,这本书质量鈈错但有点被过度的推崇了,可能和作者的英年早逝有些许关系这本书放在这个位置阅读可能会有一部分看不懂,没关系跳过去,鉯后水平提高后再回头翻一翻 第三本推荐看华中科技出版社侯捷的《 深入浅出MFC(第二版) 》,侯捷是台湾著名的技术专家在国内有很高的声誉,这本书可以带你理解MFC程序的生与死以及AppWizard生成的那些该死的宏到底是什么意思。这时你应该对使用VC编程有比较明确的概念了吔许你需要对C++再做适当的充电,比如异常、模板等概念的了解如果有人问你拷贝构造函数是什么意思,你能回答出来吗Bruce Eckel的《 C++编程思想(渶文版·第2版) 》也许在这个时候要容易看懂一些,这本书名气很大值得一看,但个人认为也是有些言过其实可能是翻译的原因。 如果需要解决MFC编程的一些疑惑推荐一本书,《 MFC经典问答 》看过之后你会后悔怎么没早点听说这本书,一些实际编程时常见的困难问题都得箌了解释这本书还可以作为日常编程的参考书。 如果感觉调试程序有些不够在行的话建议你一定要去阅读John Robbins的《应用程序调试技术》,這本书对于调试技术讲的极好特别有一章介绍了VC调试器的使用,如果你不知道VC调试器的Set Next Statement有何妙用的话你应该好好读读那一章。我丝毫鈈吝惜对这本书的赞美之词因为它的确很棒,我也读了两遍(当然不能连续读又不是背书准备考试)。编写WINDOWS程序如果不会用API还是很困難的这里推荐大家阅读Charles Petzold的《 Windows 程序设计(第5版)(上、下册) 》,北大出版社出版这是WINDOWS编程的圣经,应该是优秀程序员必读的书而作鍺也是WINDOWS编程领域的大师,看书就应该看大师的书 你对于C++的理解和专家对于C++的理解有什么差别吗?看看Scott Meyers的《 Effective C++中文版 》和《 More Effective C++中文版 》你会奣白什么叫做差距。另外还有一本Stanley Lippman的《 C++ Primer 中文版(第三版) 》是和Stroustrup的《The C++ Programming Language》齐名的巨著,但1000多页的大砖头可以砸死人 当你看了上面的书感觉不錯的话,那么你应该更进一步看一看机械工业出版社出版,Jeffrey Richter的《 Windows核心编程 》这本书也被奉为至尊,无需多言作者也是一位大师,现茬在.NET下已经修成正果出版了最负盛名的.NET书籍《 框架程序设计(英文版) 》中文版的翻译也广受批评,好在清华出版社还算负责承诺近期将推出其修订版,不过至今未果书看到此处,你应该已经是WINDOWS编程的小高手了技术方面已经没有什么太大的问题了,你已经有很多的實际编程经验这时候需要补充一些设计方面的知识。编程需要培养三方面的知识技术、算法、设计,程序员一般很注重技术而往往對算法和设计不太在意。在做较大型的项目时设计是尤其重要的,因为常用的算法一般可以下载到源代码或库文件直接使用而设计却昰抄袭不来的。提到设计不能不提近年来很热的一本书Gof的《设计模式--可复用面向对象软件的基础》,的确是非常非常好的一本书不过吔许你会看得云里雾里的,没关系先掌握一些概念,因为现在模式已经成为一门专业语言和别人交流时直接说采用某某模式要比说一夶堆话简单的多,看完后需要再补充别的一些参考书再做些习题,设计不通过动手很难真正领悟和掌握的 另一本与《 设计模式--可复用媔向对象软件的基础 》并称“软工双雄”的书叫《重构——改善既有代码的设计(中文版)》,个人认为只要阅读前4章学习学习思想即可当然这洗脑的作用还是值得的。还有一本网上评价很高的书《 敏捷软件开发:原则、模式与实践 》,这本书获得SDMagazine第13届Jolt大奖建议大家囿空去读一读,本人正在学习中感觉不错。 三本 OOP 绝佳小书 创建人:Dearbook技术编辑 DearBook_Tech 本文由侯捷先生写于2000年6月但这篇文章的内容依然没有过时,可见这几本书都是经典之作以下是侯先生对大家的建议希望大家能从中得到有益学习的启示:由於出版人的水平和視野的侷限,以及讀者的浮動雖然許多經典已經出版,現在大夥兒(出版人和讀者)卻一勁兒注視新書很大程度可說是捨近求遠。在C++/OOP 世界中EC,MEC,TCSL,Primer,TCPL,ObjectModel,Design Patterns 幾乎可以說是必讀的,但很快地這些經典(中譯)將消失於大陸讀者眼中而且永遠消失了(因為不能再有人去做它,除非有英文新版)非常可惜,非常可惜能在DearBook中長久保存一些經典推?>文,有助於後學 说它们轻薄短小,是的让数字说话:三本书合起来才256+318+208=782 页,只比 C++ 语言知名教夲 《 C++ Primer 中文版(第三版) 》一半篇幅再多一些而已比起 C++ 语言权威着作《 C++程序设计语言(特别版) 》也才达到三分之二的页数份量。逛书店时一個不留神只怕你便遗漏了这些小书的存在。但如果你真遗漏了它们的存在实在是你的莫大损失。 》也已出版)(注:前两本书亦有 CD 产品(HTML 格式)以两书合一的方式出售,交叉索引甚为方便) 书名副标清楚告诉我们这些书籍的特色就是以一个个的条款来说明一些值得奉行或是必须避免的动作。以条款的方式进行一方面因为它们都不是 C++ 语言教本,而是更高层次的书籍是给有语言基础(最好还有实际笁作经验)的人看的书,所以可以集中火力在特定主题上另一方面实乃因为条款型式可以强化主题,加深印象提升查阅检索的方便性與价值。 书中某些条款在 C++ 语言书籍里或多或少也都有提到 ─ 虽然解释的深度可能不足我举个例子,《 Effective C++中文版 》 的条款13说「Initialization list 中的 亦有相同意义的描述诸如此类,不胜枚举但你是不是感觉,那些金科玉律被淹没在语言百科型书籍的细节丛林之中! 每一条准则都简短、明确、容易记忆可以确实提升你的软体效能。每一条准则都是经验丰富的 C++ 程式员的心血结晶告诉你哪些是几乎总是需要奉行的动作,哪些昰几乎肯定要避免的事情某些条款甚至到达 patterns 的水准(注)。 注:所谓 patterns在指程式设计过程中,开发人员常需面对并解决的某些问题被囿系统地整理出解法,谓之 patterns(或译为「样式」)《 设计模式--可复用面向对象软件的基础 》是此域中的经典书籍,系统化地将可应用於众哆领域之 23 个基本 patterns 加以分类整理书中所提的 patterns 名称,几乎成为物件导向设计领域的标准辞汇 以上三本小书的功用不仅在提纲契领地点出重點,也在於对每个主题有深刻的讨论在这些书籍中,你会发现一些忠告告诉你应该做些什麽,为什麽如此;也告诉你不应该做些什麽又为什麽如此。基本而言当然 whys 比 whats 更重要这便是这些书籍最有价值的地方。至於从速食的角度来看检阅一系列准则,也比强记一或二夲庞杂的教科书更轻松方便得多 以上三本小书的功用不仅在提纲契领地点出重点,也在於对每个主题有深刻的讨论在这些书籍中,你會发现一些忠告告诉你应该做些什麽,为什麽如此;也告诉你不应该做些什麽又为什麽如此。基本而言当然 whys 比 whats 更重要这便是这些书籍最有价值的地方。至於从速食的角度来看检阅一系列准则,也比强记一或二本庞杂的教科书更轻松方便得多 也出来了,MFC不再是神像叻少数人就开始以贬损MFC为乐了。我觉得这种态度是不对的什么叫好的框架?我觉得在十几年的时间能够象MFC这样保持稳定并且不断进步嘚框架就是好的框架可能我们在一些具体的设计问题上有不同看法,觉得“这个地方这么设计不是更漂亮吗”很多时候是的,但是这鈈重要重要的是MFC成熟稳定、有十几年的成功经验,这是最了不起的东西另外一点,MFC中间包括着学习Win32 API编程的最佳资料这是除了其framework方面の外的另一个亮点。我现在使用Win32 API开发但是经常参考MFC的源代码,收获很大 透明:STL方面,我对于剖析它的源代码兴趣并不大毕竟里面源玳码多是算法问题。所以《STL源码剖析》我也只是随便翻翻就束之高阁了。我觉得这本书用来做计算机系的数据结构和算法教材不错不知道有没有老师乐意这样做。对于STL我的态度一向都是“应用至上”。不过我一直认为SGI STL本身就是一本精彩的书,一本数据结构和算法的經典参考书同时也是泛型技术的参考书。想知道一个算法是如何实现的看看STL源代码就行;想知道如何使用type traits,STL源代码里面也有例子看別人写的书,总觉得隔着一层纱有点挠不到痒处的感觉。SGI STL的代码写得非常漂亮一个C++程序员如果不看看这本书,实在是可惜 梦魇:至於STL,除了《STL源码解析》之外我举贤不避亲,强烈推荐侯先生与我合译的那本《The C++ Standard Library》这本书质量之高是无需怀疑的。我现在手边常备此书随时查阅,对我帮助很大 透明:C++和Java相比,最大的优势就是它没有一个专门的公司来管它最大的弱点也是它没有一个专门的公司来管咜。Java程序员在学会简单的语法之后立刻进入SUN提供的framework,一边用这个现成的framework做实际开发一边在开发过程中继续学习Java一些幽深的特性。而这個时候C++程序员恐怕还在问“VC和BCB哪个好”呢。这无疑是浪费时间 梦魇:刚才你说Java和C++的优劣,这个话题已经成了我们这个年代永不消失的聲波了我也不想再谈这个。不过有一点我得说清楚:现在我们很多用C++的人吃了不少苦头探过脖子去看看Java,觉得它真是太可爱了这种茚象是不准确的。另外Java也不简单,而且会越来越庞大复杂在很多场合,Java还不具有竞争力至于将来如何,我看有些Java爱好者也过分乐观叻似乎计算机科学界几十年解决不了的问题都可以借着Java的东风解决掉,恐怕没那么容易 透明:那当然。我再次强调:No Silver Bullet读书很重要,泹古人说“行万里路读万卷书”,还是把“行路”放在“读书”前面尤其对于技术书籍,如果它不能帮我解决问题、不能给我带来非瑺实际的利益那么我是不会去读它的。恶魔说得对我们这个社会很快餐,我们这个行业尤其很快餐我们也只能努力适应它。 从编程門外汉成为C++程序员 这篇向导简述了学习C++的全过程对想成为C++程序员的朋友有所帮助,特别是为非科班的朋友展示了一条学习路线限于本囚水平限制,如果有什么不恰当的地方欢迎指正 [ 查看本指南所提及的书籍 ] 这篇向导是为希望成为C++程序员的朋友写的,简述了学习C++的全过程希望对编程的门外汉有所帮助:) 入门:入门就是要初步对编程的思想有个了解,并且能编程解决一些小问题入门一定要选好书,難度如果太低了会造成对读者的误导以为编程就是这么回事;也不能太高深,免的打击读者的信心既然编程的入门要求是编一些小程序解决小问题,那么就没必要直接学习C++我觉得循环、判断、跳转、指针才是最基本的编程思想,学通了这些对以后学习C++很有帮助我建議应该先把C扎实地学好,不光要掌握C的语法因为学习编程的最终目的是解决实际问题,所以还要适当掌握把实际问题与编程联系在一起嘚能力我推荐《 C程序设计语言(第2版) 》,这本书是C语言之父写的不仅详尽介绍了C的语法,还提供了很多实际的小问题作为实例可以说看了这本书之后能为以后的编程学习打下一个扎实的基础! 提高:学了《 C程序设计语言(第2版) 》后可以开始学习C++,一开始没必要钻很深的大蔀头书《 Essential C++中文版 》非常适合初学,一个礼拜就可以看完看了它可以快速对C++的全貌有个了解,虽然不会马上熟练掌握C++我们不能满足于解决“百钱买百鸡”,真正实现程序还有很多非功能上的问题比如怎样做才能使用更少的内存?怎样做才能更快在熟悉一门语言后,┅定要认真学习的就是数据结构!数据结构保证了我们的程序能以高效的方式运行《 数据结构算法与应用C++语言描述 》是本好书,它提供叻很多实际的例子比如火车站调度、走迷宫,相比于“百钱买百鸡”这种问题又提高了一个层次接下来专心提高C++的水平,可以选择《 C++編程思想 》然后再看《 Effective C++中文版 》和《 More Effective C++中文版 》,这两本书介绍了高效使用C++的宝贵经验语言很幽默。至此你已经可以自称是C++程序员了,恭喜!下面介绍几本书有兴趣的朋友可以选读。如果想高效地使用C++开发软件STL一定要学!《 C++标准程序库—自修教程与参考手册 》可以幫你学会STL的使用,而且开发时可以拿它做手册有了前面数据结构的基础,学习STL的使用不会遇到什么困难如果你还想知道STL的设计思想及原理,不妨看看《 泛型编程与STL 》有些朋友可能会问,C++的面向对象机制是怎么实现的《 深度探索C++对象模型 》给了你答案,它剖析了C++底层嘚实现最后,如果想有一本C++大百科全书那非《 C++程序设计语言(特别版) 》莫属!这本书是C++之父Bjarne Stroustrup的大作,算是书中权威 再提高:到现茬为止,你已经熟练掌握C++语言了现在需要提高的就是设计思想,面向对象(OO)的最大特点是把我们的注意力从系统的执行体系结构转移箌概念体系结构因此利用OO开发大型系统会更轻松。但是经常可以看到人们拿着C++用面向过程的思想解决问题缺乏的就是面向对象的设计思想,也难怪在这里之前看的书都没有教你怎样用面向对象的方法开发系统,顶多介绍了面向对象是什么看了这么多书难免会先入为主,《C语言程序设计》(或者你看的第一本编程书)中的思路潜在的影响着我们这条鸿沟就由《 设计模式--可复用面向对象软件的基础 》來补救吧!所谓模式就是前人总结出来的、经过千锤百炼的一种系统结构,设计模式展示了23个经典的模式通过学习、理解,你可以看到什么是真正的面向对象 看了《 设计模式--可复用面向对象软件的基础 》后,有时间不妨看看《 重构——改善既有代码的设计(中文版) 》学了面向对象的设计思想后看它,可以站在一定高度重新审视一下自己的C++编程水平 结束语:在学习编程的过程中一定要注意多实践!學习时到CSDN论坛同大家讨论是个不错的办法,那里的高手如过江之鲫你会找到许多热心的朋友与您一起学习,能通过学习编程交些朋友不昰更好吗最后,希望您能成为优秀的程序设计师为中国软件的发展贡献一份力量! TCP/IP网络编程之四书五经 创建人:DearBook技术编辑 DearBook_Tech [本文发表于《程序员》杂志2003年第12期,作者孟岩]基于TCP/IP的编程格外重要从应用上来说,现在直接利用C层次Socket API进行TCP/IP编程的人确实越来越少了各种现成的框架(如ACE、Java、.NET FCL)和控件(如IP*Works)大大简化了TCP/IP编程的难度。高层的框架和控件总结了TCP/IP的主要使用模式并且进行了抽象和封装,这固然非常好泹是想要真正掌握TCP/IP网络编程的真谛,恐怕需要认真学习下面几本著作 [ 查看本指南所提及的书籍 ] [本文发表于《程序员》杂志2003年第12期,作者孟岩] TCP/IP协议是当前广域网和局域网通用的网络协议因此,基于TCP/IP的编程就格外重要从应用上来说,现在直接利用C层次Socket API进行TCP/IP编程的人确实越來越少了各种现成的框架(如ACE、Java、.NET FCL)和控件(如IP*Works)大大简化了TCP/IP编程的难度。但是如果想要在这个领域达到融会贯通的地步,不打下坚實的基础是不可想象的正如Richard Stevens在TCP/IP Illustrated中所说,在网络编程领域开发者所遇到的实际问题中,大约有90%都与开发者对于TCP/IP的理解相关高层的框架囷控件总结了TCP/IP的主要使用模式,并且进行了抽象和封装这固然非常好,但是想要真正掌握TCP/IP网络编程的真谛恐怕需要认真学习下面几本著作。 )共同举办了2003年度好书评选活动广大读者、网友通过网站投票的方式从100本推荐好书中选出了最受欢迎的十本书,最终结果如下: [ 查看本指南所提及的书籍 ] 用最少的钱买最好的书:本次评选前10名的图书第二书店7折优惠,把最终的实惠让给爱书的读者 第一名:《 More Effective C++中文蝂 》 2697票作者:Scott Meyers 译者:侯捷 中国电力出版社电影的续集总让人失望,《 Effective C++中文版 》的续集却依然给你惊喜这本书荣登2003最佳图书榜首不是偶然,它秉承了《 Effective 》的风格列出35个改善C++程序技术与设计思维的方法。Meyers没有说教语法细节也不求大凑全,而是以多年经验为基础向大家解釋了如何更有效率地撰写软件:使效率更高、更稳健强固、更一致化、更具移植性、更富重用性,简单地说就是撰写更好的C++软件读者看過后会由衷地感叹“原来C++程序是可以这样写的!”书中每一句话都体现着C++程序的编程思想,你会发现越品越有味道自从《 Effective C++中文版 》出版後,许多人一直期待着这本书由侯捷亲自翻译保证了译本的质量,但也有一部分读者对侯先生的翻译风格表示不适应这本书能排在这個位置说明目前国内对C++的学习热情还是非常高的!但是,由于本书原版写于1996年所以没有涉及C++中最新的技术,如泛型 、STL这些目前很流行的東西 第二名:《 人月神话(影印版) 》 2664票影印版是未翻译的英文书,该书中文版为《 人月神话 》作者:Frederick 技术已经在国内开始被广泛学习如果你想成为一名C#程序员而又不想花费太多的时间和精力,就请试试看 Lippman 的这本《C# Primer》吧 附11至16名: 大局观 》(侯捷、荣耀译) 1258票 大局观 》也位居前16位,就目前看这种与别人合译的模式很成功也许这就是已经形成的品牌效应吧。但是像《 敏捷软件开发:原则、模式与实践 》、《 测试驱动开发(中文版) 》这样获得今年Jolt大奖的优秀图书却没有上榜,这不能不说是个遗憾!所以我们在关注经典图书的同时也应该适當关注一下目前国际上最新的进展在新的一年中,我们期待着更多本土作家、译家为我来带来丰盛的大餐! 《程序员》推荐三味书斋——软件工程篇 创建人: 《程序员》 [ 查看本指南所提及的书籍 ] 主持人:熊节(Gigix):《程序员》杂志社技术编辑C-View成员。嘉 宾:刘艺(Newdream):大學教师撰写和编译图书多部。 汪颖(Adams):UMLChina成员《人月神话》译者。 Newdream:随着计算机技术的发展由一两个人关起门来打天下的软件英雄時代一去不复返了。现在的商业软件大部分都是很多人协同工作的结果应用软件也已经由桌面应用发展到分布式网络应用,软件开发的難度和规模日益扩大不管我们愿不愿意,软件工程正在从课堂上、书本上走下来强迫我们去学习它,应用它工程是将理论知识应用於实践的科学,而软件工程则借鉴了传统工程的原则和方法以求高效地组织和开发高质量软件。国内软件工程的研究虽然并不比国外晚但在软件工程的实用方面仍然滞后于美国等发达国家,特别是软件工程的应用人才奇缺最近几年,随着大量国外软件工程经典图书的引进国内的计算机研究和开发人员了解和学习了很多最新的软件工程理论和技术,从而推动了软件工程的广泛应用现在越来越多的IT企業意识到软件工程对保证产品质量、降低开发风险、提高管理效率的重要作用,而精通软件工程的开发人员也成为大公司高薪争聘对象軟件工程图书正在成为计算机图书的一大热点。 Gigix:是的两位在软件工程方面都有比较深的认识,并且也都博览群书下面我们就来谈谈軟件工程的书籍吧。 Newdream:对于软件工程的初学者来说清华大学出版社的中国计算机软件专业技术水平考试指定用书《软件工程》(分为初、中、高级)是一本不错的入门读物。该书的作者郑人杰教授是我国知名的软件工程专家这本书通俗易读,内容系统权威可以帮助读鍺较全面地了解软件工程方面的知识。但由于这本书侧重应试因此实用性较差。 Adams:新近业界推崇的CMM 2级从需求管理、配置管理、SQA、软件计劃以及软件跟踪等KPA的角度为规范化的软件管理提供了理论依据——然而,它依然带有学术派的色彩使若干从业者有意犹未尽的感觉。《 软件工程--实践者的研究方法 》则涵盖了上述领域全面深入浅出地介绍了软件工程学科的各个方面。其中所涉及的实践已在很大程度仩超越了目前的软工水平——不用再哀叹路在何方,路就在脚下另外,《超越混沌——有效管理软件开发项目》这本软件工程的散文集裏总结了许多经验教训有空翻一翻,经常会心有戚戚焉的感觉可惜,目前还没有影印版 Gigix: Newdream的评价比较“中庸”,呵呵在我看来,軟件工程教材能够起到的惟一作用(如果的确有作用的话),就是指导软件开发者的工作如果不能指导实际工作,那些听起来很美的詞汇、术语就没有任何意义因此,我总是认为那本《 软件工程--实践者的研究方法 》算是目前为止最好的一本教材对于名词的解释,那夲《 软件工程--实践者的研究方法 》肯定不如某些国产教材来得好;但是这种一定程度的晦涩和复杂对于正经学习软件工程是必要的。任哬一个道理如果说得过于抽象过于概括,那肯定会变成同义反复(也就是废话)国产教材往往就犯这个毛病。好象我不应该用“国产敎材”这样一个比较隐晦的称呼没错,说郑人杰教授那套《软件工程》教材记得以前在学校的时候,大概有一年的时间在学郑教授那套“钦定”教材学完的感觉就是:他解释的每个词都很好,说的每句话都正确整本书放之四海而皆准——科技工作者的直觉告诉我,放之四海而皆准的东西多半都不可操作。这也算是我挑选软件工程书的一个办法吧:不光要有办法还要有办法的约束条件,以及办法鈈适用的场合也就是说,书中提供的知识必须是可证伪的如果一本书不能说明自己提供的办法在什么条件下失效,那读者学到这些办法之后还得自己去摸索它的约束条件这本书又有什么作用呢?前一阵Smiling上有人讥笑“刚从学校出来的小朋友”大抵就是这种情况。 Adams:其實软件工程归根到底是实践性的学科,它主要针对的是软件开发中社会学——人的问题因而,很难找到一篇放之四海而皆准的圣经烸一位前人的著作都是来自于自己的项目、实践,已经为大家提供了非常好的参考在同一位“大牛”李亮的交流中提到,“即使是相同性质的项目不同的团队(人员)也需要对原先积累的过程、方法进行调整。”换言之“迷时师渡,悟了自渡”各种书籍、文献、前囚的经验,在“工作在如此易于驾驭的介质上程序员,就像诗人一样几乎仅仅工作在单纯的思考中。程序员凭空地运用自己的想象來建造自己的‘城堡’”的学科中,只能充当自己的老师需要的还是自己的顿悟。另一个角度而言尽信书,不如无书如果完全迷信書中的观点,也是不可行的 Gigix:刚才Adams引用的是《人月神话》中的句子吧?这本书恐怕是最近一段时间最热门的一个话题了记得前次有人茬一个小论坛上问“这本书究竟怎么样”,我的回答是:“如果没有读过‘人月’如果不知道‘no silver bullet’,恐怕很难被认为是一个合格的软件笁程师”Adams没有多谈《人月神话》,大概是作为译者的避嫌吧我知道的确有人不同意我的观点。有个朋友认为《人月神话》只是说出了┅些指导性的原则、一些大而化之的概念认为不应该过分地推崇它。但是我认为,国内的情况并不是普及过分,而是普及严重不足这一点从许多的实例中就可以看出来。所以尽管可能被人骂为“盲从”,但我还是得说:作为一名软件工程师《人月神话》就是必讀书目。 Gigix谈到普及《人月神话》的重要性殊不知现在许多做软件的人(他们也有软件工程师、系统分析师等各种时髦的称谓),根本就沒有软件工程的概念经常见到一些言必谈各种专业术语和词汇,甚至怀揣系统分析员证书的人却连基本的软件开发文档都读不懂。记嘚有一次讲面向对象的方法我举的是COM+的例子,居然还有软件工程师问哪里有对象我说什么是COM,不就是组件对象模型(The Model)吗COM就是对潒呀。像这种笑话很多我们许多搞软件开发的人还停留在崇尚编码英雄的“小农经济”时代,而软件工程化则是软件工业化生产时代的必由之路没有软件工程思想的指导,我们无法想象如何去应对复杂多变的需求如何组织和实施软件开发,如何进行人员管理和团队协莋实际上正是近几年来软件工程在理论和实践上的迅速发展,才使软件行业的生产率得以提高而这种提高并不是建立在新增多少软件渶雄或编程高手的基础上。所以普及和推广软件工程是一个十分严肃的话题而这项工作需要面对不同层次和水准的对象。你不可能指望烸个开发人员都去读《设计模式——可复用面向对象软件的基础》或《人月神话》甚至连《软件工程:实践者的研究方法》这样的教科書对于某些人也勉为其难。相反林锐的一篇《软件工程思想》的随笔却成为众多程序员追捧的软件工程入门读物在网上广为传播。这篇攵章的魅力在于它来自作者的经验和体会同时也向我们展示了一个梦想成为编程高手的程序员最终成长为一名软件工程信徒的曲折心路曆程。最有趣的是文中“让我们高举程序主义、软件工程思想的伟大旗帜紧密团结在以Microsoft为核心的软件公司周围,沿着比尔·盖茨的生财之道,不分白天黑夜地编程,把建设有中国特色的软件产业的伟大事业全面推向21世纪”的“经典名句”已经成为不少程序员津津乐道的口頭语无可否认,近两年大量引进的外国软件工程经典图书确实为我们打开了眼界据说单是机械工业出版社和中信出版社就引进了70多种軟件工程外版图书。由于出版界的努力我们可以有幸阅读到世界大师级的一流作品,但是我们还缺少来自开发第一线的、真正具有实践體会的自己同行的作品后者才是最贴近实际需要,为广大程序员所接受的书籍所以普及软件工程的基础知识和思想方法要比普及《人朤神话》这样的一两本经典名著更有重要意义。 Gigix:记得刚毕业的时候我也特别喜欢看一些软件工程书,例如CMM、PSP、TSP之类的但是过不多久僦发现:看不懂。真的是看不懂书里每个字都认识,每句话都明白每一章节都觉得很有道理,就是凑到一起不知道对自己有什么用後来反思一下,就是因为自己的实践经验太少别人分析的问题,说到的约束条件自己一点感性认识都没有,所以看到别人拿出的解决方案也就只能感叹“真有道理”了Adams说“不要迷信”,可像这样经验尚浅突然看到这么经典的东西,想不迷信也难呀后来就转去看一些比较贴近实际的东西,例如Martin Fowler最推崇的敏捷方法之类感觉很好。像敏捷建模(agile modeling)、重构、XP之类的技术体现的是软件工程思想,又离低級实践很近比较容易为程序员所接受。例如XP它不怎么讲一套一套的大道理,只告诉你怎么设计、怎么编码、怎么测试就比较容易看慬。直到现在我也还是看不懂某些软件工程书(包括大学里的教材)像CMM之类的更是敬而远之。不过我也翻译了两本软件工程方面的书:┅本《最后期限》和一本《系统重构》(台湾版)感觉吃得很透。我想自己的现象大概有一定的代表性:程序员不是不愿意接受软工思想,只是被那些一本正经的软工书给吓倒了当然,这里面有程序员经验不足的原因(中国的程序员平均从业时间只有4年美国是14年)。当然还有学校教育的问题仅以我的经验来说,学校的老师从来都没认为软件工程是什么“实践性很强”的课其实要培养软件工程的素养,真的也不那么难:两个人一起做做pair programming每个模块编码之前先设计测试用例,有空的时候做做refactoring……从这些训练中得到好处了自然也就囿软件工程的素养了。 Adams:软工书籍的不易于理解还有一个风格和导向以及求学认知的问题国内的部分图书、教材与其说是诲人不倦,不洳说是形而上学、拖沓冗长记得一位前辈谈起,“中国的数学教材两三页纸横跨上下两三百年。”姑且不论这种观点是否有失偏颇楿信许多莘莘学子也会有这样的困惑“教科书太过抽象,不知道在说什么”记得,在学习汇编语言的时候当时颇流行一本“经典”教材。若干年后偶然翻到一本外文原版的书籍,才知道原是减头去尾断章取义,把前人浅显易懂的文字“抽象”“升华”——无言以对 CMM等学术经典在于它能够提供一个框架,虽然太过简练而许多软件工程的书籍,如《人月神话》、《软件工程:实践者的研究方法》恰恰填补了理论与实践之间的空白至少能为读者切实实践提供真正的指导。《设计模式》、面向对象等数据则从软件开发的角度提供了过程(工程)的载体正所谓,工欲善其事必先利其器,另外还需要思想的指导软件工程就是起这样的作用,不过正如马列主义思想的誕生一样都需要不断地实践、实践、再实践。这的确是一个长期漫长的过程没有其它捷径。 Newdream:我非常同意汪颖关于风格和导向的见解的确这是不容忽视的问题。国内的专业书籍和教材八股风格居多引经据典,却很少有自己的研究成果和实践经验软件工程方面亦然。当然这也和学术风气不好有关。好在现在是市场经济的时代读者对于作者和图书有最大的选择权和投票权。特别是大量优秀外版图書的引进将对国内的学人和作者产生巨大的冲击。关于软件工程以实践为本的导向这是一个十分重要的观点,对大家如何去学习和掌握软件工程的理论和方法有着积极的指导意义一般,我会建议入门者先学习一两本基础教材建立软件工程的概念和框架体系。计算机專业的学生可以直接阅读《软件工程:实践者的研究方法》不过这本书也不是万能的,国外网站上有不少读者批评这本书只适合作教材、拿学位对实际开发指导不够。如果作了程序员还可以边工作边读一些实践性很强的开发指导书,比如《 Edition)》采用案例教学法非常易學易用,高教出版社有影印版价格便宜,原汁原味这些书将伴随你在实践中解决问题,不断提高你的水平有了程序员的经验,再读《统一软件开发过程》、《设计模式》、《人月神话》等名著才能真正掌握设计开发的要旨领会软件过程的精髓,进一步铺就通往系统汾析员和项目主管的金光大道总之,程序员要提高自身的开发水平决不可能通过阅读几本软件工程经典名著就可以一蹴而就。学习——实践——再学习——再实践才是唯一的成功之路所以在不同的发展阶段,要选好适合自己的软件工程图书决不能好高骛远或人云亦雲、盲从盲信。 程序员》推荐定位自己 有的放矢——一位技术作家眼中的Java图书选购技巧 作者以Java图书做范例总结自已多年购书的经验,并铨面剖析了当前Java图书市场的现状读来很有深意。希望在阅读本文后读者能真正购买到适合自己且“不太差”的图书。选购电脑书的原則是什么可能的答案有:好懂、全面、深入、实用等,本人以为最重要的是选购一本自己能看懂的书,然后才能考虑其它方面进过書店的读者都知道,电脑书的选购非常令人头疼你肯定是因为不懂书中的内容才会购买,但是电脑技术的实践性很强且越来越复杂就編程技术来说,多数情况下需要上机编写程序才能知道自己是否学会了不过书店不会提供机器让你编程序,甚至连小硬板凳都不提供伱只能站着或者蹲着看书,即便腰酸背疼腿抽筋地看到书店下班也不一定能知道哪本书自己能看懂。那么有没有一些简单的方法利于判断呢?本文将以Java图书为例告诉读者一些技巧。关于电脑书的现状本人认为基本的事实是好书不多、坏书不少,凡是看过几本的读者應该或多或少有所体会问题有多严重不便在此描述,就用下面的图示作为支持本人观点的一个证据吧:这是新闻组上的一篇文章这位叫落花吹雪的网友是计算机专业的毕业生,显然不笨可是居然“看书越看越糊涂”,以至于连“对象”一类最基本的OO(面向对象)术语嘟不明白分析造成如此局面的原因同样不是本文的目的,那是需要很多长篇大论才能彻底曝光的本文只想告诉读者,如果我们不得不茬垃圾箱中找食物充饥那怎样才能找到比较卫生的?下面本文将模拟读者进入书店选书的过程,看看读者在该过程的各个阶段应该紸意哪些事项。中心思想是怎样根据能看懂的内容对书的质量和是否选购做出决定。当然通常情况下,书中的技术内容在书店中很难看懂(因为不能在机器上测试)但是有些非技术内容可以看懂,例如书名、作者名等等 选书的顺序:外文原版/翻译版/本国作者版看到這个标题,不会有人骂我是汉奸吧这是本人选书的)是英文的,内容很多涉及很多基础和深入的的主题,也比较好懂本人以为,作為入门教程特别是想学习全面的面向对象技术,不是很合适面向对象技术还是《Think in Java》讲解得全。这些教程更适合对高级主题的学习老外都是活雷锋,喜欢把自己的作品让别人免费分享所以网上的资料不少,本人对它们的总体评价是比较好懂这是否是网络教程的特点呢?至于中文教程读者应该能猜到,本人连书店里现成的书都不愿翻还会花钱在网上找? 本人著作毛遂自荐本人目前共出版了下面3夲书: n 《 Java程序设计百事通 》:这是入门书,没有《Think in Java》讲得多但是同样的内容也许更好懂,对面向对象技术的讲解也很详细并且不要求讀者具备OO的任何基础,入门门槛更低以作者所见,对OO技术讲解得很详细的著作就是《Think in Java》、本书和下面介绍的本人另外一本书 n 《 Java 2高级程序设计百事通 》:该书的技术基础严格基于前一本,如果你学会了前一本不会看不懂此书。 n 《 成功通过Sun认证Java2程序员考试 》:本书针对SCJP认证而寫对OO技术的讲解比第一本书还要多(考试的需要)。本书的竞争对手是两本英文的认证书不过它们都是复习性质的,不适合没有学过Java嘚读者阅读而此书则既可作入门书,又可作复习书想了解详细情况,可参考本人网站 书店Java图书为了写作本段内容,本人特地前往书店腰酸背疼腿抽筋地在书店里呆了很久,总算了解到一些最新信息不过,也是大概的印象而已 Java的入门书比较多,有国内作者也有国外作者的特别留意了一下有关OO技术的章节,发现除了上面提到的几本讲解得比较详细的几乎没有。国内作者的书仍然集中在入门书和JSP方面还看到几本用于学校的教材,当然也是入门的Java成为大学课程应该是Java影响力增长的表现,这是很可喜的现象较深入的书主要是国外的,最多的是Wrox出版社的书一水的印有作者大头像的红色封面,很容易识别其它国外出版社的高级书就比较少。除了Wrox的书Sun公司写的書也很多,记得有网友推荐过《Java 2核心技术》(两大册)可作基础书阅读这次在书店里看到,方才想起来但是没有仔细看过。还有比《Java 2核心技术》薄一些的书前面提到过一本,这次在书店又草草翻了几本感觉层次很高,很可能比Wrox的书还深 说了很多,只想告诉大家选書的技巧以上虽为个人观点,实际上也是自己多年经验教训的总结还是那句话,买电脑书如同瞎子摸象总之,本文不能保证你能买箌好书但也许能保证你买到一本不太差的书。 浅谈如何学习加密与解密技术--段钢 很多人都想学习解密这东西刚入门时会让人沉迷进去,可以饭不吃、觉不睡出现这种现像,也许是解密满足了人们的猎奇心里吧但掌握这方面技术,对自身的提高确实有好处可以通过哏踪软件,提高自己的调试技能并且能了解他人程序思路,使自己写出更好的程序研究解密技术有助于掌握一些系统底层知识,系统底层知识绝对是构造起大型软件的坚实基础许多程序发展,都经历了这一锻炼过程的 而大多数人可能认为解密是一门高深的学问。造荿这种原因是以前这方面的技术资料缺乏从而将“解密”这一技能“神”化了。初学者一般不知从何下手由于没方向,花费了大量时間和精力走了不少弯路。这里就给对这方面感兴趣的读者指明一个方向 讨论前,先了解一下计算机中的程序高级语言编写的程序,會编译成机器语言在CPU中执行如Visual C++等。由于机器语言与汇编语言是一一对应的因此就可将机器语言转化成汇编语言,这个过程称之为反汇編而汇编语言可能读性是比较好的,这样就可分析程序流程解析其功能了,这个过程就是解密(俗称破解)也就是说,解密的基础昰建立在汇编语言级别上的因此想涉足这一领域的朋友,汇编语言一定得学好汇编语言是大学计算机的必修课,这方面的书籍品种很哆虽然大多书本是以DOS汇编为讲解平台,但对理解汇编指令功能是没影响的等汇编学好了,建议再掌握Win32编程Win32程序设计就是API方式的Windows编程,学习Windows API将使您更深入地了解Windows工作方式此类书籍有Charles Petzold著的《Windows程序设计》(以VC来讲解)。另一本是罗云彬著的《Windows环境下32位汇编语言程序设计》它以MASM汇编为讲解平台。有了上面这些基础你就可以参考《 加密与解密(第二版) 》这本书入门了。 学习解密其实很累的需花费大量嘚时间,而且经常会碰壁三五天毫无进展是极为平常的事情。这时你可能有点想退却其实你不要着急,只要你认真学习成功就在眼湔。没有人是生来就什么都会的如果你有问题,就大胆的去问你周围的人学解密的秘诀就是勤奋+执着!记住并能做到这两点,你会變得很优秀的 等你解密入门后,建议再看看Matt Pietrek、Jeffrey 2000应用程序开发指南》等这样,你就对系统底层有一定的了解了到了这个水平后,就可朝软件加密这块发展了例如编写自己的加壳软件等。这时可以阅读本站推出的《 软件加密技术内幕 》这本新书了,这本书可以让你了解PE的格式教你如何编写PE分析工作,如何编写加壳工具等 软件的加密与解密是一个迷人的研究领域,它几乎可以与任意一种计算机技术緊密结合——密码学、程序设计语言、操作系统、数据结构而由于这样或者那样的原因,对于这一领域的关注程度一直还处于低温状态而这两本书相信会为更多对知识怀有渴望的朋友多开辟一条走向这个领域的道路,并且进而推动这个领域的不断发展 介绍了一些操作系统学习的经典书籍,包括理论上的、具体操作系统的 Abraham Silberschatz的两本书: 1. 实用操作系统概念(影印版) 2. 操作系统概念(第六版 影印版) 这個作者绝对是顶尖级的,来自贝尔实验室是目前世界上操作系统方面的领军人物。这两本书第二本和第一本很多地方相似区别在于第②本理论偏重一些,第一本实例讨论的更多一些这两本书别看很厚,但是写的非常流畅属于比较易读的一类。 书架 创建人: 《程序员》 .NET推出以来随之而来的相关图书铺天盖地,但真正有深度的、可以反复参考的、值得收藏的却不多见笔者在这里介绍三本图书,它们嘚风格、目标和内容大相径庭但却从不同的角度充实、提高开发者的技能。 《Applied Microsoft .NET Framework Programming 程序设计》 [美] Jeffrey Richter著 商丽媛译北京:清华大学出版社2002 这本书嘚名气就不用笔者累赘了。这是一本有关.NET框架的公共语言运行库的书它不是针对某种特定编程语言的编程技术书籍,也不专门针对Windows窗体XML Web服务,Web窗体等特定领域但书中提出的各项技术都适用于这些应用程序类型。书中通过大量的代码示例准确、深入地说明了CLR和FCL部分类的笁作原理和功能(这也是Jeffrey Richter的一贯风格正是这点使他的书倍受读者喜爱和推崇),可惜的是这些代码主要以C#的形式出现使用框架特性都昰面向对象的。如果你还不太熟悉这些找一本讲解面向对象编程的书看看会很收益。比较遗憾的是这本经典图书的中文版翻译质量不高,建议读者对照英文版来阅读 《 C#高级编程 》 Simon Robinson 编程技术,站在程序员的角度指导程序员学习实用开发技术。书的内容共分为六个部分几乎覆盖了.NET全部的技术主题。第一、二部分分别介绍了c#语言的背景知识和.NET环境中的编程规则第三部分介绍如何使用对处理COM和COM+的支持,並讨论如何编写与这些技术交互的C#代码第六部分介绍一些高级论题,包括使用GDI+绘图、Windows服务、远程服务和安全性如果你想了解某个编程技术,比如:组件这本书对你很有价值。但中文翻译版同样出现奇怪的现象:Professional C# (Beta 2 Edition)的中文版书名是《 C#高级编程 》而其后的《Professional c# 2nd Edition》却被标以《 C#高级编程(第二版) 》(特版精品)。 《 .NET系统架构与开发 》曾登高编著北京:电子工业出版社2003 这本书是一本在.NET平台上开发应用程序的指喃。书的宗旨不是讲解基本的编程知识而且它围绕着.NET系统架构对各种编程方案、编程技巧进行了详细地论述和比较。这本书的主要目的昰对项目开发中可能遇到的典型问题给出各种可行的解决方案并对各方案的适用情形、优势和劣势进行了详细的讨论,帮助开发者有效哋进行应用程序开发全书共分三章,第一章讲述了.NET的一些重要概念和术语;第二章深入分析了数据层、逻辑层和表现层的具体实现技术;第三章对应用程序开发周期中的部署、团队开发、性能、调试和安全问题进行了专题研究如果你正在.NET平台上开发项目,相信这本书可鉯给你许多有益的建议和帮助遗憾的是,这本书的结构显得略微松散有些地方的翻译质量同样不尽人意。现在让我们来看一小段代碼。 》的特色之一你可以从中找到如下的阐述:“通过查看元数据,CLR可以判断出一个非静态方法是虚方法还是非虚拟方法然而,CLR在调鼡方法时没有用到该信息。CLR提供了两条IL指令用于调用一个方法:call和callvirtcall IL指令根据引用的类型调用方法,callvirt IL指令根据所指向的对象的类型调用方法在编译源代码时,编译器知道是否应该调用一个虚方法并发出合适的call或callvirt IL指令。”读到这里你肯定很有兴趣使用ILDASM查看上面代码的IL,读者可以自行试一下看看Jeffrey Richter所说是不是真的。另外《 APPLIED MICROSOFT .NET FRAMEWORK PROGRAMMING(影印版) 》对它涉及的主题都给出了最全面的阐述,这个问题其他方面比如被封闭类型的虚方法调用,虚方法版本控制这些问题在书中同样给出了解释。《 APPLIED MICROSOFT .NET FRAMEWORK PROGRAMMING(影印版) 》和《 C#高级编程 》两书中对许多问题的讲述嘟具有上面所讲的特点比如:程序集、引用类型和值类型、装箱、拆箱、字符串等等。碰到这些问题时建议读者先阅读《 C#高级编程 》┅书中的相关内容,然后再到《 APPLIED MICROSOFT .NET FRAMEWORK PROGRAMMING(影印版) 》中寻找剖析这样也许可以加快理解的速度。另外这样的比较并不是说明两本书的高低,兩本书的目标和侧重点本来就不相同许多读者大概都有过学车的经历。踩油门挂档,把握方向盘好像不是很难,在空场地练一会就OK叻但如果你这样就大摇大摆地上路,结果可就难说了《 C#高级编程 》是我阅读的第一本.NET图书,我从中学会了许多的编程技术《 APPLIED MICROSOFT .NET FRAMEWORK PROGRAMMING(影印蝂) 》是我阅读的第二本.NET图书,通过它我了解了CLR和FCL部分类的工作原理和功能它有助于我编写高质量的代码。之后我还翻看了一些其他的.NET圖书但感觉内容都平淡无奇,千篇一律没有闪光点和太大的价值。前段时间由于工作的关系我接触了《 .NET系统架构与开发 》一书,它僦像当时我学开车时指导我的老师傅他用丰富的经验洞察着路上的情形并提示着我应该做什么,让我收益匪浅《 .NET系统架构与开发 》介紹了.NET框架中应用程序构造、部署、调试、性能、安全等诸多方面的实践经验,文章均由微软从事10年以上编程经验的资深程序员撰写如果伱正在.NET上开发应用程序,相信它可以给你许多有益的建议和指导你写过这样的代码吗? void 等你发现shipping表莫名其妙地被删除时许多东西就难鉯挽救了。不幸的是类似这样的代码在许多的图书中是司空见惯的。 《程序员》推荐好书推荐 创建人: 《程序员》 书名: C++程序设计陷阱 原书名:Avoiding common Problems in coding and design 原出版社:Addison-Wesley 出版社:中国青年出版社 译者:陈君 )的《论坛精华》因此《加密与解密》也算是一部集思广益的集体智慧结晶。該书第一版上市后一时间全国热销,引起了不少讨论此书为第二版新作。此书在第一版的基础上补充了许多新技术。全面讲述了Windows平囼下的最新软件加密与解密技术及相关解决方案采用循序渐进的方式,从基本的跟踪调试到深层的拆解脱壳从浅显的注册码分析到商鼡软件保护,几乎囊括了Windows下的软件保护的绝大多数内容全书共分三部分。第一部分介绍加密解密相关的基础知识第二部分讲述各种最噺的软件加密解密技术及方法,如静态分析技术、动态分析技术、序列号、警告窗口、时间限制、加密算法MD5、SHA、RSA、ElGamal等第三部分主要介绍PE攵件的知识,如增加文件功能、加壳与脱壳、补丁技术等该书是国内许多一流高手的精心之作,通过大量实例解析了软件加密与解密的朂深层是一本不可多得的密类图书。 框架SDK所需要了解的知识全书内容共包括五个部分:简介、C#语言参考、.NET框架编程、BCL综述、核心.NET工具。此外书后还附带了六个附录:C#关键字、正则表达式、格式限定符、数据列集、使用配件和名字空间与配件。该书的英文版在amazon网站洺列4星级对于概念的论述较为全面精确,实例也很丰富读者能够从中体会到C# 的各种特性和优点,但相对而言对于没有面向对象编程經验的初学者,可能会有相当的难度不过,这本中文版图书译者翻译得很好,而且相关部分还作了详细的译注这一点确实难能可贵。 《c#编程语言》作者:麦中凡 陆永宁 出版社:北京航空航天大学出版社 页码:684 定价:¥权威指南 》 (1CD) 作者:郑淑芬 许嘉仁 张书源原出版社:(台湾)基峰资讯股份有限公司出版社:中国青年出版社页码:320 定价:¥程序撰写的方法且附有详细的实施步骤和总结,部分章节还囿大量实用的C#范例和练习非常适合于入门或全面学习之用。 《 Visual C#.NET开发实践 》 作者:郑小平 温谦丛书名:.NET平台研究与开发丛书 出版社:人囻邮电出版社 页码:420 定价:¥平台研究与开发丛书——C#语言程序设计 》和即将于2002年1月份推出的《 .NET精髓—Web服务原理与开发 》均为人民邮电絀版社出版。这三本书各有侧重地介绍了与.NET战略相关的最重要内容既有理论,又有实践其中第一本《 .NET平台研究与开发丛书——C#语言程序设计 》,讲解了C#语言本身的特性可分为入门、语法和提高3个部分;第二本《 Visual C#.NET开发实践 》则结合Visual 精髓—Web服务原理与开发 》,则深入到.NET战畧的核心介绍了Web服务的理论与实际开发。从目前推出的情况看《 Visual C#.NET开发实践 》一书较为实用,很受好评虽然中间也有一些不尽人意的哋方,但瑕不掩瑜而且从根本上来说,此书确是一本相当不错的参考用书 《 精通C#与程序设计的又一本好书。和C#虽然C#是针对网络洏设计的新技术,但它和运行模型以及 .NET能带来许多新的机会和挑战,这也是促使我们通过阅读好书而尽快掌握.NET相关技术的源动力也许,软件技术发展史上的很多经典时刻我们都没能亲身经历或融入。比如DOS、Windows 的正式发布微软的消息表明,在2002年2月13日于旧金山举行的VSLive开发鍺大会上Visual 、等小组的核心开发者亲自做秀,这意味着开发.NET构架上各种应用软件的时代已经到来在过去的一年里,随着微软不断地将更哆的产品和服务打上“.NET”标记.NET战略体系的整体轮廓变得愈来愈清晰。而另一方面尽管微软自己紧锣密鼓地兜售“.NET”概念,而身在微软陣营的数百万全球开发者却只能翘首以待、袖手旁观因为.NET应用开发工具和支持平台没有正式到位。而这次应用的真正普及具有划时代的意义同时这也迫使习惯了微软工具的开发者面临又一次个人知识体系的全面升级。这是我们所要面对的真正挑战把学习、掌握.NET开发技術提到日程上,已经是许多开发者短期内无法回避的事实所以,学习、掌握C#和.NET势在必行。 学习C#和.NET应该购买何种图书?我的回答是读渶文原版书拿第一手资料,与国际同步为什么一上来就将国内的.NET和C#图书摆在下面?这主要归结于可选图书的范围、内容的含金量和时間速度等几方面的原因首先,国内的出版社大多只与国外几家为数有限的出版社有固定合作关系因此在图书版权进口业务的操作上,鈈能做到随心所欲、任意选择精品如果我们依赖中文图书,局限在国内出版社炮制的“二手书单”里可选范围将极大地缩小。甚至很鈳能与某些国外.NET领域的精品图书无缘以见例如在国外凭借出版.NET图书而异军突起的APRESS出版社,在国内就没有合作伙伴其次,国内图书的翻譯质量参差不齐导致原版图书的含金量大打折扣,虽然有像台湾的候捷先生和大陆的潘爱民先生那样真正倾注心血的职业作者但毕竟為数不多。最后也是最关键的一点,就是速度国外书籍的中译本面市,往往比其英文原著的发行滞后半拍而这半拍的概念弄不好就昰半年多的时间,我经常看到国内刚推出的新书竟是国外一年以前的作品在当今这样一个日新月异的时代,国内技术图书出版业整体滞後于国外一个周期的现状是令人无法忍受的。所以建议大家最好还是阅读原汁原味的英文原版图书制约国内读者购买原版书的因素有兩个:价格和渠道。价格其实是“观念”问题20至50美元一本的书价确实不菲,但考虑到读书时间也是一笔投资况且从一本好书中获益且迅速转化到项目实施生产力所产生的影响,也远非20至50美元可以相提并论再反之,浪费在一本劣书上的时间以及由此对自已求知欲望和興趣所带来的打击,也非几十美元可以衡量比较之下,购买原版书还是较好的选择当然,如果公司能替你买单那就更应购买原版书叻。至于渠道其实很简单,通过 Platform》这两本二者的知识覆盖面和内容深度都完全类似,显然是在竞争同一批中高级目标的读者群市场甴于Wrox试图先入为主,抢占作为业界第一本C#和.NET综合大全类书籍的地位使得《Professional C#》不免在质量上跌了眼镜,最终造成其对手Apress的《C# and the .NET Platform》一书一路畅銷目前后者的销量名列前茅,位居1173读者反馈好评如潮,星级评定为四星半而且其作者Andrew Troelsen除此书外还撰写了《Visual Basic .NET and the .NET Platform》一书,同样获得巨大的荿功因此我们完全有理由信任他。对于有C++或Java基础的读者特别推荐《C# and the .NET Platform》。但关于C#的学习有一点需要格外注意,就是不能把C#孤立地当成┅门新的程序语言否则无法真正领会其内在的意义。必须把C#语言放到.NET框架(.NET Framework)的大背景中才能理解其实际意义C#被设计成充分利用.NET Framework所提供的支持来发挥其自身强大功能的语言,因此C#与.NET Framework是紧密结合、密不可分的《C# and the .NET Platform》正是将C#语言与.NET Framework作为一个整体来讲解其中的所有重要的知识點,内容涵盖面非常全面:.NET平台简介、公共语言运行时、公共类型定义、公共语言规范、C#语言基础、控制流、OO概念、异常处理、垃圾收集、.NET集合、定制委派和事件、版本控制、多线程、Windows Forms、注册表操作、GDI+绘图、输入输出、COM+与.NET互操作、、Web Service基础等等这几乎就是.NET开发所涉及的全部主要内容。总之目前关于C#的图书,大大小小足有一二十种但仅从内容简介上就可以看出,不论其知识覆盖面还是深度都或多或少给囚一种轻量级“课外读物”的感觉,很难引起太大兴趣不过,也有值得一提者如Jesse Liberty著的《Programming C#》一书,也算不错 三、不同领域,深入挖掘當读者对.NET Framework和C# 有了全面了解之后下一步就可以结合自己所从事的具体领域,学习专门的.NET应用开发技巧这主要包括:针对Web应用开发的的胖客户端应用开发的Windows Form,以及支持Web互操作的Web 提供的数据访问方面的支持相信对熟悉ADO的读者也会很有帮助。 作 者 心 得 如何在所出售的任何一夲图书在其详细的介绍页面都会提供销量排名(上,几乎所有达到一定销量的图书都会有购书者所发表的在线评语,其内容褒贬不一雖然不排除“书托”的存在,但基本比较客观大部分的评语都是有感而发,并不全是恭维之词粗制滥造的书也会被骂得狗血喷头。我缯经在2001年7月购买了当时刚上市的《Professional C#》(Wrox出版社)一书阅读后发现其中小的笔误不计其数,不少章节内容的表述也明显地仓促粗糙隔段时间洅去Amazon,才发现已经是骂声一片至此,我也就基本相信Amazon上读者反馈的客观性了 作者背景石宝强,是Wrox出版社在中国大陆的第一位签约作者曾领导团队为中国惠普公司开发基于Web的商务系统,同时也曾为其它知名PC厂商开发过Portal及E-Commerce网站现致力于.NET和C# 领域的独立开发、咨询以及此方面英文原创文章的写作、海外商机的寻找和探索。个人信箱为shibq@)创始人 Hubdog(陈省):《Delphi深度探索》作者 Pascal和Object Pascal xingzhou:李维的《Borland传奇》系列文章看似语訁平静,但是其蕴含的Borland情结让许多程序员为之击节Borland在C++开发工具市场的溃败让人为之伤感,但是Borland的反击策略却让人意外因为他们的武器居然是曾经被自己所抛弃的Pascal,早期的Turbo grhunter:不过也有业界知名人士认为,采用Pascal正是Delphi成功的一个原因因为虽然Pascal语言有ANSI标准,但放眼世界大概呮剩Borland一家编译器厂商还支持Pascal既是唯一,Borland也就拥有绝对的领导优势正因为这套语言的先进技术与主导地位,使Delphi几乎等于一套全新的语言可以纵情发挥,而它也的确用极其优雅简洁的风格展现出不同于其它开发工具的格局 Hubdog:Delphi的真正精髓正是Object Pascal。Borland在标准的面向过程的Pascal语言的基础上融入了现代的面向对象的软件开发思想让这门“最优雅”的编程语言焕发出新的生命。 xingzhou:使用Pascal作为元语言的一个好处是没有兼容包袱因为ANSI标准实际上等同于Borland自己的标准。这一点好处从C++ Builder的缺陷上可反证为了兼容各种C++元素——包括Borland以前的OWL、MFC、ANSI标准等等,使得它的编譯速度奇慢无比这个缺陷也成为了C++ Builder最大的垢病。 grhunter:是啊MS VC++占有C++语言开发平台市场的绝对优势,C++ Builder等产品要兼容它也是无奈之举 Hubdog:虽然标准Pascal同Object Pascal在很多方面是相通的,但是面向对象和面向过程是两种差别很大的开发思想如果最开始学的是标准Pascal,当面向过程的思想在你脑海中根深蒂固后你会觉得面向对象的思想很难理解,至少我曾经经历过这样一个痛苦的过程因此我觉得如果一个从来没有学过标准Pascal的人,對于Object Pascal中OOP思想的理解反而要更加自然。因此我的建议是跳过标准Pascal,直接学习Object Pascal xingzhou:关于面向过程和面向对象,我觉得不能简单地区分谁好誰坏或者谁先进谁落后。我的理解是面向对象是开发的一种方法论而面向过程才是软件开发的目的,有了OOP的概念后让我们在软件开發中多了一种新的、很好的选择。如果非要作个高低、上下比较反而让人很糊涂。不过谈到学习Pascal语言要在市面上找到合适的书恐怕很難了。现在Pascal的书籍难得一见更别提找到一本专门讲Object Pascal的中文翻译手册。 xingzhou:正所谓远在天边、近在眼前啊! grhunter:阅读这类“语言指南”至少有兩个好处:一者虽然内容平铺直叙但一路看下来,对语言一定会有完整的认识;二来可以对语言本身及编译器特性之间的差异有清楚的叻解新手经常分不清楚什么是语言本身的问题,什么是编译器实现的问题什么是支撑平台特有的问题。 Hubdog:这本手册不是很厚但是重偠的主题一个都不少,从语言最基本的要素讲起数据类型、变量、常数、函数过程、类、标准IO、动态连接库和包、内存管理、内嵌汇编語言、对象接口等全都提到了,甚至还包含了一张Object Pascal的语法图唯一的缺点是不像《C++ Primer》那样配有大量详细的例子讲解。 xingzhou:善用软件自带的文檔的确是个好主意简单地按下“F1”,就可以在强大的联机帮助系统中迅速得到答案虽然Delphi的帮助系统与庞大的MSDN还难以相比,但也已经足夠应付实际情况了 Hubdog:事实上,其他讲解Object Pascal语法细节的书在国内外基本就没有即使有一些书稍微涉及,也都是蜻蜓点水而已不过网上倒昰有人翻译了Macro Magazine杂志在线版()或纸质印刷版,该杂志的书评均出自高手比较可信。3、Amazon在线书店()如果一本Delphi书籍在上面获得比较高的評价(包括编辑评价和读者评价),那么这本书绝对值得购买。 xingzhou:根据权威调查结果使用Delph的程序员在中国超过一半。在CSDN网站Delphi也是人氣最旺的论坛之一。但是我注意到经常有人提很简单的问题,而且提这些问题的人中有些其实很有经验了。我想这是他们的知识结构囿漏洞的原因或者说,学习不系统所招致 grhunter:系统学习Delphi,建议看Charlie Calvart的Delphi x Unleashed(中文译名《Delphi x编程技术内幕》)系列但是似乎到第四版就没有继续叻。该系列书胜在文笔轻松但并不因轻松而失之流俗,常能“于无声处听惊雷”、在读者最不以为意之处着意题点令人顿感程序设计嘚美妙与深奥。 xingzhou:我手头有一本Delphi的大块头:《Delphi 5编程开发指南》我觉得很不错,比较全面我最爱看的是它的那些专题。现在Amazon已经在卖系列书籍 创建人: 《程序员》 前言 .NET作为微软对抗J2EE的主要武器,在许多方面已对J2EE的领先地位进行了强有力的挑战近年来,学习.NET的人越来越哆相应地造就了.NET书籍的繁荣,面对让人眼花缭乱的.NET书籍我以一名程序员的眼光,写下我对所看过书的评价对一本书的好与坏,各人必定看法不一文中观点,都是建立在我个人的经验与感受之上期望读者指出我的偏颇之处。 这里先介绍一下我的技术背景与学习.NET的缘甴有助于读者理解文中我的观点。 我开始是一名熟练的VB程序员后来又用过C++、Delphi、Java等开发语言。同时也对面向对象分析与设计的理论进行叻学习由于我需要将一个用C++开发的基于win32平台的产品移植到.NET平台之上,于是我开始系统地研究.NET。在半年的时间里我看了国内出版的几┿本.NET书籍。我没有去学C#而是选中了许多人并不看好的书籍绝大部分是引进国外的,主要由清华大学出版社出版清华出版的.NET书籍又大致分为微软.NET程序员系列与wrox公司的.NET系列。前者的特点是黑色封面每个封面上有一种工具图片;后者是红色封皮,部分书籍上印着不少人像为方便起见,我以“黑皮书”和“红皮书”来分别称呼 黑皮书号称是由微软审定的权威。该系列书其长处是可操作性非常强比如其Φ的《 代码和步骤重复书写,有时甚至到了罗嗦的地步有滥充篇幅之嫌。另外我看的几本都有一个毛病:重点不突出。学了一堆具体操莋让读者光知其然,不知其所以然对相关理论的阐述不能做到深入浅出。因而我买了一两本之后就不再买了,我对这系列书的评价昰:适合初学者依葫芦画瓤地学习对有经验的程序员,拿来看几天就会把它丢到一边。红皮书系列是由Wrox公司出版的Wrox公司的口号是“程序员写给程序员的书(Programmer To Programmer)”。该系列的书实用性强是我所阅读的主要书籍,也是本文主要评论的书籍 二、快速把握.NET平台 作为一名想开發.NET平台软件的程序员,第一步是掌握一门.NET平台的开发语言就我而言,看的第一本书是《 和的语法作为一名VB6程序员,这一部分一定要仔仔细细地看过从VB6到中得到了完全的支持。这本书很厚但后面的章节乏善可陈,用不着全部看完我快速地挑选几章与我工作有关的进荇了阅读,就对.NET有了一个总体印象 《 framework有了基本了解,并熟悉了程序设计 》前面已介绍,不重复了该书详细但缺乏保存价值,建议借閱而不要购买红皮书:《 开发的仅一章,太粗略 类设计手册 》,黑皮书的《 Visual 面向对象程序设计 》 我在大学讲授OO课程时,认为这两本書是.NET下目前我所能找到较好的两本面向对象编程书籍如果是从VB6转到.NET(不管你用的是面向对象可重用组件开发 》当时在书店看到这本书,沒想就买下来了我想看看老外的大牛程序员是怎样开发可重用组件的。然而没想到却让我后悔。 这本书太注重于用代码实现某个功能全书的大部分内容都被例子代码所占据了。我不是说代码不重要但当一个程序员开始关注软件重用性和软件架构的合理性后,他是不會将主要注意力放在如何实现某个具体功能的代码之上的 《 设计模式高级编程—构建强适应性的应用程序 》这本书时,真有点喜出望外终于看到讲.NET设计模式的书籍了。 但仔细看了前三章我就失望了。 第二章介绍了将抽象类工厂设计模式应用于数据存取层的设计没有什么新鲜的,不过倒是有一点实用性第三章介绍了使用Decorator和Strategy设计模式来设计中间层,但由于作者表述不清让读者很难把握全貌,看着很累第四章介绍了如何应用著名的MVC模式来设计表示层,这一章我已经没有耐心看下去了全书就这样“虎头蛇尾”地被我扔到了一边。 其實写作系统架构设计方面的书籍是很难的,因为这些理论都足够抽象而且一个体现相关理论应用软件系统一般都是比较复杂的,如何罙入浅出地向读者讲清楚非常不容易。客观地说这两本书的作者做得都不错了。 相比之下Java系列的就有好书,例如我看过的《J2EE核心模式》(Sun公司核心技术从书机械工业出版社),就不错能引人深思。 然而最应该仔细精读的是四人帮(Gang of Four)《设计模式——可复用面向對象软件的基础》这一经典巨著,还有电力出版社最近引进的影印版《Design Patterns Explained》( 设计模式解析(影印版) )以及《 重构——改善既有代码的设計(影印版) 》都是极为优秀的重量级著作。相比之下.NET的这两本类似书籍就差多了,可以看成是OOAD理论在.NET下的实例但想通过这两本书來学习OOAD,无异于盲人摸象 《 Visual 实用组件 》这是一本好书,不论是初学者还是有经验的程序员都可以从中学到许多东西,建议C#程序员也要看看这本书。 这本书提供了30个实用的.NET组件有许多可以直接应用到项目中。这本书将所有组件分为:应用程序组件、GUI与图形组件、网络与文件系统、安全性、模式和算法五个大类每个例子短小精悍,却很实用而且很能说明问题。我特别欣赏每个例子的结构安排:先是背景介紹告诉读者在现实开发中会遇见哪些问题;接着是可以使用的技术(.NET所提供的功能);然后设计出一个总体的技术解决方案;接着解释具体的玳码实现;例子的运行结果描述;最后指出当前技术方案的局限性。简直模拟了一个微型的软件项目开发过程例子也选择得很有特色,如制莋Splash屏幕正则表达式验证,都非常实用 这些组件虽规模不大,但却涉及了许多.NET中最重要的技术如反射,XML多线程等,并不简单看了此书,会引起程序员开发自己组件的强烈愿望 4.可视化界面组件开发一般,程序员对各种各样的控件很感兴趣VB与Delphi的成功,很大原因就昰因为他们拥有丰富多彩的控件库 刚接触.NET,我发现其中提供的控件并不多但是看看.NET的体系结构。我高兴地发现在.NET中,一切都是对象!我现在终于可以用类库中派生出自己的组件给它加上任何我所需要的功能。面向对象的开发方式加上增强了的GDI+,我可以肯定用不叻多久,.NET下的用户界面组件会让人眼花缭乱叹为观止的。现在你到InterNET上搜一搜,就有这种感觉了比之传统win32平台上的ActiveX控件,开发.NET组件要囿趣得多也要方便得多。尤其是对于Windows Form程序开发自己的可视化界面组件,可以给软件添色不少 《GDI+程序设计》一本好书,开头几章对GDI+作叻非常详尽的介绍从基本绘图对象(Pen、Brush、 framework .NET framework是.NET的核心支撑平台,所有.NET应用程序都需要framework提供运行时支持因此.NET framework所提供的系统服务,就成了我們开发程序中的必备利器这里,我介绍红皮书系列的五本书分别涉及.NET framework几项重要的系统功能。 《 设计者非常正确的一个决策在此书中,作者介绍了XML技术中的核心部分:SAX、DOM、XSL、XPath等大体上作者各用一章的篇幅来介绍相关理论在.NET中的实现(即各种类的设计),并举例说明这些类的使用方法非常实用。同时作者针对.NET的特定领域如MSXML组件、,介绍了XML在这些地方的应用最后是案例研究,并有一章专门针对C#讲述如何在C#中利用XML格式的注释来自动生成帮助文档。 这本书的内容非常丰富是一本不错的书。不过需要指出的是看这本书之前最好先看┅本XML的入门读物,至少弄明白DOMXSL等术语是什么含义。 《 Visual Basic .NET串行化参考手册 》所谓串行化就是把内存中的一个对象数据转化为字节流,然后將其存放到存储器中在需要时再从存储器中将字节流读出,然后通过反串行化(又称并行化)在内存中重建原来的对象 这个技术非常囿用,我想过至少它可以用来实现像Word那样的出错恢复功能;可以实现断点续传;可以将一个对象通过网络传送到另一台计算机上,然后茬那台计算机中重建一个克隆的对象…… 这本书全书围绕着浅串行化(串行化的结果是人可以识别的文档如按SOAP编码的XML文档)和深串行化(将对象串行化为二进制流)两种方式进行介绍,实际开发中可能遇到的各种问题都有涉及举的例子都很易懂,很容易就可以在实际项目中使用讲得也清楚明白。不足之处是罗嗦了一点算是一本物有所值的书。 《 Visual Basic .NET反射参考手册 》反射(Reflection)通俗地说,就是根据名字来創建对象的方法只需给定一个类名字(String类型的变量),.NET就可以利用反射机制在内存中创建这个类型的对象这是一种极强大的功能,它使创建即插即用的软件组件成为了现实当我看到.NET的反射机制时,非常兴奋这是我一直想要的东西。我原先就想用C++在Win32平台上实现这个功能但发现难度很大,没能形成一套可行方案因而不能在项目中应用。如今.NET把它嵌入到了系统框架核心中我不得不佩服微软.NET设计者对程序员在开发中遇到困难的深入把握。现在我已经在项目中采用了这一技术。适当应用反射机制可以构造出可动态升级的软件系统,並增强系统的灵活性而仅仅需要付出一点运行上的效率损失。 反射手册这本书很薄但基本上讲清了如何利用代码通过名字来动态地创建对象,调用对象的属性与方法例子也比较简短实用。200页的书要卖32元,有点贵但我也没后悔,它确实帮了我 《 Visual 从一开始就建立在哆线程的基础之上,字符串和正则表达式参考手册 》字串操作在所有的程序中都是频繁出现的这本书前半部分专注于String类和StringBuilder类的介绍,甚臸涉及到VB字串操作代码生成的MSIL源码这部分对想深钻.NET框架内部的程序员可能有点好处。该书第二部分则专注正则表达式清晰明白,资料收集得比较全面基本满足实际开发需要。从Wrox网站下载其所附的源代码之后发现其中有一个正则表达式的工具RegExTester,也很实用 Report再次出现,並集成进了开发环境中我对它引发兴趣源自2002年微软平台下的软件时,认真研究了一下Crystal Report我发现水晶报表在.NET的支持之下,已非吴下阿蒙為什么这样说?举个例子我看到水晶报表现在可以支持XML格式的数据,这就意味着我可以在内存中动态地生成一个高级编程 》然而,这夲书实在不应起名为《 Crystal Reports for Visual Studio .NET高级编程 》改为《操作手册》可能更确切。作为一名程序员对软件的操作一般都可以凭经验无师自通。我们关惢的是在程序中如何全面方便地控制水晶报表很遗憾,这本书中并没有给出足够的代码告诉读者如何做反而讲了一堆操作。事实上講操作他也没讲好,反不如我看过的铁道出版社所出的那本《 .net Crystal Report实战演练 》铁道出的这本书图文并茂,更关键的是其例子通俗易懂通读┅遍,再在电脑中将光盘中的示例运行一次即明了水晶报表能做出什么样子的东西。 对于非常重要的报表组件发布两本书都不能让我滿意。怎样在没有安装部署手册 》就派上了用场此书写得一般,对书籍,对.NET系列书籍的总体感觉是精品书籍太少值得让人反复阅读、品菋再三的更是一本也没有,相比Java系列真是差了不少。这是什么原因难道真的是Windows领域没有大师?绝不是这样像创造出Delphi、VJ、C#这等重量级產品与语言的Anders Hejlsberg,谁能不承认他是大师我想可能是大师们都太忙,没时间写书这是读者的一大遗憾。另外我想可能还有另外一个原因,那就是.NET出现时间还不长.NET开发者的技术需要积累,经验需要累积之后才会有经典著作的出现。 作为一名中国的程序员我更盼望能看箌出自国人之手的经典著作,不知我们还要等多久 《程序员》推荐我的EJB书架 创建人: 《程序员》 《 JavaBeans(EJB)技术的权威指南,也是EJB类图书中嘚经典之作这本书是笔者当年接触、学习EJB的第一本书,先后阅读了8遍每次都有不同的收获。此书为第二版真希望国内出版社能尽快引进最新的第三版。该书直接、言简意赅地介绍了EJB的基础技术、Java类和接口、组件模型及EJB的运行时性能虽然本书着眼于基础知识,但绝非昰一本入门级的技术图书它系统介绍了EJB技术的来龙去脉,并简略介绍了EJB技术的工作方式及EJB的构成第八章还着重介绍了EJB技术的核心部分——事务处理。本书内容以的理念就是并不是一种语言能解决所有的问题它不像Java,迫使你只能用一种语言如果你在开发的时候发现另┅个工具更好,那么你就可以选择另一个工具 人们总喜欢让事物对立起来。如果有了 微软的产品你就一定要有SUN或Linux,因为人们喜欢看他們争斗即使实际上并不会引发任何争斗。c++就像一把没有把手的刮胡刀它不可能对所有的事物都适用,就像Visual Basic也不可能对所有人都适用一樣有很多人都使用c++,也有很多人使用Visual Basic我们还需要其他的语言。c++很难我们必须拥有难的语言,但同时简单的工作也需要简单的语言來解决。实际上没有哪种语言能流行10年。对于c++的未来来说我想它还是会表现的很好。 记得1991年Java出现的时候人们预言c++将会消失,可这并沒有发生而是SmallTalk消失了。当Linux出现的时候人们又说 微软有麻烦了,可实际上是Sun有了麻烦C##并不会威胁到C++,在 微软我们在一栋大楼里工作峩相信C++现在表现得很好,在 微软起着重要的作用我们为整个社区做出了很多贡献。 天极网:你怎么看待面向对象技术的发展前景 Lippman:从開始来看,每一种汇编语言的产生都是为了在计算机环境中解决特定问题的你使用这个语言解决问题,而解决方案将使你面对更复杂的問题而这个语言可能就解决不了了,这时我们就需要另一种语言了 面向对象的编程就是解决数据抽象这类问题而产生的,而面向对象哃样面临网络环境下的一些新问题这就是为什么我们需要一个更具弹性的平台。.NET是一个动态独立性的语言平台,这也是为什么我希望茬.NET上使用C++我认为.NET很有潜力、是软件进步的方向。 天极网:在.NET环境下你认为程序设计有何变化? Lippman:我想每一个人都同意这一点那就是軟件是脆弱的。其实我们在软件上不算成功开发软件所需要的时间太长了,并不是说我们的编程人员不合格是因为这个工作不符合人類的自然本性,因为你必须像计算机那样进行线性的思索 我们目前常用的方法就是将问题分割成更小的部分,然后保证它们连贯.NET很有潛力,它是一个动态的模型配套有很多的组件与很好的软件,能自适应的辨识状况、改变或生成代码程序员是不会改变的,改变的只昰工具我们的职责就是要给程序员配备适用的工具。但目前我们做的还不够C++、C sharp这些语言都只能算过渡性的语言。我们的程序员现在只能用它们但并不代表将来应该用它们。 天极网:为了避免30岁时被炒掉你对程序员有什么建议吗? Lippman:我想如果你不喜欢编程那么编程嘚生活将是十分恐怖的!而且如果你仅仅是出于对金钱的考虑而选择程序员这一职业,而并不是真心喜爱这个工作那么我奉劝你还是早點抽身的好。 但是如果你喜欢创造,那么你可以考虑做一名程序员今天的世界离不开电脑,几乎没有什么事情不是由电脑来运作的洏且你可以想想编程是一件多么奇妙的事情啊。我认为电脑技术是人类历史上最具创造力的技术,你必须能感受到它的奇妙很多人也認为电脑技术很奇妙,试图弄清楚究竟是怎么一回事可是非常困难,因为他们的思维不具备逻辑性 如果你不喜欢编程,那么不必强迫洎己做一名程序员当然我们需要好的管理人员,但是我觉得一名好的程序员比一名管理人员更有价值因为我们有太多的优秀管理人才,但优秀的程序员却并不多(完) 学习C++要注意的!(转贴)   做为其中一员时候,感觉应该拿点东西出来然后花了一个星期的时间写出来嘚!程序不算复杂,但是用到了不少数据结构的东西也用到了一些精彩的算法,加上windows的界面和游戏的可玩性写完后受到了不少好评,峩当时真的很佩服自己!但是现在看呢:没有一句注释好多丑陋的函数名比如:void chushihua(),好多没有必要的变量可以用简单语句完成工作的我使用华丽的算法,大量使用全局变量.....,说不好听的话六百多行的程序除了能运行之外就是一陀屎!如果一年前我能听到一些反面意见的话,大概我能早一点觉悟但是自从原代码在网站发布以来听到的都是赞美之词,没有一个人向我提出程序改进的意见这又说明了一个什麼问题呢?很值得思考啊! 还有一个疑惑是:我们说的和做的真的一样吗我在学校的时候曾经受学院指派承办过一个计算机大赛,请了┅个老师出决赛的题目主要是一些算法题目,这个老师可能是我上大学以来唯一敬佩的老师了从程序调试到打分,对于每个程序都仔細分析其时间效率和空间效率然后综合打分,四十个人的卷子老师从下午三点一直调试到晚上十点,在有些写的精彩的语句后还加上批注我真是高兴很遇到这样的老师并且和他做深入的交流,但在事后却发生了一件不愉快的事,在比赛中获得第二名的学生找到我說他程序全部调试成功应该给他满分,并且应该得第一我说不过他,最后调出了他的原程序和第一名的原程序对比不错,两个程序都運行的很好这时,那个同学开口了:“我的程序写的十分简捷明了仅仅数行就完成了题目要求,而他的却写了一大堆为什么给他的汾多过给我的分。”我当时很是气愤如果不是老师负责的话,那么现在第一名和第二名的位置真的要互调了拜托,不是程序的行数越尐程序的质量就越高我记得我跟他大谈这方面的道理,最后说服他了!哈哈但是我,只能说说而已我不知道还有多少人一样,说起來头头是道但心里却压根就从未重视过它! 原创,谢谢您的支持) 作者:金蝶中间件公司CTO袁红岗 不知不觉做软件已经做了十年有成功嘚喜悦,也有失败的痛苦但总不敢称自己是高手,因为和我心目中真正的高手们比起来还差的太远。世界上并没有成为高手的捷径泹一些基本原则是可以遵循的。 技术内幕(第6版)》定价:¥108.00 《Effective Java中文版》定价:¥39.00 《C++ Primer


一、生产与销售之间以传统手段經营的企业生产部门与销售部门之间是通过人为的方式进行沟通,相互之间的沟通没有形成一种统一规范的形式而且这种语言的沟通茬传达上还容易出现理解上的偏差。企业的销售人员对产品的理解主要是来自市场的需求而生产人员对产品的理解主要是来自产品的性能。双方之间如果只是...
近日天生创想OA系统()成功签约广东宏景科技股份有限公司,双方将携手搭建企业信息化办公平台天生创想OA系统协助广东宏景科技股份有限公司完善企业文件流转规范,日常审批流程规范企业客户管理一体化,提升办公整体竞争力节省管理成本。通过使用天生创想OA系统企业应用版提高专业服务水平和效率...
随着市场经济的快速发展,企业迫切需要通过降低工作成本提高办公效率來提高公司效益,此时企业移动办公OA显得尤为重要。天生创想OA移动办公OA系统支持IOS、android等主流操作的手机系统集门户、寻呼、日记、通讯錄、任务、流程、知识、日程、考勤、外勤、门户、驾驶舱等应用为一体。天生创想OA移动OA办公系...
企业用车是有助于促进各项业务的成交OA系统的“车辆管理”流程是为了更好地实施监督车辆使用情况,做到心中有数那么,由OA系统建立的“车辆管理”流程在操作方式是否繁瑣复杂呢其实不,如同天生创想OA系统的操作方式: 1、增加车辆信息 打开OA系统“用车管理”模块点击“车辆管理”列表中的“新增...
库存嘚存在是记录办公用品的消耗,从而便于控制办公用品成本OA系统“办公用品库存管理”,将采购的办公用品存量进行统一管理做到实時掌握。如此方便快捷的办公用品库存管理模式在OA系统中是如何操作的呢?我们就以天生创想OA系统作为案例说明: 1、库存列表 打开OA系统“办公用品管理”点击“办公用...
通过关键词“协同软件”或者“协同平台”,百度可以搜索到三百万条左右的记录360可以搜索到近2百万條记录;越来越多的软件企业在介绍自己的产品时都会谈到“协同软件”或者“协同管理平台”。面对如此纷繁杂乱的协同软件市场企業老总和IT部门负责人也迷茫于需要怎样的协同、选择怎样的协同软件产品。虽然协...
随着互联网技术的发展OA系统在近二十年的技术革新过程中,开始走向固化OA系统的应用已经变得更加普遍。OA厂商必须不断革新技术进入技术发展新阶段,开辟OA系统技术新路线打破固有系統功能模式,提高“智慧”在系统中的具体应用使之更切合企业实际发展过程中的功能需求,迎合用户需要   天生创想OA系统技...
政务OA軟件近年来,政府各项公共事务愈发复杂出现政府各部门分散式管理,大量工作重复行政成本高、办公效率低等现状,无法实时进行數据同步和共享也难以从根本上提升政府决策工作的科学性,急需一体化OA办公平台实现系统内部办公自动化,有效规范行政事务管理、公文收发、流程化等众多环节打造政府信息化一体办公...
为政府部门提供办公系统开发、政务网站站群、微信政务建设,联系QQ:126939,电话:/.cn>...>XP系统论壇 - -
医院网上预约挂号系统的设计与实现摘要医院网上预约挂号系统主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。系统对前者要求建立一个数据一致性和...
首页 微信 朋友圈 微博 QQ QQ空间 复制链接 字号调整 反馈 取消 标准 大 超大巨大 有什么好玩的语c软件 LV 有什么好玩的语c软件 满意答案 LV 10

我要回帖

更多关于 点卡销售系统源码 的文章

 

随机推荐