本书深入探讨了软件设计中的核心问题:如何将复杂的软件系统分解为可以相对独立实现的模块(例如类和方法),从而降低其复杂性并提高开发效率。本书首先介绍了软件设计中的基本问题,即复杂性的本质。其次,讨论了有关如何处理软件设计过程的 哲学 问题,如通用设计的重要性、与《代码整洁之道》中设计哲学的对比,以及如何将重要的东西和不重要的东西区分开等内容。最后,总结了在软件设计过程中应遵循的一系列设计原则,以及一系列识别设计问题的警示信号。 本书适合软件工程师、计算机科学专业的学生、教育者、对软件设计和开发感兴趣的自学者和技术管理者阅读。通过应用本书中的思想,读者可以最大限度地降低大型软件系统的复杂性,从而更快地以更低的成本编写软件,并构建更易于维护和增强的系统。
《Qt嵌入式开发实战 从串口通信到JSON通信(微课视频版)》针对嵌入式、物联网开发的工程需求,在全面介绍UART接口、RS485接口等硬件接口的工作原理、调试方法的基础上,介绍了Qt跨平台开发的知识,如GUI编程、信号和槽、定时器、事件循环、HTTP和TCP通信等。尤其是着重介绍了网络通信中常用的JSON的原理和cJSON库的使用方法。本书以一个气象站程序为例,对介绍的知识加以应用,同时展示了工程实践中程序迭代升级的过程。 《Qt嵌入式开发实战 从串口通信到JSON通信(微课视频版)》可以分为3部分:第一部分(第1章和第2章)主要介绍硬件接口知识,包括硬件接口(UART、RS485)、通信协议(Modbus)、调试工具(逻辑分析仪、串口调试助手)等的原理和使用方法;第二部分(第3~6章)主要介绍Qt开发的知识,包括GUI程序开发、控件、信号和槽、事件的使用等;第
本书是一本系统讲解管理软件需求分析的书,以实战为主。包括大量案例以及来自工作实践中的经验心得。主要讲述了:需求分析的工作步骤;需求分析的工作内容;如何进行需求调研;如何进行系统规划;如何设计软件;如何设计出好软件;快速原型开发模型;需求文档的撰写;如何应对需求变更;如何成为需求分析高手。本书适合从事需求分析工作的专业人士、希望从事需求分析工作的IT人、希望了解需求分析工作的IT人、计算机相关专业的大学生、管理相关专业的大学生、企事业单位从事管理工作的各级管理者,以及企业信息化管理体系中的关键用户等。
本书系统讲解了树莓派智能系统设计与Python编程,内容涉及传感器接口、物联网开发、 语音、图像、视频等方面的应用。全书共8 章,分别介绍了树莓派的使用与配置过程、Python 程序设计基础知识、树莓派GPIO 与传感器接口、环境参数监测智能小车、树莓派本地服务器构建与Web端监控软件以及树莓派在语音、视觉和深度学习中的典型应用。通过本书的学习,读者可以快速掌握树莓派智能系统的设计与应用。 为便于读者高效学习,快速掌握树莓派智能系统的开发与实践,作者制作了完整的源代码以及典型案例的讲解视频,并且收集、整理了大量学习的资料与工具。 本书适合作为高等院校电子信息类专业学生学习嵌入式系统、人工智能、Python编程语言相关课程的参考书,也可以作为树莓派爱好者的自学用书。
本书针对新一代GUI开发平台MATLAB App Designer(MATLAB R2019b)的应用分两个部分加以详细介绍。部分结合两个综合案例详细介绍用MATLAB App Designer设计App(GUI)的方法与步骤、重点与难点;第二部分以机械工程领域中各种专业案例为基础详细介绍每个App设计的编程解决方法。 本书可作为高职高专及高等院校的机械工程及相近专业的专业课辅助教材,也可作为相关领域工程技术人员进行设计的辅助工具书。
本书由浅入深地带领读者进入Flutter开发的世界,从Flutter的起源讲起,逐步深入Flutter进阶实战,并在最后配合项目实战案例,让读者不但可以系统地学习Flutter编程的相关知识,而且还能对Flutter应用开发有更为深入的理解。 本书分为三部分:第一部分为入门篇(第1~4章),主要介绍Flutter技术的诞生背景、特点、语言及常用组件的使用,通过对本篇的学习,读者可以掌握如何使用Flutter来搭建UI界面;第二部分为进阶篇(第5~11章),主要包含Flutter的手势和事件处理、动画、自定义组件、文件操作和网络请求、路由导航和存储、混合跨平台开发、国际化等,通过对本篇的学习,读者可以对Flutter的整体流程及原理有一个深入的认识;第三部分为实战篇(第12~14章),主要通过一个实战项目把前面介绍的内容整合起来,并且结合Flutter应用发布和Flutter App升级等一条线流程,
本书以项目实践作为主线,结合必需的理论知识,以任务的形式设计内容,每个任务都包含任务描述及任务实施的步骤,读者按照实施步骤进行操作就可以完成相应的学习任务,从而不断提升项目实践能力。本书主要内容涉及流式数据的基础知识、Flink的简介及发展历史、Flink的系统架构及Flink API介绍、Flink的集群部署模式、Flink流式API的基本应用、Flink时间和窗口API的应用、Flink高级应用、Flink Table和SQL的应用、Flink CEP的应用、Kafka集群的安装和常用操作,以及Flink、Flume和Kafka的集成方式。 本书适合需要使用Flink进行大数据处理的程序员、架构师和产品经理作为技术参考手册和培训资料,也可作为高校本科生和研究生的教材。
本书一共分为四个部分,以Maven的核心概念和佳实践为主要内容,包含大量实例。部分:基础篇,除了Maven的概念、安装、在Eclipse中的使用以及能让读者迅速上手的实例等常规内容外,还包括开发者在使用Maven时常遇到的问题解答,以及开发者对Maven的误解;第二部分:核心概念篇,以Amazon的图书查询服务为背景案例,依次讲解了与Maven坐标和依赖、Maven仓库、Maven声明周期、Maven插件等相关的核心内容;第三部分:实践篇:包含大量佳实践,其中涉及的问题是开发者在使用Maven时经常会碰到,但是又恨难解决的,包括Maven中的约定、模块划分、依赖的合理管理等内容;第四部分:附录,包括POM详解、Settings详解以及索引等重要内容。
本书分别从传统的结构化软件开发方法学和面向对象软件开发方法学两个方面介绍软件工程的理论和方法,并将其融入实践,通过丰富的案例介绍软件分析与设计方法及其模型,深入讲解软件开发各个阶段的技术、方法和管理过程,主要内容包括:软件工程基础,结构化分析、设计与测试,面向对象分析、设计与测试,软件维护与项目管理。本书适合作为高等院校软件工程课程的教材,也可作为软件开发从业人员的参考书。
《OpenCV入门与技术实践》介绍如何学习和使用流行的OpenCV库开发计算机视觉应用,主要内容包括图像的核心操作、图像阈值处理、图像形态变换、图像边缘检测、角点检测与特征匹配等。 全书分为4章:第1章着重介绍使用Python开发OpenCV应用基础知识;第2章着重介绍使用OpenCV进行图像特征检测、描述和特征匹配的各种算法;第3章着重介绍OCR文字识别;第4章着重介绍OpenCV中的深度学习。 《OpenCV入门与技术实践》适合作为高等院校计算机、软件工程专业本科生、研究生的参考书目,也适用于对人工智能领域感兴趣的人士。
本书原版在2013年获得日本计测与自动控制学会著作奖,是日本大学广泛采用的自动控制教科书.是一本面向本科和专科层次的、结合当今控制技术发展的经典控制理论教科书.为便于初学者理解,译著对原书部分内容进行了编排,进而突出了重点,对各种数学公式的表达方式和含义进行了详尽的说明.特别对微分方程式与经典控制论的关联性、与控制学相关的数学内容进行了充实,并且结合实际应用对PID等控制方法进行了剖析.本书取材新颖、阐述严谨、内容丰富、重点突出、推导详尽、思路清晰、深入浅出、富有启发性,便于教学与自学. 本书还提供习题的详细题解,欢迎选用教材的教师联系策划编辑索要,具体联系方式如下:李小平,电话010-88379764;邮箱lixiaoping91142@163.com.
本书分两部分,分别介绍MATLAB及其电气工程中的应用,基础部分重点介绍MATLAB的基本语法、MATLAB图形绘制基础、MATLAB程序设计、MATLAB的数值计算,以及动态仿真集成环境Simulink的应用。应用部分重点介绍MATLAB在电力电子变流技术、直流调速系统、交流调速系统以及电力系统中的应用。书中提供大量实例供读者学习和理解MATLAB的程序设计方法和仿真方法,在每章末提供习题供读者练习。
本书主要介绍了Project工程项目管理软件应用的基本内容,包括4篇11章,涉及工程项目管理概述、工程项目过程管理、Project介绍、工程项目范围管理、工程项目进度(资源、成本)计划、工程项目跟踪控制、工程项目信息管理及沟通管理等。Project软件应用具有很强的操作性和实践性,本书结合工程项目管理的基本理论和方法,编写时力求深入浅出、通俗易懂,突出各部分应用的操作过程和实用性。本书可作为高等院校土木工程、工程管理、工程造价专业的学生教材,也可作为工程管理相关人员的岗位培训教材,还可供工程管理从业人员参考。
本书是计算机领域本科教育教学改革试点工作( 101 计划)核心课程配套实践教材,针对软件工程课程实践教学的特点、难点和重点,以能力和素质培养为目标,围绕实践任务的设计、实施和考评三个方面,阐述了如何基于群智和开源的方法,依托相关的软件工具和平台,开展软件工程课程教学实践。 本书设计了两个相对独立的实践任务:一个是阅读、分析和维护开源软件,旨在通过高质量开源代码的学习和维护来掌握高水平的软件开发技能,并在此基础上开展软件的分析、设计和实现,这是一个建立在逆向工程基础上的课程实践;另一个是开发上规模、有创意和高质量的软件,旨在通过完整的软件开发实践来掌握和运用软件工程知识、培养软件开发能力和软件工程素质,这是一个建立在正向工程基础上的迭代开发课程实践。本书结合具体的软件开发案例,详细介
本书是一本旨在审视交互设计理论并推进其发展的专业书籍。本书既没有重点讲述网站或特定产品的设计,也没有深入探讨设计的各要素的美学或情感价值,而是深入探究了设计中科技、形式与人三者之间的语义关联——交互。本书重点阐释了对交互设计领域的新理解和洞察,以及人与科技之间的联系。作者通过引人入胜的内容实现对设计师的教化,帮助设计师教化商业人士,同时确立交互设计在商业领域中的地位。本书不但探讨了经济局面的变化、互联性的增强和全球化的科技普及如何影响针对人类行为的设计活动和设计本身,而且还对交互设计的定义进行了阐释,主要覆盖三个方面:其一,交互设计领域各个知识层面;其二,交互设计作为“以人为本”的学科所包含的基本概念;其三,交互设计师在实践当中获得的经验和采用的方法与手段。本书讨论了(设计
本书是一本以VMware vSphere 7.0平台为基础的从入门到精通的项目任务化教程,项目1介绍虚拟化与云计算的基本概念,项目2介绍搭建VMware企业级虚拟化平台的全过程,项目3以StarWind和openfiler为例介绍iSCSI存储的搭建与配置,项目4介绍部署vCenter Server的过程,项目5介绍vCenter Server的高级应用,项目6详细介绍VMware云桌面服务的搭建。本书不仅可以作为高等院校计算机网络技术、云计算技术专业的学生教材,还可以作为对VMware vSphere云平台运维与管理技术感兴趣的读者的参考用书。
本书根据应用型科技大学的教学要求和*大纲编写而成。全书分4个模块,涵盖软件工程基础知识、结构化软件分析和设计、面向对象软件分析和设计、软件实现、软件测试、软件维护、软件项目管理和质量保证、软件文档、软件开发案例、分析建模工具等方面的内容。每章配有知识链接、知识拓展和习题,引导读者深入地进行学习。 本书注重学生能力的培养,采用案例教学,融 教、学、做 为一体,所讲知识都结合了具体实例,力求详略得当,引导读者快速采用结构化方法、面向对象方法进行软件开发。