本书从问题入手,使用100多个创意编程范例,试图在深入理解原理的基础上,通过自造 轮子 帮助读者提升代码编写功底和工程实现能力。全书分为12章,内容包括Java入门、分形图像处理、数据结构、网络通信、动态装载、多线程、Raft协议、分布式编程和ZooKeeper框架等,由浅入深实现 美颜相机 迷你通信会议 迷你Web服务器 迷你Raft 等项目。本书针对每一个范例,首先给出代码实现和重要知识点,然后提出任务以使读者发挥创意,提升代码编写技能。 本书由浅入深,有趣有料,适合想提升代码编写水平的大学生、求职者、编程爱好者阅读,也适合有1~2年开发经验的程序员参考,还可以作为各类培训班的培训教材。
本书聚焦Java高并发编程基础知识,介绍Java多线程、线程池、内置锁、JMM、CAS、JUC、高并发设计模式等并发编程方面的核心原理和实战知识。 本书共10章。第1、2章剖析多线程、线程池的核心原理和实战应用,揭秘线程安全问题和Java内置锁的核心原理。第3、4章讲解CAS原理与JUC原子类、JMM的核心原理,揭秘CAS操作的弊端和两类规避措施,以及Java内存可见性和volatile关键字的底层知识。第5章讲解JUC显式锁的原理和各种显式锁的使用。第6章阐述JUC高并发的基础设施 AQS抽象同步器的核心原理。第7章介绍JUC容器类。第8~10章介绍常见的Java高并发设计模式的原理和使用。 本书既可以作为Java工程师、架构师的编程参考书,又可以作为参加互联网大厂面试、笔试的人员的学习参考书。
本书从操作系统底层的IO原理入手讲解Java高并发核心编程知识,同时提供高性能开发的实战案例,是一本Java高并发编程的基础原理和实战图书。 本书共15章。第1~4章为高并发基础,浅显易懂地剖析高并发IO的底层原理,图文并茂地介绍Java异步回调模式,细致地讲解Reactor高性能模式。这些原理方面的基础知识非常重要,会为读者打下坚实的基础,也是日常开发Java后台应用时解决实际问题的金钥匙。第5~8章为Netty的原理和实战,是本书的重中之重,主要介绍高性能通信框架Netty、Netty的重要组件、单体IM的实战设计和模块实现。第9~12章从TCP、HTTP入手,介绍客户端与服务端、服务端与服务端之间的高性能HTTP通信和WebSocket通信。第13~15章对ZooKeeper、Curator API、Redis、Jedis API的使用进行详尽的说明,以提升读者设计和开发高并发、可扩展系统的能力。 本书兼具基础知识和实战
《项目驱动零起点学Java》共分 13 章,围绕 6 个项目和 258 个代码示例,分别介绍了走进Java 的世界、变量与数据类型、运算符、流程控制、方法、数组、面向对象、异常、常用类、集合、I/O流、多线程、网络编程相关内容。《项目驱动零起点学Java》总结了马士兵老师从事Java培训十余年来经受了市场检验的教研成果,通过6 个项目以及每章的示例和习题,可以帮助读者快速掌握Java 编程的语法以及算法实现。扫描每章提供的二维码可观看相应章节内容的视频讲解。
本书从动态代理模式、Reactor模式、三大限流策略等知识入手,深入浅出地剖析Spring Cloud Nginx系统架构的核心原理以及Web高并发开发技术。全书从基础设计模式和基础原理出发,理论与实战相结合,系统、详尽地介绍Spring Cloud Nginx高并发核心编程。 本书共10章。前6章剖析Feign高并发RPC的底层原理,解析Hystrix高性能配置的核心选项,阐述Hystrix滑动窗口的核心原理;后4章介绍Nginx的核心原理及其配置,并结合秒杀场景实现Spring Cloud秒杀、Spring Cloud Nginx Lua秒杀,为广大Java开发者提供一个全面学习高并发开发的实战案例。这些知识会为广大Java工程师解决后台开发中遇到的高并发、高性能问题打下坚实的技术基础。
《Java项目开发全程实录(第5版)》精选11个热门项目,涉及Java基础应用、数据库应用和Web开发三大Java重点应用方向,实用性非常强。这些项目包含:推箱子游戏、文件批处理助手、图片处理工坊、网络五子棋、单/双人坦克大战、数据图表分析小帮手、学生成绩管理系统、工作计划管理系统、仓储管理系统、明日科技门户网、九宫格记忆网。从软件工程的角度出发,本书按照项目开发的顺序,系统、全面地讲解每一个项目的开发实现过程。在结构上,每章的内容都围绕一个项目进行讲解,统一采用 开发背景 系统设计 技术准备 公共模块实现/各功能模块实现 项目运行 源码下载 的形式,完整地呈现每个项目的开发流程,让读者在完成项目后获得明确的成就感。这样的安排旨在帮助读者快速积累实际项目经验和技巧,助于读者早日实现就业目标。
本书旨在帮助Java求职者在面试中脱颖而出,内容涵盖Java通用架构方案的多个关键主题,如微服务架构、高性能架构、高可用架构、高并发架构、分布式原理和分布式缓存等。本书的特点在于,它将互联网领域的名企、大厂的面试问题与实际案例相结合,对面试问题和面试官的心理进行深度剖析,并将面试问题的相关解答和相应技术点详细展开,以帮助读者全面理解相关概念和技术,并能在面试和实际工作中灵活应用。 通过学习本书,读者可以深入了解名企、大厂的实际案例和相关问题的解决方案。书中总结的一些宝贵经验将有助于读者在面试中表现得更加出色,增加成功的机会,斩获高薪Offer,并提升自己的实际工作能力。读者无论是要做好面试准备还是要适应实际工作需求,都能从本书中获益。
OpenCV作为一个应用广泛的开源计算机视觉库,正在受到越来越多的关注。目前OpenCV的各类教程基本上以Python和C 为主,基于Java的OpenCV书籍则少之又少,本书旨在弥补这一空白。 本书共13章,前4章是基础部分,包括OpenCV概述和安装配置、数字图像基础及图像基础操作等内容;第5到11章则包括了图像的几何变换、图像平滑、形态学操作、直方图、边缘检测与轮廓、霍夫变换、特征点检测和匹配等进阶内容;第12~13章属于提高内容,主要介绍机器学习和视频跟踪技术。 本书以通俗易懂的语言,图文并茂的讲解力图使初学者能够快速高效入门。本书面向的读者是包括高校学生在内的各类初学者、研究计算机视觉的业余爱好者及需要快速上手的专业人员。
《Java官方入门教程(第9版 Java 17)》针对Java SE 17做了全面细致的更新,将引导你轻松学习最新的核心Java编程技能。《Java官方入门教程(第9版 Java 17)》由畅销编程书作者Herbert Schildt撰写,开篇讲述基础知识,内容涉及如何创建、编译和运行Java程序。此后浓墨重彩地描述构成Java语言核心的关键字、语法和结构。本书还涵盖Java的一些更高级特性,如多线程编程、泛型、lambda表达式、模块、记录、密封类和Swing。另外,还介绍了Java的交互式编程工具JShell。本书通俗易懂、简明扼要、详略得当,成为全球数百万读者的选择。
《Java官方编程手册(第12版 Java 17)》针对Java SE 17全面更新内容,讲解了如何开发、编译、调试和运行Java程序。畅销书作者Herbert Schildt在本书中对整个Java语言进行了讲解,包括其语法、关键字和基础编程概念。书中还介绍了Java API库的关键部分,如I/O、集合框架、流库和并发实用工具,还讨论了Swing、Java Bean和servlet,并提供了大量示例来演示Java的实际应用。当然,本书也详细描述了Java语言的新增特性,如记录、密封类和switch表达式。Herbert Schildt采用他一贯的清晰、利落、务求准确的风格撰写本书,正是这种风格让他撰写的图书成为全世界数百万人的选择。 本书内容 数据类型、变量、数组和运算符 控制语句 类、对象和方法 方法重载和重写 继承 接口和包 异常处理 多线程编程 枚举、自动装箱和注解 I/O类 泛型 lambda表达式 模块 记录 密封类 文本块 switch表达式 instanceo
本书从整个Java后端研发的视角,通过大量的案例分析日常开发过程中可能遇到的150多个坑点及其解决方案,并讨论一些best实践。这些坑点涵盖编码(不仅涉及Java语法层面,还涉及多线程、连接池、数据库索引、事务、日志、Spring框架等层面)、系统设计、代码安全等方面。本书在剖析这些坑点时还会讲解排查思路和相关工具的使用,让读者不仅能了解常见的坑点,还能具备一定的问题分析能力,以便日后自行排查更多的坑点。
《Java精彩编程200例》汇集了与Java桌面程序开发相关的200个实例及源代码,每个实例都按实例说明、关键技术、实现过程、扩展学习的顺序进行分析解读。全书主要内容有Java基础应用、图形与图表操作、文字操作与数据库、网络安全与多线程、Swing程序设计。每个实例都是经过一线工程师精心编选的,具有很强的实用性,这些实例为开发人员提供了全面的解决方案。配书光盘附赠了实例的完整源程序及部分讲解视频。《Java精彩编程200例》既适合Java程序员参考,也适合高校学生、软件开发培训学员及相关求职人员学习。
本书以实用的设计模式为例,讲解了Java近年来在改善语法方面取得的进展,同时在实现这些模式的过程中展示了语言特性、设计模式与平台效率之间的关系。本书涵盖23种传统的设计模式、11种较为常见的模式,以及8种适用于多线程环境的并发模式。另外,本书还简要介绍了15种反模式。作者讲解这些模式的时候不仅给出了简洁、直观的范例代码,而且还利用UML类图与JFR工具展示了运用该模式的程序所具备的架构及运行细节,让读者能够更全面地了解模式对代码结构的影响,以及模式与Java虚拟机的交互情况。本书的特点在于把Java这种成熟的编程语言以及该语言最近新增的特性与各种设计模式结合起来,告诉读者怎样充分发挥Java的特性与优势,从而更好地实现设计模式,避免陷入空谈概念而无法落实的境地。
本书全面介绍了Java 8、9、10版本的新特性,包括Lambda表达式、方法引用、流、默认方法、Optional、CompletableFuture以及新的日期和时间API,是程序员了解Java新特性的经典指南。全书共分六个部分:基础知识、使用流进行函数式数据处理、使用流和Lambda进行高效编程、无所不在的Java、提升Java的并发性、函数式编程以及Java未来的演进。
每次揭示一个概念:通过带有范例的一系列小步骤,来逐渐解决某个复杂的问题。 告诉你如何描述问题、如何构思解决方案,如何开发、测试并调试程序。 学习输入与输出、决策与循环、类与方法、字符串与数组,以及递归与多态。 告诉你怎样选出合适的程序开发方法,以及如何运用重要的调试技能来排除程序故障。
本书是经典的《Java核心技术 卷I:基础知识》的新版。这一版对全书进行了全面更新,以反映Java SE 9、Java SE 10和Java SE 11的特性。书中囊括了Java的全部基础知识,提供了大量完整且具有实际意义的应用示例,详细介绍了Java语言基础、面向对象编程、反射与代理、接口与内部类、事件监听器模型、使用Swing UI工具进行图形用户界面程序设计、打包应用程序、异常处理、登录与调试、泛型编程、集合框架、多线程和并发等内容。
本书以帮助零基础读者学习并掌握计算机编程Java语言为宗旨,摒弃单调枯燥的理论内容讲解,由浅入深地引导读者学习Java语言的基础内容和核心技术,并采用大量实际工作场景的代码实例和图例,结合实际企业工作中的编程技巧的方式,增加读者的实战操作经验,提高分析解决问题的能力。本书的每一章特别编写了知识扩展章节,全面分析与归纳实际工作中Java编程技巧和互联网高级应用知识,引导读者深入挖掘计算机编程领域,进而能够多维度思考和理解计算机网络的应用。同时,本书还配有教学视频,对书中的复杂程序和代码加以详细解释和操作演示,便于初学者理解和提高学习效率,并按照正确的思路和方法运用到高新技术、移动互联网、智能大数据等大中小企业的计算机软件开发中。
本手册的愿景是码出高效,码出质量。它结合作者的开发经验和架构历程,提炼阿里巴巴集团技术团队的集体编程经验和软件设计智慧,浓缩成为立体的编程规范和*实践。众所周知,现代软件行业的高速发展对开发工程师的综合素质要求越来越高,因为不仅是编程相关的知识点,其他维度的知识点也会影响软件的*终交付质量,比如,数据库的表结构和索引设计缺陷可能带来软件的架构缺陷或性能风险;单元测试的失位导致系统集成测试困难;没有鉴权的漏洞代码易被黑客攻击等。所以,本手册以开发工程师为中心视角,划分为编程规约、异常日志、单元测试、安全规约、MySQL数据库、工程结构、设计规约七个维度,每个条目下提供相应的扩展解释和说明、正例和反例,全面、立体、形象地帮助开发工程师成长,有助于团队代码规约文化的形成。积小流成大海,积
本书内容主要是对《On Java 中文版 基础卷》的拓展延伸,重点讲解 Java 的高级特性、并发、设计模式等相关进阶知识,对一些和开发密切相关的底层操作(如 I/O 系统、底层并发、数据压缩等)进行深入探讨,同时针对基础卷的重点章节进行了补充说明(如第 3 章增补了一些关于集合的高级特性)。在附录中,作者给出了 67 条关于低级程序设计和编写代码的建议,并分享了自己成为程序员的一些经验之谈。 本书适合有一定项目开发经验的 Java 程序员阅读。
本书结合样例,介绍 Django 的基础知识、主要模块的开发以及权限管理等高级内容,并且通过图书管理系统、博客系统、车费管理系统 3 个项目的开发实战,使读者既能掌握 Django 的重要开发技术,又能对这些知识在项目中的综合应用有深入了解。 本书共有 16 章,分为 3 个篇章,准备篇介绍了 Web 框架以及 Django 的基本知识;入门篇详细讲解了路由系统、模板系统等5 个主要模块的开发过程,并通过图书管理系统和博客系统的开发综合应用这些知识;进阶篇介绍了 AJAX、中间件、权限管理等内容,并完成了车费管理系统的项目开发。 本书讲解详细,内容通俗易懂,案例丰富,适合 Python 进阶读者或 Django 开发入门读者阅读,也可以作为 Web 开发人员或编程爱好者的自学参考。
本书立足于当前主流互联网企业对Java开发人员的技术要求,分析并总结面试中常见的面试考点以提升Java开发人员的技术实力。通过结合作者和行业内多位阅历丰富的Java开发人员、面试官和猎头的工作经验,总结出高效的面试技巧,助力Java开发人员早日走出面试困惑期,收获满意的工作机会和丰厚的薪资。本书第1章讲解Java语言开发环境的搭建过程。第2章和第3章讲解Java开发人员面试中常见的数据结构和算法考点。第4章讲解Java开发人员面试中常见的Java基础相关的考点。第5章和第6章讲解Java开发人员面试中常见的并发编程考点。第7章和第8章讲解Java开发人员可能会面临的面试形式和应对面试所需的技巧。 本书内容翔实,贴近面试实践,考点讲解详尽,适用于所有Java语言面试候选人、分布式系统开发爱好者以及计算机相关专业的学生阅读,也可供具有一到三年Java开
本书主要围绕构建分布式系统架构的“中间件”实践展开介绍。开篇首先介绍了分布式系统架构的相关知识要点,包括其功能、作用以及演进历程,并由此引出了分布式中间件的相关介绍;紧接着重点介绍了目前在实际生产环境中应用得比较广泛的几款Java中间件,包括缓存中间件Redis、消息中间件RabbitMQ、统一协调管理中间件ZooKeeper及综合中间件Redisson等,主要介绍了这几款中间件的基本概念、典型的应用场景及相应的功能组件等。值得一提的是,本书在介绍这几款中间件的理论知识时,还以微框架Spring Boot作为奠基,整合相关中间件之间的依赖,并以笔者实际的经验结合实际项目中的典型业务场景进行代码实战。本书适合中间件实践经验为零的开发者阅读;而对于有一定Java应用开发经验的工程师而言,通过阅读本书可以了解中间件在构建企业级应用系统的过程中所