软件与程序设计
-
搞定系统设计Alex Xu系统设计面试被认为是所有技术面试中难度最大的面试,因为面试题的范围都非常广且模糊,其答案也是开放的,不存在标准答案或正确答案。本书是专门为准备系统设计面试的读者而撰写的,重点讨论了分布式系统中的常用组件和大型Web应用的系统架构,涵盖了几类常见的典型应用,包括聊天系统、视频流系统、文件存储系统(云盘)、支付系统等,旨在帮助读者掌握构建一个可扩展的系统所需的基础知识,为面试做好充分准备。作为过来人,作者提出了应对面试题的“四步法”,即确定问题范围→总体设计→细节设计→总结,书中的案例基本上都是按照这个步骤进行解析的。这种解题框架有助于在面试时搞清楚系统的需求、限制和瓶颈,理清思路,有条不紊地作答。通过本书,读者可以了解不同Web应用的系统设计方案的要点及采用的技术,据此查漏补缺,补齐自己知识体系中的短板,为面试成功增添更多的可能。而对于已经是架构师的读者而言,书中的案例将为他们提供新的思路和灵感,有助于他们在面试中更加从容地展现自己的设计思路和实践经验。 -
领域驱动设计王红亮内容简介这是一本从业务和架构视角讲解DDD的基本原则、底层逻辑、落地难点、落地方法和进阶技巧的实战性著作。DDD的理论体系复杂,学习和实践门槛较高,已有的关于DDD的著作或多或少存在理论描述难理解、案例示范难落地等问题,阻碍了DDD在实践中的应用。本书作者有20余年的软件研发经验,对DDD有深刻的理解,深谙DDD实践过程中的痛点,他在这本书中高屋建瓴、化繁为简,让读者有拨云见雾之感。理论部分(第1~3章)从软件工程的基本思想出发,首先分析了DDD产生的原因,并由此推论出DDD的基本原则,这些内容是学习本书的基础;紧接着分析了DDD落地的难点,帮助读者扫清障碍;然后提炼出了DDD的成熟度模型,包括DDD的战略、战术和衡量指标。这些内容极具针对性和独创性,是研发团队必须掌握的,也是目前同类书中很少讲的。实战部分(第4~10章)从业务建模和架构的角度切入,首先用搭积木的方式讲解和演示了DDD项目由简易到复杂的落地过程,包含大量的业务建模场景和案例,涉及如何应用通用语言、如何建模领域逻辑、如何应用上下文和子域切分系统以及如何保持语言、模型、代码的一致性等重要内容;然后讲解了如何将各种设计模式应用到DDD中,以及如何设计出能让DDD更好落地的系统架构。这些内容兼具实操性和思想性,充满经验和智慧,在同类书中同样也不多见。 -
程序设计基础实践教程张桂芳,葛丽娜暂缺简介... -
Python科学计量数据可视化李显 李杰 宋东桓Python 在数据处理和可视化方面拥有非常成熟的模块,使用这些模块可以轻松处理科研数据以及绘制丰富的图表。本书以打造实战型Python科学计量与知识图谱工具书为目标,力求使读者可以通过书中案例提供的解决思路,快速完成与科学计量相关的科研实践。本书一共分为三部分,共8章内容。第一部分包含第1、2章,重点介绍Python软件下载、安装、使用以及Python基础语法讲解;第二部分包含第3、4章,主要介绍5类科学文献数据的检索与下载方式,并结合MySQL和Navicat软件对5类文献数据进行综合管理案例的详解,第三部分基于科学文献数据的分析,包含了第5、6、7、8章,主要讲解了科学文献数据的描述性统计、文本挖掘与可视化以及知识网络分析。 -
递归算法与项目实战阿尔·斯维加特,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到Kotlin[英]邓肯·麦格雷戈,[英]纳特·普莱斯本书讲述了如何从Java过渡到Kotlin,主要关注代码,每章都阐述了从Java过渡到Kotlin的一个方面,考察了典型Java项目在这个过程中可以改进的方面。比如,从Optional到nullable,从Bean到值,从开放类到密封类。每章首先解释关键概念,然后展示如何在保持互操作性的前提下,逐步且安全地将生产型Java代码重构为惯用的Kotlin代码,由此产生的代码更简单、更有表现力,也更容易修改。在本书结束时,你将有信心将Java代码重构为Kotlin代码,从头开始编写Kotlin代码,并随着时间的推移管理一个混合语言代码库。 -
精通 Power Query[加拿大] 肯·普尔斯(Ken Puls),[巴拿马]米格尔·埃斯科瓦尔(Miguel Escobar)本书是Power Query领域的经典之作,旨在让读者用正确而高效的方法精通Power Query。本书是两位作者多年积累的业务和IT工作经验总结,同时也是全球Power Query顶级社群的大咖经验提炼。本书从业务背景出发,在业务和IT之间做到了良好的平衡,系统化地给出了Power Query的思维框架和模式,同时按照多个企业级业务场景一一展示其实用性。无论你是Power Query的新手还是经验丰富的ETL专家,都可以从各自的角度领略Power Query 和M语言的魅力。对于业务用户,本书给出了日常办公所涉及的大量复杂数据问题解法的直接参考,并提供了大量案例,可以直接应用。对于专业用户,本书给出了搭建大型专业数据项目的框架性流程指导及优化建议,并提供了相关案例,也可以直接复用。 -
自然语言处理原理与实战陈敬雷本书从自然语言处理基础开始,逐步深入各种自然语言处理的热点前沿技术,使用了Java和Python两门语言精心编排了大量代码实例,契合公司实际工作场景技能,侧重实战。 全书共19章,详细讲解中文分词、词性标注、命名实体识别、依存句法分析、语义角色标注、文本相似度算法、语义相似度计算等内容,同时提供配套完整实战项目,例如对话机器人实战、搜索引擎项目实战、推荐算法系统实战。 本书理论联系实践,深入浅出,知识点全面。通过阅读本书,读者不仅可以理解自然语言处理知识,还能通过实战项目案例更好地将理论融入实际工作中。 本书适合自然语言处理的初学者阅读,有一定经验的算法工程师也可从书中获取很多有价值的知识,并通过实战项目更好地理解自然语言处理的核心内容。
