本书由CCF组织富有程序设计教学经验的钻石教练编写。通过详实的例题,循序渐进地介绍中学生计算机程序设计的各种知识及其应用,内容包括树及其应用、二叉树及其应用、集合与并查集、图及其应用、二分图及其应用、散列表及其应用、排序及其应用、基础算法及其应用、动态程序设计、数学在程序设计中的应用等,旨在普及计算机科学教育,培养中学生的计算思维能力。
本书深入探讨了软件设计中的核心问题:如何将复杂的软件系统分解为可以相对独立实现的模块(例如类和方法),从而降低其复杂性并提高开发效率。本书首先介绍了软件设计中的基本问题,即复杂性的本质。其次,讨论了有关如何处理软件设计过程的 哲学 问题,如通用设计的重要性、与《代码整洁之道》中设计哲学的对比,以及如何将重要的东西和不重要的东西区分开等内容。最后,总结了在软件设计过程中应遵循的一系列设计原则,以及一系列识别设计问题的警示信号。 本书适合软件工程师、计算机科学专业的学生、教育者、对软件设计和开发感兴趣的自学者和技术管理者阅读。通过应用本书中的思想,读者可以最大限度地降低大型软件系统的复杂性,从而更快地以更低的成本编写软件,并构建更易于维护和增强的系统。
《Qt嵌入式开发实战 从串口通信到JSON通信(微课视频版)》针对嵌入式、物联网开发的工程需求,在全面介绍UART接口、RS485接口等硬件接口的工作原理、调试方法的基础上,介绍了Qt跨平台开发的知识,如GUI编程、信号和槽、定时器、事件循环、HTTP和TCP通信等。尤其是着重介绍了网络通信中常用的JSON的原理和cJSON库的使用方法。本书以一个气象站程序为例,对介绍的知识加以应用,同时展示了工程实践中程序迭代升级的过程。 《Qt嵌入式开发实战 从串口通信到JSON通信(微课视频版)》可以分为3部分:第一部分(第1章和第2章)主要介绍硬件接口知识,包括硬件接口(UART、RS485)、通信协议(Modbus)、调试工具(逻辑分析仪、串口调试助手)等的原理和使用方法;第二部分(第3~6章)主要介绍Qt开发的知识,包括GUI程序开发、控件、信号和槽、事件的使用等;第
随着信息技术和互联网的发展,人们逐渐从信息匮乏的时代走入了信息过载(information overload)的时代 。在这个时代,无论是信息消费者还是信息生产者都遇到了很大的挑战:对于信息消费者,从大量信息中找到自己感兴趣的信息是一件非常困难的事情;对于信息生产者,让自己生产的信息脱颖而出,受到广大用户的关注,也是一件非常困难的事情。推荐系统是解决这一矛盾的重要工具。推荐系统的任务是联系用户和信息,一方面帮助用户发现对自己有价值的信息,另一方面让信息能够展现在对它感兴趣的用户面前,从而实现信息消费者和信息生产者的双赢。
《有趣的矩阵:看得懂又好看的线性代数》分别从中国古代数学思想、益智游戏、企业管理、计算机科学、博弈论等角度出发,介绍了线性代数和矩阵理论中的相关概念和理论在上述领域的应用。通过阅读《有趣的矩阵:看得懂又好看的线性代数》,读者对线性代数在实际问题中的应用会有更加直观的了解,有助于激发读者对线性代数的学习兴趣和学习热情。 《有趣的矩阵:看得懂又好看的线性代数》分为8章,涵盖的主要内容有线性方程组的计算、益智数字游戏中的矩阵、经营管理中的矩阵、矩阵与图片美化、计算机绘画中的矩阵、矩阵与密码设计、互联网中的矩阵、矩阵与博弈论。 《有趣的矩阵:看得懂又好看的线性代数》内容通俗易懂、生动有趣,特别适合中学生、大学生及各年龄层的数学爱好者作为线性代数入门读物使用。另外,《有趣的矩阵:看得懂又
OpenCV是计算机视觉领域的开发者必须掌握的技术。本书针对 OpenCV 4.5进行编写,全面系统地介绍OpenCV 4.5的使用。书中重点介绍OpenCV 4.5相比之前的版本做出的重大修改。 本书共14章,主要内容包括OpenCV 4.5的基础知识、OpenCV开发环境搭建、OpenCV的模块架构、图像的读取与显示、核心模块CORE、图像处理模块基础、灰度变换和直方图修正、图像平滑、几何变换、图像分割、图像金字塔、图像形态学、图像边缘检测、视频加载与摄像头调用、摄像头视频录制以及OpenCV在机器学习方面的应用等,后给出一个停车场车牌识别系统的大案例。 本书适合计算机视觉与图像处理的开发人员、已有图像处理基础并想了解OpenCV 4.5新特性的开发人员阅读,也适合高等院校和培训机构计算机视觉与图像处理相关专业的师生作为教学参考书。
本书共8章,第1章概述AI(Artificial Intelligence,人工智能)系统,介绍机器学习的模型和分类,以及AI系统对测试工程师“提出”的新问题等;第2章介绍数据的处理过程,以及数据的分组方法,详细介绍依托测试数据的测试评价方法;第3章讲解模型中超参数相关的概念,以及关于模型性能的评估指标,并介绍了较为主流的模型的基准测试;第4章重点介绍AI系统的测试用例设计方法,以及传统软件测试方法在AI系统测试中的应用,同时也介绍ChatGPT类应用中SSE(Server-Sent Events)协议的接口测试和LangSmith在测试过程中的使用方法;第5章介绍AI道德的验证,这也是大模型涌现后绝大多数大模型专家所关注的内容,该章重点介绍大模型的“道德”内容及验证方法;第6章介绍提示词工程和软件测试,我们既要能够测试大模型的应用,也要能够充分利用大模型完成测试工作,该章
本书以目前流行的大语言模型ChatGPT为基础,用丰富的案例演示ChatGPT在软件测试中的赋能作用。本书主要介绍如何用ChatGPT生成需求规格说明书、测试计划、功能测试用例、自动化测试用例、接口测试用例、测试数据和性能测试用例,以及?ChatGPT?在分析测试结果、辅助?CI(Continuous Integration,持续集成)、生成测试总结报告和职业发展中的应用等。 本书内容通俗易懂,案例丰富,涵盖软件测试的功能测试、性能测试、接口测试和自动化测试等。通过阅读本书,读者可以借助大语言模型(简称大模型)提高测试效率和研发效率,提升测试工作质量。本书适合软件测试人员、项目管理人员、研发人员及关注软件效能提升的相关人员阅读,也适合希望借助大语言模型提升工作效率的技术人员阅读。
本书针对新一代GUI开发平台MATLAB App Designer(MATLAB R2019b)的应用分两个部分加以详细介绍。部分结合两个综合案例详细介绍用MATLAB App Designer设计App(GUI)的方法与步骤、重点与难点;第二部分以机械工程领域中各种专业案例为基础详细介绍每个App设计的编程解决方法。 本书可作为高职高专及高等院校的机械工程及相近专业的专业课辅助教材,也可作为相关领域工程技术人员进行设计的辅助工具书。
《JSP Servlet Tomcat应用开发从零始学(第3版)》全面系统地介绍JSP Servlet Tomcat开发中涉及的相关技术要点和实战技巧。《JSP Servlet Tomcat应用开发从零始学(第3版)》内容讲解循序渐进,结合丰富的示例使零基础的读者能够熟练掌握JSP Servlet Tomcat的应用开发和部署。《JSP Servlet Tomcat应用开发从零始学(第3版)》配套示例代码、PPT课件、作者答疑服务。 《JSP Servlet Tomcat应用开发从零始学(第3版)》共17章。第1~7章为Java Web基础开发,内容包括搭建Java Web开发环境、JSP基础语法、JSP内置对象、Servlet技术、请求与响应、会话管理、Servlet进阶API、过滤器、监听器等;第8~15章为Java Web高级开发,内容包括MySQL 8数据库开发、JSP与Java Bean、EL标签、JSTL标签库、自定义标签、JDBC详解、XML概述、资源国际化等;第16~17章为Java Web实战,分别讲解两个典型的系统,即家校通门户网站(JSP
对于刚刚成为软件工程师的新手来说,知道如何编写代码只是成功了一半。你可能很快就会发现,学校并没有教授在现实世界中至关重要的技能和工作中必要的流程。本书恰恰填补了这一环节,它是作者十多年来在大型公司指导初级工程师工作的教程,涵盖软件工程的基础知识和best实践。 本书第1~2 章讲解当你在公司开启你的职业生涯时会发生什么;第3~11 章会扩展你的工作技能,教你如何使用现有代码库、解决和防止技术债、编写生产级软件、管理依赖关系、有效地测试、评审代码、交付软件、处理On-Call 时的事故和构建可演进的架构等;剩余章节涵盖管理能力和职业阶梯的提升等相关内容,例如敏捷计划、与管理者合作以及成长为资深工程师的必经之路。本书中非常重要的一部分内容是教你如何应对糟糕的管理,以及如何调整自己的节奏。 本书内容不仅
本书是计算机领域本科教育教学改革试点工作( 101 计划)核心课程配套实践教材,针对软件工程课程实践教学的特点、难点和重点,以能力和素质培养为目标,围绕实践任务的设计、实施和考评三个方面,阐述了如何基于群智和开源的方法,依托相关的软件工具和平台,开展软件工程课程教学实践。 本书设计了两个相对独立的实践任务:一个是阅读、分析和维护开源软件,旨在通过高质量开源代码的学习和维护来掌握高水平的软件开发技能,并在此基础上开展软件的分析、设计和实现,这是一个建立在逆向工程基础上的课程实践;另一个是开发上规模、有创意和高质量的软件,旨在通过完整的软件开发实践来掌握和运用软件工程知识、培养软件开发能力和软件工程素质,这是一个建立在正向工程基础上的迭代开发课程实践。本书结合具体的软件开发案例,详细介
《WTF Solidity智能合约教程(入门篇)》内容源自GitHub上发布的“WTF Solidity教程”,丰富且实用,用通俗易懂的语言描述Solidity的基础知识,通过实例和代码示例,深入浅出地介绍Solidity编程的关键概念,以及智能合约的优化、安全等高级主题,让读者能够编写出更安全、更高效的智能合约。
本书系统讲解了树莓派智能系统设计与Python编程,内容涉及传感器接口、物联网开发、 语音、图像、视频等方面的应用。全书共8 章,分别介绍了树莓派的使用与配置过程、Python 程序设计基础知识、树莓派GPIO 与传感器接口、环境参数监测智能小车、树莓派本地服务器构建与Web端监控软件以及树莓派在语音、视觉和深度学习中的典型应用。通过本书的学习,读者可以快速掌握树莓派智能系统的设计与应用。 为便于读者高效学习,快速掌握树莓派智能系统的开发与实践,作者制作了完整的源代码以及典型案例的讲解视频,并且收集、整理了大量学习的资料与工具。 本书适合作为高等院校电子信息类专业学生学习嵌入式系统、人工智能、Python编程语言相关课程的参考书,也可以作为树莓派爱好者的自学用书。
短短几年时间, Scrum 跃升为敏捷*方法,在全球各地得以普遍应用。针对如何用好、用巧这个看似简单的框架,本书以通俗易懂的语言、条理清晰的脉络阐述和提炼出 Scrum 的精髓。全书共 4 部分 23 章,阐述了七大核心概念: Scrum 框架,敏捷原则,冲刺,需求和用户故事,产品订单,估算与速率,技术债;五大角色:产品负责人, ScrumMaster ,开发团队, Scrum 团队结构,经理: Scrum 规划原则及四大规划活动:多层次规划、产品组合规划、产品规划和长期规划;冲刺四大活动:规划、执行、评审和回顾。 本书取自作者十多年的实践经验,对员工个体和管理层都具有重要的指导和参考意义,可以帮助企业导入 Scrum 方法实现敏捷转型,从而在动态的商业环境中以积极的心态拥抱变化,做出优秀、卓越的产品,成就创业、守业、常青基业。
本书是一本系统讲解管理软件需求分析的书,以实战为主。包括大量案例以及来自工作实践中的经验心得。主要讲述了:需求分析的工作步骤;需求分析的工作内容;如何进行需求调研;如何进行系统规划;如何设计软件;如何设计出好软件;快速原型开发模型;需求文档的撰写;如何应对需求变更;如何成为需求分析高手。本书适合从事需求分析工作的专业人士、希望从事需求分析工作的IT人、希望了解需求分析工作的IT人、计算机相关专业的大学生、管理相关专业的大学生、企事业单位从事管理工作的各级管理者,以及企业信息化管理体系中的关键用户等。
《项目管理基础工具:五图二表》从管理学的角度出发,在系统工程学、运筹学、数理统计学和逻辑学的理论基础上,参照美国《PMBOK指南》的知识体系,梳理了项目管理的内在逻辑关系,将项目管理的核心内容进行提炼,化繁为简,创建了一套具有可操作性的实用工具:五图二表(阶段图、资源图、工作分解结构图、关键路径图、甘特图、工作陈述表及责任矩阵表)。 这套基础的核心工具是作者在长期的项目管理实践及项目管理咨询与培训经验基础上总结的,可帮助项目经理在项目管理中厘清思路,提升项目管理水平。 本书适用于对项目管理感兴趣的人群,特别是项目经理、项目总监、企业顾问及高管,同时也可作为高等院校项目管理、服务管理、生产管理或工程项目管理等相关专业的辅导教材。
本书深入浅出地介绍非线性有限元计算软件OpenSees的基本建模与编程的方法,针对初学者设计了一系列循序渐进的算例,介绍编译和添加新材料方法,帮助使用者快速掌握OpenSees用法与编程.
本书一共分为四个部分,以Maven的核心概念和佳实践为主要内容,包含大量实例。部分:基础篇,除了Maven的概念、安装、在Eclipse中的使用以及能让读者迅速上手的实例等常规内容外,还包括开发者在使用Maven时常遇到的问题解答,以及开发者对Maven的误解;第二部分:核心概念篇,以Amazon的图书查询服务为背景案例,依次讲解了与Maven坐标和依赖、Maven仓库、Maven声明周期、Maven插件等相关的核心内容;第三部分:实践篇:包含大量佳实践,其中涉及的问题是开发者在使用Maven时经常会碰到,但是又恨难解决的,包括Maven中的约定、模块划分、依赖的合理管理等内容;第四部分:附录,包括POM详解、Settings详解以及索引等重要内容。
职场中的新人如何自我定位? 如何深刻理解IT售前这个职位? 如何从IT售前菜鸟成长为IT售前专家? 本书将一一解读! 本书主要是为了帮助初级IT售前迅速成长为中高级IT售前的一本书。通过本书的学习,可以让初级IT售前学会“想”、学会“写”、学会“说”,为初级IT售前的继续成长打下了坚实的基础。 本书共11章,分为两部分。第1部分为IT售前技术,也是本书的理论部分,主要从IT售前***的思维、能力和知识三个维度来介绍。第2部分为IT售前实战,主要让读者通过产品型售前案例、方案型售前案例和咨询型售前案例三大案例来体会实际的IT售前工作是如何开展的。 本书是一本理论和实战融为一体的售前图书,对于立志提高IT售前技术的初级售前具有很强的指导意义,对于IT高级售前也具有一定的帮助和启发。 本书精华内容:
《深入理解分布式共识算法》结合理论知识、算法模拟和源码解析,从多个维度详细剖析分布式共识算法的基本原理和应用实践,涵盖分布式共识算法的方方面面。同时《深入理解分布式共识算法》对共识算法开发中的重点和难点问题进行了重点讲解,并提供精心准备的练习题供读者巩固和提高所学的知识。另外,作者针对重点内容录制了教学视频,以帮助读者高效、直观地学习。 《深入理解分布式共识算法》共10章,分为4篇。第1篇分布式相关概念与定理,主要介绍集群、状态机和共识等相关概念,以及BASE和CAP理论等相关知识;第2篇常见分布式共识算法原理与实战,主要介绍二阶段提交(2PC)协议、三阶段提交(3PC)协议、Paxos、ZAB和Raft等相关知识;第3篇Paxos变种算法集合,主要介绍Paxos变种算法的发展历程,以及Fast Paxos和EPaxos等变种算法的相关知识;第4篇番
本书共分为五部分,部分全面讲述了面向对象程序设计的6大原则;第二部分深入浅出地阐述了23种设计模式,将这23种设计模式与我们耳熟能详的历史故事结合在了一起,趣味性极强;第三部分对各种彼此之间有关联的设计模式进行了分析和比较;第四部分讲解了设计模式的混编;第五部分是附录提供了一份设计模式彩图手册。