编辑推荐:38位大师级的程序员,一步步讲解他们的项目架构,开发时的种种折中考虑(tradeoffs)以及何时必须打破常规,寻求突破。
全球38位顶尖高手、众多语言之父经典之作。
本书收录的是软件设计领域中的一组大师级作品。
每一章都是由一位或几位著名程序员针对某个问题给出的完美的解决方案,并且细述了这些解决方案的巧妙之处。
本书既不是一本关于设计模式的书,也不是一本关于软件工程的书,它告诉你的不仅仅是一些正确的方式或者错误的方式。
它让你站在那些优秀软件设计师的肩膀上,从他们的角度来看待问题。
本书给出了38位大师级程序员在项目设计中的思路、在开发工作中的权衡,以及一些打破成规的决策。
内容简介:本书介绍了人类在一个奋斗领域中的创造性和灵活性:计算机系统的开发领域。
在每章中的漂亮代码都是来自独特解决方案的发现,而这种发现是来源于作者超越既定边界的远见卓识,并且识别出被多数人忽视的需求以及找出令人叹为观止的问题解决方案。
本书33章,有33位作者,每位作者贡献一章。
每位作者都将自己心目中对于“美丽的代码”的认识浓缩在一章当中,张力十足。
33位大师,每个人对代码之美都有自己独特的认识,现在一览无余的放在一起,对于热爱程序的每个人都不啻一场盛宴。
虽然本书的涉猎范围很广,但也只能代表一小部分在这个软件开发这个最令人兴奋领域所发生的事情。
目录信息:第1章正则表达式匹配器。
1.1编程实践1.2实现1.3讨论1.4其他的方法1.5构建1.6小结第2章Subversion中的增量编辑器:像本体一样的接口2.1版本控制与目录树的转换2.2表达目录树的差异2.3增量编辑器接口2.4但这是不是艺术?2.5像体育比赛一样的抽象2.6结论第3章我编写过的最漂亮代码3.1我编写过的最漂亮代码3.2事倍功半3.3观点3.4本章的中心思想是什么?3.5结论3.6致谢第4章查找4.1.耗时4.2.问题:博客数据4.3.问题:时间,人物,以及对象?4.4.大规模尺度的搜索4.5.结论第5章正确、优美、迅速(按重要性排序):从设计XML验证器中学到的经验5.1XML验证器的作用5.2问题所在5.3版本1:简单的实现5.4版本2:模拟BNF语法——复杂度O(N)5.5版本3:第一个复杂度O(logN)的优化5.6版本4:第二次优化:避免重复验证5.7版本5:第三次优化:复杂度O(1)5.8版本6:第四次优化:缓存(Caching)5.9从故事中学到的第6章集成测试框架:脆弱之美6.1.三个类搞定一个验收测试框架6.2.框架设计的挑战6.3.开放式框架6.4.一个HTML解析器可以简单到什么程度?6.5.结论第7章美丽测试7.1讨厌的二分查找7.2JUnit简介7.3将二分查找进行到底7.4结论第8章图像处理中的即时代码生成第9章自顶向下的运算符优先级9.1.JavaScript9.2.符号表9.3.语素9.4.优先级9.5.表达式9.6.中置运算符9.7.前置操作符9.8.赋值运算符9.9.常数9.10.Scope9.11.语句9.12.函数9.13.数组和对象字面量9.14.要做和要思考的事第10章追求加速的种群计数10.1.基本方法10.2.分治法10.3.其他方法10.4.两个字种群计数的和与差10.5.两个字的种群计数比较10.6.数组中的1位种群计数10.7.应用第11章安全通信:自由的技术11.1项目启动之前11.2剖析安全通信的复杂性11.3可用性是关键要素11.4基础11.5测试集11.6功能原型11.7清理,插入,继续……11.8在喜马拉雅山的开发工作11.9看不到的改动11.10速度确实重要11.11人权中的通信隐私11.12程序员与文明第12章在BioPerl里培育漂亮代码12.1.BioPerl和Bio::Graphics模块12.2.Bio::Graphics的设计流程12.3.扩展Bio::Graphics12.4.结束语和教训第13章基因排序器的设计13.1基因排序器的用户界面13.2通过Web跟用户保持对话13.3.多态的威力13.4滤除无关的基因13.5大规模美丽代码理论13.6结论第14章优雅代码随硬件发展的演化14.1.计算机体系结构对矩阵算法的影响14.2一种基于分解的方法14.3一个简单
2023/11/20 12:23:22 49.42MB 《代码之美》 中文 完整版 pdf
1
JavaWeb开发实例大全(提高卷)筛选、汇集了JavaWeb开发从基础知识到高级应用各个层面的大量实例及源代码,共有600个左右,每个实例及源代码按实例说明、关键技术、设计过程、详尽注释、秘笈心法的顺序进行了分析解读。
全书分为7篇23章,包括流行组件应用、数据库应用、图表统计、Ajax框架应用、流行框架、网站安全与架构模式、综合应用等。
重点内容有操作XML文件、发送与接收邮件、数据库操作技术、SQL语句应用技术、复杂查询技术、数据库高级应用、JFreeChart绘图基础、基础图表技术、扩展图表技术、基于Cewolf组件的图表编程、Prototype框架、jQuery框架、Dojo框架、Struts2框架应用、Struts2框架标签应用、Hibernate框架基础、Hibernate高级话题、Spring框架基础、Spring的WebMVC框架、网站性能优化与安全策略、设计模式与架构、网站设计与网页配色、JavaWeb典型项目开发案例等。
配书光盘附带了实例的源程序。
《JavaWeb开发实例大全(提高卷)》既适合JavaWeb程序员参考和查阅,也适合JavaWeb初学者,如高校学生、软件开发培训学员及相关求职人员学习、练习、速查使用。
目录第1篇流行组件应用篇第1章操作XML文件第2章发送与接收邮件第2篇数据库应用篇第3章数据库操作技术第4章SQL语句应用技术第5章复杂查询技术第6章数据库高级应用第3篇图表统计篇第7章JFreeChart绘图基础第8章基础图表技术第9章扩展图表技术第10章基于Cewolf组件的图表编程第4篇Ajax框架应用篇第11章Prototype框架第12章jQuery框架第13章Dojo框架第5篇流行框架篇第14章Struts2框架应用第15章Struts2框架标签应用第16章Hibernate框架基础第17章Hibernate高级话题第18章Spring框架基础第19章Spring的WebMVC框架第6篇网站安全与架构模式篇第20章网站性能优化与安全策略第21章设计模式与架构第7篇综合应用篇第22章网站设计与网页配色第23章JavaWeb典型项目开发案例
2023/11/20 5:12:03 132.78MB java java自学 java开发 java实例
1
智能控制(第4版)刘金琨matlab源代码及PPT课件。
本书教全面地叙述了智能控制的基本理论、方法和应用。
全书共分11章。
主要内容为:专家控制的基本原理和应用;
模糊控制的基本原理和应用;
神经网络控制的基本原理和应用;
智能搜索算法及其应用
2023/11/19 22:55:49 10.44MB 智能控制 源代码
1
《C++程序设计教程(第二版)》,作者:钱能,出版社:清华大学出版社,ISBN:7302114641,PDF格式,大小24.9MB,高清影印版。
内容简介:本书是《C++程序设计教程》的第二版。
然而从指导思想、内容结构、写作特点等方面,都以全新的面貌呈现于读者。
全书全部重新执笔,代码全部重写,涵盖了基本C++编程方法的全部技术特征。
本书以C++标准为蓝本,从过程化编程的基本描述,到对象化编程的方法展开,乃至高级编程的实质揭示,形成一条自然流畅的主线,通俗易懂,形象风趣。
本书在内容结构上自成体系,并以独特的描述手法,辐射到计算机专业其他诸课程,体系严谨,结构独特。
作者在长期的教学、科研实践以及ACM大学生程序设计竞赛培训工作中,总结出了许多难能可贵的教学经验,能使读者快捷而准确地找到编程技术要领,洞穿C++内部实现要害,直击抽象编程本质。
与本书配套,《C++课程设计指导》、《C++程序设计习题及解答》、《C++程序设计教程详解》和《C++程序设计教程精粹》也将陆续面世。
除此之外,还配有C++程序设计教程课件和源代码供读者下载。
本书适用于大学计算机程序设计教学,也适合于立志自学成才的读者,帮助他们从零开始走向高级程序员。
本书也旨在引导读者从欣赏C++入门的初级精彩到享受C++经典名作的内在精彩,因而,也是一本软件工作者不可多得的案头参考书。
目录:第一部分基础编程第1章概述1.1程序设计语言1.2c++前史1.3c++1.4c++编程流程1.5程序与算法1.6过程化程序设计1.7对象化程序设计1.8目的归纳1.9练习1第2章基本编程语句2.1说明语句2.2条件语句2.3循环语句2.4循环设计2.5输入输出语句2.6转移语句2.7再做循环设计2.8目的归纳.2.9练习2第3章数据类型3.1整型3.2整数子类3.3浮点型3.4c-串与string3.5数组3.6向量3.7指针与引用3.8目的归纳3.9练习3第4章计算表达4.1名词解释与操作符4.2算术运算问题4.3相容类型的转换4.4关系与逻辑操作4.5位操作4.6增量操作4.7表达式的副作用4.8目的归纳4.9练习4第二部分过程化编程第5章函数机制5.1函数性质5.2指针参数5.3栈机制5.4函数指针5.5main函数参数5.6递归函数5.7函数重载5.8目的归纳5.9练习5第6章性能6.1内联函数6.2数据结构6.3算法6.4数值计算6.5标准c++算法6.6动态内存6.7低级编程6.8目的归纳6.9练习6第7章程序结构7.1函数组织7.2头文件7.3全局数据7.4静态数据7.5作用域与生命期7.6名空间7.7预编译7.8目的归纳7.9练习7第三部分面向对象编程技术第8章类8.1从结构到类8.2成员函数8.3操作符8.4再论程序结构8.5屏蔽类的实现8.6静态成员8.7友元8.8目的归纳8.9练习8第9章对象生灭9.1构造函数设计9.2构造函数的重载9.3类成员初始化9.4构造顺序9.5拷贝构造函数9.6析构函数9.7对象转型与赋值9.8目的归纳9.9练习9第10章继承10.1继承结构10.2访问父类成员10.3派生类的构造10.4继承方式10.5继承与组合10.6多继承概念10.7多继承技术10.8目的归纳10.9练习10第11章基于对象编程11.1抽象编程11.2编程质量11.3分析josephus问题11.4基于过程的解决方案11.5基于对象的解决方案11.6程序维护11.7程序扩展11.8目的归纳11.9练习11第四部分高级编程第12章多态12.1继承召唤多态12.2抽象编程的困惑12.3虚函数12.4避免虚函数误用12.4.3若干限制12.5精简共性的类12.6多态编程12.7类型转换12.8目的归纳12.9练习12第13章抽象类13.1抽象基类13.2抽象类与具体类13.3深度隔离的界面1
2023/11/12 12:58:06 24.32MB 钱能 C++教程 钱能C++ C++程序设计
1
《TMS320F28335DSP原理及开发编程》介绍了T1公司最新推出的TMS320F28335DSP芯片的基本结构、工作原理、应用配制以及示例程序等。
《TMS320F28335DSP原理及开发编程》共13章,第1章是对TMS320F28335的概述,第2章介绍系统控制与中断,第3章介绍外部接口,第4章介绍。
PWM模块,第5章介绍增强捕捉eCAP模块,第6章介绍增强正交编码脉冲eQEP模块,第7章介绍模数(A/D)转换器,第8章介绍串行外设接1:1(sPI)模块,第9章介绍串行通信接口(scI)模块,第10章介绍。
CAN总线模块,第11章介绍IzC总线,第12章介绍BootROM引导模式,第13章介绍直接存储访问(DMA)模块。
2023/11/10 3:20:54 101.11MB 28335
1
《变压器与电感器设计手册》是由作者麦克莱曼编著,中国电力出版社出版的一本书籍。
本书涉及了用于轻质量、高频率航空航天变压器和低频率、工业用变压器设计的全部关键元器件。
译者的话  序  前言  感谢  关于作者  符号  第1章 磁学基础  第2章 磁性材料及其特性  第3章 磁心  第4章 窗口的利用、励磁导线和绝缘  第5章 变压器的设计折中  第6章 变压器-电感器的效率、调整率和温升  第7章 功率变压器设计  第8章 用开气隙的磁心设计直流(DC)电感器  第9章 采用粉末磁心的直流(DC)电感器设计  第10章 交流(AC)电感器的设计  第11章 恒压变压器(CVT)  第12章 三相变压器设计  第13章 反激变换器及其变压器设计  第14章 正激变换器及其变压器和输出电感器设计  第15章 输入滤波器设计  第16章 电流变压器设计  第17章 绕组电容和漏感  第18章 静音变换器设计  第19章 旋转式变压器设计  第20章 平面变压器  第21章 设计公式的推导  索引
2023/11/9 14:21:15 108.84MB 变压器 电感器 设计手册
1
市面上有很多介绍C语言的书,但这是第一本将C语言以简洁而实用的方式介绍给读者的书籍。
用C语言进行编程不仅仅是在程序中使用正确的句法,编程的风格以及程序的调试在编写程序的过程中也占有相当大的篇幅,从而有助于程序的良好运行且易于维护。
本书不仅仅向你介绍编程的机制,同时也告诉你如何创建易于阅读、调试和更改的程序。
本书也强调了实用的原则。
例如在讨论C中运算优先级时,15种级别被归纳为下面两条原则:-先乘除,后加减;
-在所有该加括号的地方都加上括号第三版除介绍UNIX上的编程工具之外,还介绍了流行的Windows系统上集成开发环境(IntegratedDevelopmentEnvironments)。
第一部分基础11第一章什么是C13编程原理14C语言简史17C如何工作17如何学习C19第二章编程基础21程序从概念到运行21编写一个真正的程序22使用命令行编译器编程23使用集成开发环境(IDE)编程27获取UNIX帮助45获取集成开发环境帮助45集成开发环境菜单45编程练习48第三章风格49基础编码练习54编码盲从56缩进与编码格式56清晰57简明58小结59第四章基本定义与表达式60程序要素60程序的基本结构61简单表达式62变量和存储64变量定义65整型66赋值语句66printf函数68浮点型70浮点数与整数的除法运算70字符73答案74编程练习75第五章数组、修饰符与读取数字76数组76串78读取串81多维数组84读取数字86变量初始化88整型90浮点型92常量说明93十六进制与八进制常量93快捷运算符94副作用95++x或x++96更多的副作用问题97答案98编程练习99第六章条件和控制语句101if语句101else语句102怎样避免误用strcmp函数104循环语句104While语句105break语句107continue语句108随处赋值的副作用109答案111编程练习111第七章程序设计过程113设置115程序规范116代码设计116原型118Makefile119测试123调试124维护126修改126代码分析127注释程序128使用调试器128用文本编辑器浏览128增加注释128编程练习131第二部分简单程序设计133第八章更多的控制语句135for语句135switch语句139switch,break和continue145答案145编程练习147第九章变量作用域和函数149作用域和类149函数153无参数的函数157结构化程序设计158递归160答案161编程练习162第十章C预处理器163*define语句163条件编译170包含文件173带参数的宏174高级特征176小结176答案177编程练习180第十一章位运算181位运算符183与运算符(&)183按位或(\)186按位异或(^)187非运算符(~)187左移与右移运算符(<>)188设置、清除和检测位190位图图形194答案200编程练习201第十二章高级类型202结构202联合205typedef207枚举类型209强制类型转换210位字段或紧缩结构210结构数组212小结213编程练习213第十三章简单指针215函数自变量指针220常量指针222指针和数组224如何不使用指针229用指针分隔字符串231指针和结构235命令行参数236编程练习242答案242第十四章文件输入/输出245转换程序249二进制和ASCII码文件252行尾难题253二进制I/O255缓冲问题257非缓冲I/O258设计文件格式264答案266编程练习267第十五章调试和优化268调试268交互调试器280调试一个二分查找程序285实时运行错误297公开
2023/11/8 22:50:27 20.09MB C语言 编程
1
作者:[英]MattWynne/[挪]AslakHellesy出版社:人民邮电出版社原作名:TheCucumberBook:Behaviour-DrivenDevelopmentforTestersandDevelopers译者:许晓斌/王江平这是一本半技术书籍,虽然是测试使用,但阅读它实在也需要一定的代码基础,所以可见,测试的技术含量越来越高了:D由于本人使用Java,所以忽略了12章以后的内容,由于它所使用到的那些框架都是基于Ruby。
本书分为3部分:1.基础2.进阶3.应用在第一部分,基础篇中,介绍了Gherkin语法,Cucumber的产生背景与适用范围,以及常见问题与解答。
Cucumber是一种系统行为的描述文件,它是活文档,应该时刻描述当前系统的正确行为,并且能够自动测试。
这一特性事实上也要求在写Cu..ber文件时,务必做到用户精准,不要重复场景,用书上的话来讲,就是同一句话,对且只对应系统中的唯一的一个行为。
Cu..ber主要用于在团队中进行沟通,语言必须能通用,要通用就要求隐藏技术细节,以自然语言去描述系统的行为,最经典的场景如:Given...When...Then...给定一定场景,当做什么操作时,会产生什么样的结果。
表格的使用,Backgroud关键字都是为了让特性文件能更简洁,也更易懂和富有表现力。
第二部分进阶篇中,介绍了一些高级的功能,比如:钩子和标签钩子是指@Before@After这种加上实现方法之前,在测试开始时和结束后执行一些特定的操作。
Cu...ber的步骤是全局的,同理,@Be..这类钩子也是全局的,Cu...ber的全局是大有深意的,因为它认为,特性中的所有有用步骤,只能对应一种系统的行为。
若需要让其支持单个场景,则需要对在钩子后面加上标签的方式。
标签同钩子形式相同,可以在场景和特性关键词上加标签。
对于特性(Feature)的标签,会加在每个场景上。
Cu...ber可以对一组标签进行测试。
Cu...ber测试中(可以推而广之到任何测试中),凡是有数据库参与,需要在测试之前保证数据库是干净的,并且当前测试不会遗留下数据影响到下一个测试。
可以使用事务和Truncate的方式来保证这点,实际上,只要测试环节所需要的数据都由Given中提供,则不会有问题。
第三部分讲应用,基本上都是基于Ruby的一些库,但11章的命令行使用方式还是很有意义的,Cu...ber本身就是一个命令行工具,通过命令行,可以对特性文件进行一些过滤,对输出格式进行定制,以及集成到持续集成中。
命令行命令可以使用帮助:--help一些重要的命令:--tags过滤标签--lines指定行执行xxx.feature:45指定行的另一种形式--format格式化输出如果真能把Cucumber用起来,用严肃的态度对待每一个步骤,以测试驱动开发,做出来的项目质量应该能大上一个台阶的,是个很好的工具。
2023/11/3 8:45:35 6.7MB 软件测试
1
目录:第1部分入门第1章学习开发游戏的基础知识第2章创建游戏引擎第3章学习绘制基本图形第4章绘制图形图像第2部分与游戏玩家交互第5章使用键盘和鼠标控制游戏第6章示例游戏:Brainiac第7章使用游戏杆改进输入第8章示例游戏:LightCycles第3部分在游戏中使用了画面第9章使用子画面动画移动对象第10章管理子画面第11章示例游戏:Henway第4部分使用声音和音乐第12章播放数字声音效果第13章播放MIDI音乐第14章示例游戏:BattleOffice第5部分高级动画第15章实现了画面外观动画第16章创建子画面背景第17章示例游戏:MeteorDefense第6部分让游戏拥有大脑第18章教游戏思考第19章示例游戏:SpaceOut第7部分增添游戏的趣味性第20章使用闪屏增添游戏的活力第21章使用演示模式展示游戏第22章记录高分第8部分附加练习第23章使用滋动背景更改远景第24章示例游戏:StuntJumper配套光盘上的附录附录A选择游戏开发工具附录BC++编程入门附录CWindows游戏编程入门附录D创建游戏图形前言:像JunkyardWars和AmericanChopper这样的电视节目获得了极大的成功,在很大程度上是因为它们揭示了有趣的机器(例如潜水艇、破城槌以及摩托车等)构造背后的创造性过程。
自从有了电视以来,教育性的电视节目就一直存在,但是直到最近,教育才进入了正统娱乐的领域。
这些节目之所以获得成功,是因为它们展示了在头脑中产生一个想法并将它们转化为现实是多么有趣和具有挑战性。
是的,它们是教育性的,但是更重要的是,它们很有趣。
本书中有同样有挑战性的乐趣在等待着读者,你将学习如何构建自己的视频游戏。
不,你不能轰鸣着引擎骑着自己的游戏在街道上飞速行驶,但是你可以与朋友和家人分享,炫耀自己新获得..
2023/10/31 21:50:56 36.66MB 游戏编程入门 莫里森 电子书 教材
1
WindowsAPI函数参考手册本书编写组编著人民邮电出版社内容简介内容简介本书是关于MicrosoftWin32API函数的完整参考手册。
本书详细介绍了每一个Win32API函数的使用方法,其中着重介绍其原型表示、函数说明、参数说明、注意事项、相应头文件(.H)、链接库(.LIB或.DLL)和典型示例。
对于每个函数本书给出了相应的示例部分,这样读者在阅读相应的Win32API函数时就能很快地了解它的具体功能和使用方法,便于更快地掌握该接口函数。
本书是从事MicrosoftWindows操作系统开发和应用人员的必备参考书,也可作为大专院校相关专业师生自学、教学参考用书。
前言前言MicrosoftWin32API是MicrosoftWindows操作系统提供的应用程序接口函数,它基本上概括了应用程序编程中涉及的每个方面。
我们在使用MFC编程时,所用的MFC函数都是封装在Win32API基础之上的,即MFC是Win32API的一个上层架构。
学习Win32API能更深刻的理解MFC的运作机制,同时使用Win32API函数编程要比使用MFC更灵活,能编写出更加高效的程序。
MicrosoftWin32API也可以在VB和Delphi等语言中使用。
MicrosoftWin32API函数按照功能划分为窗口处理、设备上下文——DC、绘图函数、位图和图标、菜单处理、文件处理、同步、处理文本和字体、硬件和系统、Windows消息、进程和线程。
本书按功能对Win32API函数进行了划分,对于每一个功能部分的函数都具体给出了它们的函数原型、功能和用法、注意事项、所在头文件、参数调用和典型示例等信息。
本书内容如下:第1章介绍了Win32应用程序的一些基本知识,例如系统消息传递机制,图形接口编程等,同时,它也介绍了Win32API函数的一些基本知识。
第2章介绍了关于窗口处理部分的Win32API函数,例如窗口创建,撤销等。
第3章介绍了设备上下文——DC,例如创建和获取DC、坐标变换等。
第4章介绍了绘图函数,例如路径、图元文件等。
第5章介绍了位图和图标,例如从DLL中获取图标,设置DIB的颜色表等。
第6章介绍了菜单的处理,例如上下文菜单显示,设置位图菜单项等。
第7章介绍了文件的处理,例如文件查找,加锁和解锁文件等。
第8章介绍了同步,例如互斥对象,信号量对象和关键段对象等。
第9章介绍了文本和字体的处理,例如获取系统中字体的信息,输出各种形式的文本等。
第10章介绍了硬件和系统,例如捕获鼠标,获取各种系统信息等。
第11章介绍了Windows消息,例如消息的获取和发送等。
第12章介绍了进程和线程,例如调试进程和线程,获取和设置进程和线程的各种信息,比如优先级、工作集等。
本书为立志掌握Windows操作系统编程的人提供了一条有效的捷径,对于不同层次的Windows操作系统编程人员来说,本书都极具参考价值,是一本不可多得的参考书。
参与本书的主要编写人员有张鸿超、张宏林等。
2023/10/31 18:50:10 71B Window API
1
共 251 条记录 首页 上一页 下一页 尾页
在日常工作中,钉钉打卡成了我生活中不可或缺的一部分。然而,有时候这个看似简单的任务却给我带来了不少烦恼。 每天早晚,我总是得牢记打开钉钉应用,点击"工作台",再找到"考勤打卡"进行签到。有时候因为工作忙碌,会忘记打卡,导致考勤异常,影响当月的工作评价。而且,由于我使用的是苹果手机,有时候系统更新后,钉钉的某些功能会出现异常,使得打卡变得更加麻烦。 另外,我的家人使用的是安卓手机,他们也经常抱怨钉钉打卡的繁琐。尤其是对于那些不太熟悉手机操作的长辈来说,每次打卡都是一次挑战。他们总是担心自己会操作失误,导致打卡失败。 为了解决这些烦恼,我开始思考是否可以通过编写一个全自动化脚本来实现钉钉打卡。经过一段时间的摸索和学习,我终于成功编写出了一个适用于苹果和安卓系统的钉钉打卡脚本。
2024-04-09 15:03 15KB 钉钉 钉钉打卡