软件与程序设计
-
领域驱动设计王红亮内容简介这是一本从业务和架构视角讲解DDD的基本原则、底层逻辑、落地难点、落地方法和进阶技巧的实战性著作。DDD的理论体系复杂,学习和实践门槛较高,已有的关于DDD的著作或多或少存在理论描述难理解、案例示范难落地等问题,阻碍了DDD在实践中的应用。本书作者有20余年的软件研发经验,对DDD有深刻的理解,深谙DDD实践过程中的痛点,他在这本书中高屋建瓴、化繁为简,让读者有拨云见雾之感。理论部分(第1~3章)从软件工程的基本思想出发,首先分析了DDD产生的原因,并由此推论出DDD的基本原则,这些内容是学习本书的基础;紧接着分析了DDD落地的难点,帮助读者扫清障碍;然后提炼出了DDD的成熟度模型,包括DDD的战略、战术和衡量指标。这些内容极具针对性和独创性,是研发团队必须掌握的,也是目前同类书中很少讲的。实战部分(第4~10章)从业务建模和架构的角度切入,首先用搭积木的方式讲解和演示了DDD项目由简易到复杂的落地过程,包含大量的业务建模场景和案例,涉及如何应用通用语言、如何建模领域逻辑、如何应用上下文和子域切分系统以及如何保持语言、模型、代码的一致性等重要内容;然后讲解了如何将各种设计模式应用到DDD中,以及如何设计出能让DDD更好落地的系统架构。这些内容兼具实操性和思想性,充满经验和智慧,在同类书中同样也不多见。 -
C语言程序设计实战教程李晓丽本书适用于已经系统学习过C语言程序设计基础知识内容,想要进一步将基础知识应用于实践案例的学习者。全书包括6个管理信息系统、5个图形界面游戏程序及EGE图形编程的基础知识。6个管理信息系统分别是小型超市管理系统、学生宿舍管理系统、学生成绩管理系统、电子通信录管理系统、ATM终端机模拟系统和银行用户管理系统;5个图形界面游戏程序分别是扫雷游戏、推箱子游戏、贪吃蛇游戏、双人五子棋游戏和俄罗斯方块游戏。 本书可用作高等院校相关专业的教材,也可用作对C语言程序设计感兴趣的读者的参考书。 -
Java到Kotlin[英]邓肯·麦格雷戈,[英]纳特·普莱斯本书讲述了如何从Java过渡到Kotlin,主要关注代码,每章都阐述了从Java过渡到Kotlin的一个方面,考察了典型Java项目在这个过程中可以改进的方面。比如,从Optional到nullable,从Bean到值,从开放类到密封类。每章首先解释关键概念,然后展示如何在保持互操作性的前提下,逐步且安全地将生产型Java代码重构为惯用的Kotlin代码,由此产生的代码更简单、更有表现力,也更容易修改。在本书结束时,你将有信心将Java代码重构为Kotlin代码,从头开始编写Kotlin代码,并随着时间的推移管理一个混合语言代码库。 -
零基础学Pine Script阎英姿这是第一本介绍Pine Script语言的中文图书。Pine Script是TradingView平台上特有的一种轻量级脚本语言,它简洁高效、易学易用,可用于编写/定制指标和策略,并进行策略的回测。按照内容划分,本书可以归类于金融投资领域的量化分析图书范畴。全书内容分为四个部分,包括基础篇、函数篇、进阶篇和应用篇。本书从初学者角度出发,按照由浅入深、从基础到应用的顺序递进,先介绍Pine Script语言基础,再着重笔墨讲解该语言的特色、重点和使用技巧,最后给出精选的20多款颇具应用价值的实例。书中所有知识点都结合具体例子进行讲述,所涉及的脚本代码均在关键之处给出了详细的注释,使读者可以轻松领会Pine Script语言的精髓,并快速掌握应用技能。 -
递归算法与项目实战阿尔·斯维加特,Sweigart本书凝聚了作者多年的Python教学经验,内容通俗易懂,旨在剖析递归及其本质。本书不仅结合Python程序和 JavaScript 程序讲述编程的基础知识,还讲述如何利用递归算法计算阶乘,计算斐波那契数列,遍历树,求解迷宫问题,实现二分搜索,完成快速排序和归并排序,计算大整数乘法,计算排列和组合,解决八皇后问题等。 本书不仅适合开发人员阅读,还可供计算机相关专业的师生参考。 -
Python数据科学应用从入门到精通张甜,杨维忠随着数据存储、数据处理等大数据技术的快速发展,数据科学在各行各业得到广泛的应用。数据清洗、特征工程、数据可视化、数据挖掘与建模等已成为高校师生和职场人士迎接数字化浪潮、与时俱进提升专业技能的必修课程。本书将“Python课程学习”与“数据科学应用”有机结合,为数字化人才的培养助力。 全书共分13章,内容包括:第1章数据科学应用概述;第2章Python的入门基础知识;第3章数据清洗;第4~6章特征工程介绍,包括特征选择、特征处理和特征提取;第7章数据可视化应用;第8~13章介绍6种数据挖掘与建模的方法,分别为线性回归、Logistic回归、决策树、随机森林、神经网络、RFM分析。 《Python数据科学应用从入门到精通》既适合作为经济学、管理学、统计学、金融学、社会学、医学、电子商务等相关专业的学生学习Python数据科学应用的专业教材或参考书,也适合作为企事业单位数字化人才培养的教科书与工具书。此外,还可以作为职场人士提升数据处理与分析挖掘能力,提高工作效能和绩效水平的自学Python数据科学应用的工具书。 -
Qt程序设计基础 基于银河麒麟桌面操作系统苏静,申波银河麒麟桌面操作系统 V10 是一款简单易用、稳定安全、高效创新的产品,配备有完善的开发工具,支持主流编程语言,提供了良好的开发环境和大量的开发库。同时它支持国产数据库和中间件,以及封装系统级 SDK,可以很好地支撑项目开发工作。本书基于银河麒麟桌面操作系统 V10,以 Qt 5.12.8 为开发平台,将理论知识与开发经验相结合,深入浅出地介绍桌面应用开发的常用技术。本书分为 10 章,内容包括初识 Qt、开发环境、编程基础、窗口设计、对话框、事件处理、信号槽、常用控件、布局管理、文件管理等。本书可作为计算机、软件工程、物联网等信息类专业本科、专科层次的教学用书,也适合 Qt 编程的初学者、Qt 跨平台应用开发人员参考。 -
自然语言处理原理与实战陈敬雷本书从自然语言处理基础开始,逐步深入各种自然语言处理的热点前沿技术,使用了Java和Python两门语言精心编排了大量代码实例,契合公司实际工作场景技能,侧重实战。 全书共19章,详细讲解中文分词、词性标注、命名实体识别、依存句法分析、语义角色标注、文本相似度算法、语义相似度计算等内容,同时提供配套完整实战项目,例如对话机器人实战、搜索引擎项目实战、推荐算法系统实战。 本书理论联系实践,深入浅出,知识点全面。通过阅读本书,读者不仅可以理解自然语言处理知识,还能通过实战项目案例更好地将理论融入实际工作中。 本书适合自然语言处理的初学者阅读,有一定经验的算法工程师也可从书中获取很多有价值的知识,并通过实战项目更好地理解自然语言处理的核心内容。 -
搞定系统设计Alex Xu系统设计面试被认为是所有技术面试中难度最大的面试,因为面试题的范围都非常广且模糊,其答案也是开放的,不存在标准答案或正确答案。本书是专门为准备系统设计面试的读者而撰写的,重点讨论了分布式系统中的常用组件和大型Web应用的系统架构,涵盖了几类常见的典型应用,包括聊天系统、视频流系统、文件存储系统(云盘)、支付系统等,旨在帮助读者掌握构建一个可扩展的系统所需的基础知识,为面试做好充分准备。作为过来人,作者提出了应对面试题的“四步法”,即确定问题范围→总体设计→细节设计→总结,书中的案例基本上都是按照这个步骤进行解析的。这种解题框架有助于在面试时搞清楚系统的需求、限制和瓶颈,理清思路,有条不紊地作答。通过本书,读者可以了解不同Web应用的系统设计方案的要点及采用的技术,据此查漏补缺,补齐自己知识体系中的短板,为面试成功增添更多的可能。而对于已经是架构师的读者而言,书中的案例将为他们提供新的思路和灵感,有助于他们在面试中更加从容地展现自己的设计思路和实践经验。 -
Stata统计分析从入门到精通李昕本书以Stata为平台,通过实例引导的方式介绍应用Stata进行统计分析的相关知识,帮助读者系统地学习使用Stata解决实际工作中遇到的问题。全书分为三部分,共17章,第一部分详细介绍Stata的操作界面、命令基本语法、数据管理、图形绘制等操作知识;第二部分介绍描述性统计、假设检验、方差分析、相关分析、各类回归分析、聚类分析、主成分分析与因子分析等统计分析知识;第三部分介绍时间序列分析知识,包括趋势分析与平滑方法、ARIMA模型、VAR模型与VEC模型、ARCH系列模型等。本书涉及面广,涵盖了一般用户的基本需求,全书按逻辑顺序编排,自始至终结合实例进行介绍,内容完整且每章相对独立,是一本详尽实用的Stata学习用书。本书适合高等院校经济学、统计学、管理学、金融学、社会学、医学等相关专业的学生、科研人员学习使用,还适合应用Stata进行数据分析以解决实际问题的人员学习使用。
