你知道你不想重新发明轮子,因此你指望设计模式能帮上忙 那些面对相同软件设计问题的人所学到的教训。有了设计模式,你就可以借助他人的实践和经验,把时间花在一些更有挑战性、更有趣的事情上。本书展示了重要的模式;何时使用、为什么使用这些模式;如何在自己的设计中应用这些模式;模式所基于的面向对象设计原则。无数开发人员通过这本书提升了面向对象设计技能,来加入他们的队伍吧。
通过本书你将了解到如何使用、部署和维护Apache Spark开源集群计算框架。本书由Spark的创始人所撰写,重点介绍Spark*版本的新功能和新特点。本书将Spark功能分解为若干独立主题来进行全面介绍。 本书的主要内容有: 大数据技术和Spark概述。 通过实例学习DataFrame、SQL、Dataset等Spark的核心API。 了解Spark的低级API实现,包括RDD以及SQL和DataFrame的执行过程。 了解Spark如何在集群上运行。 Spark集群和应用程序的调试、监控、和调优。 学习Spark强大的流处理引擎 结构化流处理。 学习MLlib并了解如何应用它解决包括分类、推荐,以及其他多种实际问题。
你可曾想过测试驱动开发的真正含义吗?你又曾想过高级顾问是如何运用*实践赚取高额钟点费的吗?或许,你正准备进行自动化的构建,使代码在版本控制之中,为软件进行重构,并将一些设计模式集成到你的软件系统之中。在你完成本书阅读之时,你将能跟踪工作量完成状况,解释开发团队中开发人员的编码能力与时间效率值,并且为项目反复进行需求、设计、开发与部署等工作。 我们认为你的时间宝贵,不应该浪费在努力理解新概念之中。利用*的认知科学与学习理论的研究成果,《Head First软件开发》采取专为大脑工作而设计的丰富视觉化风格,而不是令人昏昏欲睡的冗赘叙述。
本书是一本基于丰富案例的软件工程实用教程,利用软件工程核心三要素 方法、工具和过程 贯穿全文。重点介绍了软件工程的基本概念、原理、软件工程国家相关规范和软件工程文档撰写国家标准以及传统软件工程方法学和面向对象方法学。 本书重点介绍当前主流的面向对象软件工程的开发方法,UML与建模方法、工具以及统一过程RUP。通过实例突出讲述面向对象分析、设计和实现流程。本书所有的概念、开发方法都通过实例来演示,内容精炼、表达简明、实例丰富,非常适合用作高等院校软件工程专业、计算机科学与技术专业及相关专业本科生、研究生的教材,也可以作为培训机构相关专业的培训教材和广大科技工作者和研究人员的参考用书。
对于近期新的Python 3.4和2.7而言,本指南是完美的实战快速参考。你从中将会学习有关Python类型和语句、特殊方法名、内建函数与异常、常用的标准库模块及其他很好的Pvthon工具。 由Mark Lutz(卢茨)这位认可为靠前的Python编写的《Python袖珍指南(第5版)》,是仍由Mark编写的经典Python教程(《Learning Python》和《Programming Python》,O'Reilly出版)的理想助手。 第五版涵盖内容:内建对象类型,包括数字、列表、字典等更多内容。创建和处理对象的语句和语法。结构化和重用代码所用的函数与模块。Python面向对象的编程工具。内建函数、异常和属性。专有运算符重载方法。广泛应用的标准库模块和扩展。命令行选项与开发工具。Python的习语与提示。Python的SQL数据库API。
本书深入介绍了macOS系统的软件安全、逆向分析与加密解密技术,主要包括macOS软件的开发基础、macOS系统工作机制、macOS软件调试接口与机制、二进制程序的格式、反汇编技术、逆向与动态调试技术、反破解技术以及系统安全与反病毒。 本书适合所有macOS平台软件开发工程师、信息安全专业学生、信息安全专业从业人员阅读学习。
《番茄工作法图解:简单易行的时间管理方法》介绍了时下流行的时间管理方法之一——番茄工作法。作者根据亲身运用番茄工作法的经历,以生动的语言,传神的图画,将番茄工作法的具体理论和实践呈现在读者面前。番茄工作法简约而不简单,本书亦然。在番茄工作法一个个短短的25分钟内,你收获的不仅仅是效率,还会有意想不到的成就感。 《番茄工作法图解:简单易行的时间管理方法》适合所有志在提高工作效率的人员,尤其是软件工作人员和办公人员。
本书以教科书的方式,循序渐进地向软件开发人员或软件开发的项目管理人员,讲述如何快速掌握分布式版本控制系统 Git 的应用方法,让繁琐复杂的项目开发的版本控制变得高效且轻松自如。书中细致入微地介绍了如何使用设置文件和操作Git文档库,以及建立项目开发的分支、合并分支和解决冲突的操作;在具备扎实的基础之后,介绍了Git GUI程序用法,以及 Git 在团队开发模式中应用的问题;讲述如何与优选的项目开发人员进行交流,提升程序开发的经验和能力;介绍了GitHub、Bitbucket、GitLab等提供Git服务的网站;本书很后的重点为介绍架设Git Server的几种方法,让每一个项目开发团队,可以按照自己的软硬件环境,选择适合的方式来控管项目开发。 本书封面贴有清华大学出版社防伪标签,无标签者不得销售。
每天,Google都要测试和发布数百万个源文件、亿万行的代码。数以亿计的构建动作会触发几百万次的自动化测试,并在好几十万个浏览器实例上执行。面对这些看似不可能完成的任务,谷歌是如何测试的呢? 《Google软件测试之道》从内部视角告诉你这个世界上知名的互联网公司是如何应对21世纪软件测试的独特挑战的。《Google软件测试之道》抓住了Google做测试的本质,抓住了Google测试这个时代最复杂软件的精华。《Google软件测试之道》描述了测试解决方案,揭示了测试架构是如何设计、实现和运行的,介绍了软件测试工程师的角色;讲解了技术测试人员应该具有的技术技能;阐述了测试工程师在产品生命周期中的职责;讲述了测试管理及在Google的测试历史或在主要产品上发挥了重要作用的工程师的访谈,这对那些试图建立类似Google的测试流程或团队的人受益很
Martin Fowler和本书另几位作者清楚揭示了重构过程,他们为面向对象软件开发所做的贡献,难以衡量。本书解释重构的原理(principles)和实践方式(best practices),并指出何时何地你应该开始挖掘你的代码以求改善。本书的核心是一份完整的重构名录(catalog of refactoring),其中每一项都介绍一种经过实证的代码变换手法(code transformation)的动机和技术。某些项目如Extract Method和Move Field看起来可能很浅显,但不要掉以轻心,因为理解这类技术正是有条不紊地进行重构的关键。本书所提的这些重构准则将帮助你一次一小步地修改你的代码,这就减少了过程中的风险。很快你就会把这些重构准则和其名称加入自己的开发词典中,并且朗朗上口。
“用户说不清需求”、“需求变更频繁”……都是在软件需求实践中频繁遇到的问题。本书首先直面这些问题,从心理学、社会学的角度剖析其背后的深层原因,使大家从中获得突破的方法。 然后沿着需求开发的几大关键过程,逐一说明了需求定义、需求捕获、需求分析与建模、编写规约、需求验证等需求开发活动的任务、要点和具体手段,并提出了一个可操作性强、易于上手的SERU过程框架,能够帮助读者清晰地了解整个过程,理解各阶段的关键产物和产物之间的关系,迅速应用于实际工作中。本书还对包括需求基线、变更管理、需求跟踪在内的需求管理活动的操作要点进行了阐述,给出了具有很强实践性的具体建议。 纵观《软件需求实践--SERU过程框架原理与应用(典藏版)》,语言浅显、文字生动,蕴含了许多人文、心理、交流方面的知识,即使是非技
通过选取用于创建轻量级应用组件的形式来理解进行Django解耦设计的方法。通过本书的学习,你将具备创建单页面响应实时交互应用的能力。如果你熟练掌握了Python和JavaScript,则可以开始编写应用程序了。■ 学习开始新建Django项目的轻量级方法。■ 将可重用应用分解成与其他应用通信的更细小的服务。■ 创建静态、便捷的原型站点作为网站和应用的支撑平台。■ 使用Django Rest Framework构建REST API。■ 学习如何使用带有Backbone.js的MVC框架的Django。■ 在REST API平台上创建单页面网络应用。■ 将WebSockets和Tornado网络库与实时特性相融合。■ 在项目开发中使用本书的代码驱动实例。
本教材本着以职业能力培养为主、实践为重的原则,从培养应用型、技能型人才角度出发,方便教学和实训。主要内容有计算机基础知识、Windows XP、Word 2003的使用、Excel 2003和PowerPoint 2003的应用方法以及计算机网络的基础知识等。 本教材概念清晰,示例丰富,通俗易懂,尤其注重实训。适合作为各类高职高专院校、计算机培训学校的计算机基础入门教材。
《接口与通讯实验指导/计算机与软件工程实验指导丛书》编著者赵文敏。 编写《接口与通讯实验指导》一书的主要目的是跟上微机发展步伐,在现有条件下改革实验教学内容和方法,旨在提高学生的实践动手能力,包括汇编语言、C语言的编程及调试能力,对硬件接口电路的分析设计能力等,从而学以致用。根据编者多年的工程项目开发以及实践教学经验证明,只有通过实际编程和硬件接口电路的实践,才能掌握软硬件设计的方法,多做实验,不断提高,才能真正做到灵活应用,举一反三。 本书在实验类别上分为三大类:DOS或Windows环境下的32位微机原理实验、windows环境下的微机接口技术实验、Linux环境下的设备驱动程序实验。
为了帮助读者提高工作效率,同时,便于读者迅速锁定目标软件而不至于迷失在工具海洋中,本书作者结合自己多年在教学中教授、使用小软件的经历和经验,从上百个常用多媒体小软件中精心挑选了27款经典小软件供读者选择学习,包括PPT插件、音频编辑、动画制作、录屏、视频剪辑、手绘、思维导图、问卷制作、H5页面制作、Office小功能等多个类别的27款多媒体小软件。另外,为了满足读者碎片化学习的需求,我们还为每一款小软件制作了包括软件特点介绍、操作示范、作品样例等在内的若干短视频。通过扫描封底二维码,读者便可进入微视频页面,观看视频进行学习。
本书由看板方法创始人David J. Anderson亲自编写,是看板方法的奠基之作。看板方法脱胎于丰田生产方式和约束理论,是精益方法的进一步延伸。它将软件开发过程视为一种价值流,并且相信拉动式的管理能产生更好的结果。它通过限制在制品的数量等一系列简单可行的技巧,发现和缓解软件开发过程中的压力和瓶颈,提高生产效率。看板方法的奇妙之处,在于它与企业原有的开发流程无缝结合,在不知不觉中提高生产效率。换句话说,它是一种渐进式的改良,不是翻天覆地的革命,因而更容易被企业接受。实施阻力小且切实有效是看板方法在软件开发社区中迅速流行起来的原因。
本书出自软件领域思想家,美国计算机名人堂首批成员之一的 Gerald M.Weinberg 温伯格之手。本书关注的是程序开发过程中人的因素,堪称这一领域的开山之作。本书的初稿完成于整整 40 年前,作者当时慧眼独具,前瞻性地提出了将程序开发作为一种人类行为来考察的观点。几十年来,本书已让无数读者从中受益,时至今日仍然是畅销全球的经典之作。