自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

春风落叶的博客

春风落叶无踪迹,何怨燕过不留痕。

  • 博客(32)
  • 资源 (25)
  • 收藏
  • 关注

原创 flatMap示例

flatMap示例什么是flatMap()回顾下面的数据结构,# Stream<String[]># Stream<Stream<String>># String[][][ [1, 2], [3, 4], [5, 6]]在Java8中,我们可以使用flatMap将上述数据结构转化为一下结构# Stream<String># String[][1, 2, 3, 4, 5, 6]为什么要平流处理包含超过一个级别的流,例

2021-02-20 08:40:46 1256 1

原创 Supplier示例

Supplier示例在Java 8中,Supplier是一个函数接口,不需要接收参数,返回一个结果@FunctionalInterfacepublic interface Supplier<T> { T get();}Supplier下面的示例用Supplier,返回当前时间import java.time.LocalDateTime;import java.time.format.DateTimeFormatter;import java.util.function

2021-02-20 08:40:17 439

原创 BiConsumer示例

BiConsumer示例在java8中,BiConsumer是一个函数接口,它接收两个参数,没有返回值@FunctionalInterfacepublic interface BiConsumer<T, U> { void accept(T t, U u);}BiConsumerimport java.util.function.Consumer;public class JavaBiConsumer1 { public static void main(Stri

2021-02-20 08:39:48 1225

原创 Java 8中的日期和时间API

Java 8中的日期和时间APIjava8日期和时间API介绍Java语言支持基于时间的对象,Java8发行版包含了一个基于不可变值得新API,这个类是线程安全的。这些类为构建它们的实例提供了流畅的API。java.time.LocalDate和java.time.LocalTime类提供了不带时区的日期和时间表示。它们代表观察者背景下的日期和时间,例如桌子上的日历或墙上的时钟。java.time.LocalDateTime代表日期和时间下面这段代码演示了这些类的用法。import java.t

2021-02-20 08:39:11 170 1

原创 Consumer示例

Consumer示例在Java8中,Consumer是一个函数接口,它接收一个参数,没有返回值@FunctionalInterfacepublic interface Consumer<T> { void accept(T t);}Consumerimport java.util.function.Consumer;public class Java8Consumer1 { public static void main(String[] args) {

2021-02-19 17:16:04 453

原创 BiPredicate示例

BiPredicate示例在Java8中,BiPredicate是1一个函数接口,它接收两个参数,返回一个boolean类型的结果。BiPredicate和Predicate是一样的,只不过它的test()接收两个参数@FunctionalInterfacepublic interface BiPredicate<T, U> { boolean test(T t, U u);}BiPredicateimport java.util.function.BiPredicate;

2021-02-19 17:08:59 1865

原创 Predicate示例

Predicate示例在Java8中,Predicate是一个函数接口,它接收一个实参,返回一个boolean类型的结果。它通常被用来处理一个对象集合的过滤@FunctionalInterfacepublic interface Predicate<T> { boolean test(T t);}Predicate在filter()中使用filter()接收predicate参数import java.util.Arrays;import java.util.List;i

2021-02-19 16:54:44 3900 1

原创 UnaryOperator示例

UnaryOperator示例在Java8中,UnaryOperator是一个参数接口,它继承自FunctionUnaryOperator接收一个参数,返回和参数同样类型的结果UnaryOperator.java@FunctionalInterfacepublic interface UnaryOperator<T> extends Function<T, T> {}Function接收任意类型的类型,返回任意类型的结果Function.java@Func

2021-02-19 16:34:43 2833

原创 BinaryOperator示例

BinaryOperator示例在Java8中,BinaryOperator是一个函数接口,它集成BiFunctionBinaryOperator接收两个同样类型的实参,返回和参数同样类型的结果类型BinaryOperator.java@FunctionalInterfacepublic interface BinaryOperator<T> extends BiFunction<T,T,T> {}BiFunction接收两个任意类型的实参,返回任意类型的结果

2021-02-19 16:26:26 4578

原创 BiFunction示例

BiFunction示例在Java8中,BiFunction是函数接口,它接收两个实参,返回一个对象BiFunction.java@FunctionalInterfacepublic interface BiFunction<T, U, R> { R apply(T t, U u);}T——function第一个实参的类型U——function第二个实参的类型R——function返回的结果类型BiFunction<T, U, R>下面这

2021-02-19 16:02:56 1151

原创 Function示例

Function示例在Java8中,Function是一个功能接口,它接收一个实参(T类型的对象),返回一个对象(R类型的对象),实参和返回的对象可以是不同的类型Function.java@FunctionalInterfacepublic interface Function<T, R> { R apply(T t);}T——function接收的参数类型R——function返回的结果类型Function<T, R>下面示例展示了接收一

2021-02-19 15:36:40 1064

原创 Stream的map()示例

Stream的map()示例在Java 8中,stream().map()可以将一个对象转化为其它对象。一下是一些示例。String的List列表转化为大写简单的一个java示例,将String的List列表转化为大写形式import java.util.ArrayList;import java.util.Arrays;import java.util.List;import java.util.stream.Collectors;public class TestJava8 {

2021-02-19 15:15:56 386

原创 Stream的Filter示例

Stream的Filter示例该篇将向你展示几个示例,用来演示Stream的filter()、collect()、findAny()和orElse的使用。Stream的filter()和collect()在Java 8之前的版本,想下面这样过滤List列表:import java.util.ArrayList;import java.util.Arrays;import java.util.List;public class BeforeJava8 { public static

2021-02-19 14:54:00 4402 1

原创 方法引用,双冒号(::)操作符

方法引用,双冒号(::)操作符在Java8中,双冒号操作符称为方法引用。下面这个例子中,匿名类打印ListList<String> list = Arrays.asList("node", "java", "python", "ruby");list.forEach(new Consumer<String>() { // anonymous class @Override public void accept(String str) {

2021-02-19 11:32:08 434

原创 Comparator 示例

Comparator 示例在这个例子中,我们将会向你展示如何使用java 8的lambda表达式去写一个Comparator,去对List进行排序传统的Comparator示例Comparator<Developer> byName = new Comparator<Developer>() { @Override public int compare(Developer o1, Developer o2) { retur

2021-02-08 16:18:24 244

原创 Convert List to Map

Convert List to Map几个java 8例子,展示了如何将List对象转化为Map,以及如何处理重复的keypackage com.mkyong.java8public class Hosting { private int Id; private String name; private long websites; public Hosting(int id, String name, long websites) { Id =

2021-02-08 15:43:07 241

原创 Java8的forEach范例

Java8的forEach范例遍历Map下面是一个遍历Map的常规方式public static void loopMapClassic() { Map<String, Integer> map = new HashMap<>(); map.put("A", 10); map.put("B", 20); map.put("C", 30); map.put("D", 40); map.put("E", 50

2021-02-08 11:24:06 415 1

原创 Quartz超时重试机制

高可用作为考究系统的一项重要指标,如何做到系统的高可用,谈及一个系统,这个话题就难以越过。Quartz作为目前调度框架的一个流行组件,如何保证Quartz的高可用,任务调度失败后,如何进行重试,这个也是一个值得关注的问题。 网上看过许多涉及定时调度的开源项目,但发现其都存在一个问题,并未对任务调度的失败做处理,仅仅只是简单的日志记录,以及手工重采。但是现实情况中,往往可能...

2019-07-04 20:13:16 6407 2

原创 晃眼一周,返程启航

        来也匆匆,去也匆匆。寥寥几日,怎奈别离!        头顶小白球,脚踏玻璃路。寒风轻拂面,炮声离人心。辞别故乡土,紧衣渐远行。莫敢回首望,如此几春秋。        终于又踏上了返程的旅途。昨天参加同村的高中同学聚会,听到了一些咋舌见闻,陡然发现小说也不全是假的。以前总觉得小说就是率性而为,随性而作,没想到居然也有事实依据,科学道理!        19年,算是一个新...

2019-02-11 21:55:37 217

原创 Spark总体架构

一个Spark应用包括5个重要部分:驱动程序、集群管理员、worker、执行者、任务1、workerworker为Spark应用提供CPU、内存和存储资源。worker把spark应用当成分布式进程在集群节点上执行2、集群管理员Spark使用集群管理员来获得执行作业所需要的集群资源。顾名思义,集群管理员管理集群中worker节点的计算资源。塔能跨应用从底层调度集群资源。它可以让...

2018-12-05 15:24:31 458

原创 spirngboot学习(一)

用过Spring Boot和Spring开发应用程序的伙计,那么心里一定对他们进行过比较,这里就不得不提及Spring Boot的最重要的核心:自动配置:针对很多Spring应用程序常见的应用功能,Spring Boot能自动提供相关配置。 起步依赖:告诉Spring Boot需要什么功能,它就能引入需要的库 命令行界面:这是Spring Boot的可选特性,借此你只需写代码就能完成完整的...

2018-09-23 14:51:48 158

原创 工作记事——(一)

最近工作用到多线程,接下来就说一下多线程。多线程也算是java里面一块很重要的内容。说到线程,就不得不谈一谈进程。我们启动电脑的任务管理器时,里面就有一栏——进程,一个进程可以开启多个线程,线程算是轻量级的。不过64位的java虚拟机,默认,一个进程开启的线程占用空间1024K,所以还是有限制的。谈到多线程的好处,最多的感受可能就是让程序运行得更快,试想让多个线程去执行一个任务,那么肯定比...

2018-09-19 08:34:16 626

翻译 Netty实战——Channel、EventLoop和ChannelFuture详解

Netty可以说是有Channel、EventLoop、ChannelFuture聚合起来的一个网络抽象代表Channel——Socket; EventLoop——控制流、多线程处理、并发 ChannelFuture——异步通知Channel接口基本的I/O操作(bing()、connect()、read()、和write())依赖于底层网络传输所提供的原始。在基于Java的网络编程...

2018-08-06 08:43:48 9927 4

翻译 Netty编写Echo客户端——(二)

Echo客户端将会:连接到服务器 发送一个或者多个消息 对于每个消息,等待并接收从服务器发回的相同的消息 关闭连接通过ChannelHandler实现客户端逻辑如同服务器,客户端将拥有一个用来处理数据的ChannelInboundHandler。在这个场景下,将拓展SimpleChannelInboundHandler类以处理所有必须的任务channnelActive()——在...

2018-08-06 08:14:34 374

翻译 Netty编写Echo服务器(一)

所有的Netty服务器都需要以下两个部分至少一个ChannelHandler——该组件实现了服务器对从客户端接收的数据的处理,即它的业务逻辑 引导——这是配置服务器的启动代码。至少,它会将服务器绑定到它要监听连接请求的端口上ChannelHandler和业务逻辑由于Echo服务器会响应传入的消息,因此只需要实现ChannelnboundHandler接口,用来定义响应入站的事件方法。这...

2018-08-03 08:49:07 1129

原创 算法——最大公约数

1、计算两个非负整数p和q的最大公约数。      思路:若q是0,则最大公约数就是p。否则,将p除以q得到余数r,p和q的最大公约数即为q何r的最大公约数public static int maxCommonDivisor(int p, int q) { if(q == 0) { return p; } int r = p % q; ma...

2018-07-27 10:41:14 779

原创 平常记事

    上个星期,大学同学来深圳找工作,住在我那,昨天刷抖音,看到一则短视频,情不自禁感叹,大学还能过得这么潇洒,真羡慕,情不自禁想到自己的大学生活。回忆起自己的大学生活,感觉就像在喝白开水。出来太早了,大四就出来工作,太着急了,而且实习生工资还贼低,广州一千五。该花半年时间考研,管它中还是不中,再花半年和女生到处潇洒,到处游玩。当然我说这也不是感叹想如何如何,只不过突然想到了一句俗语,只记得中间...

2018-05-28 09:41:46 114

原创 程序员的世界感觉就像是同性的世界,方圆十米都没妹子。

2017-09-19 09:40:22 340

转载 UML类图详解

在画类图的时候,理清类和类之间的关系是重点。类的关系有泛化(Generalization)、实现(Realization)、依赖(Dependency)和关联(Association)。其中关联又分为一般关联关系和聚合关系(Aggregation),合成关系(Composition)。下面我们结合实例理解这些关系。基本概念类图(Class Diagram): 类图是面向对象系统建模中最常用

2017-09-18 13:56:16 518

原创 设计模式学习——开始创建模式

简单工厂模式当需要创建大量的产品时,并且这些产品具有相同的接口,那个我们可以通过工厂方法来进行创建。比如我们有两个类public class College {public void study() {System.out.println("我在大学学习!”);}}public class HighSchool {public void study()

2017-09-18 08:56:01 370

原创 领导给我一个指令文档,写出一个调用加密机的函数,想哭

真心累,真心无助,这文档什么鬼,云里雾里,看都看不懂,如何搞。

2017-09-15 15:13:46 1570

原创 自己动手,难以足食

在java软件开发这一行,快工作了一年了,看过许多别人搭的框架,但是封装太多了,想自己搭个权限框架,但是动手之后才发现,遇到困难了,前台主界面不会做,上Logo、左中菜单、右中内容、下版权说明的布局就是弄不好,想把别人做的很好看的主界面搬过来,却发现,无从下手,所以想问问各位大神,你们搭框架时,这个界面是怎么弄的,那么好看!弄着很长时间了,就是弄不好,感觉心力交瘁,我想主攻后台数据处理,怎么感觉现

2017-08-16 08:45:36 249

剥开比原看代码.zip

通过问题驱动,由外而内,一点点剥开比原坚硬的外壳,看到里面的代码:(注:本系列中使用的代码基于bytom v1.0.1版本)初始化时生成的配置文件在哪儿?比原启动后去哪里连接别的节点?比原是如何监听p2p端口的?如何连上一个比原节点?如何从比原节点拿到区块数据?比原是如何把请求区块数据的信息发出去的?比原节点收到“请求区块数据”的信息后如何应答?比原的Dashboard是怎么做出来的?通过dashboard创建密钥时,前端的数据是如何传到后端的?

2019-12-18

Streaming Data

About the technology As humans, we're constantly filtering and deciphering the information streaming toward us. In the same way, streaming data applications can accomplish amazing tasks like reading live location data to recommend nearby services, tracking faults with machinery in real time, and sending digital receipts before your customers leave the shop. Recent advances in streaming data technology and techniques make it possible for any developer to build these applications if they have the right mindset. This book will let you join them. About the book Streaming Data is an idea-rich tutorial that teaches you to think about efficiently interacting with fast-flowing data. Through relevant examples and illustrated use cases, you'll explore designs for applications that read, analyze, share, and store streaming data. Along the way, you'll discover the roles of key technologies like Spark, Storm, Kafka, Flink, RabbitMQ, and more. This book offers the perfect balance between big-picture thinking and implementation details. What's inside The right way to collect real-time data Architecting a streaming pipeline Analyzing the data Which technologies to use and when About the reader Written for developers familiar with relational database concepts. No experience with streaming or real-time applications required. About the author Andrew Psaltis is a software engineer focused on massively scalable real-time analytics

2018-11-09

Hadoop Spark大数据巨量分析与机器学习整合开发实战

从浅显易懂的“大数据和机器学习”原理介绍和说明入手,讲述大数据和机器学习的基本概念,如:分类、分析、训练、建模、预测、机器学习(推荐引擎)、机器学习(二元分类)、机器学习(多元分类)、机器学习(回归分析)和数据可视化应用。为降低读者学习大数据技术的门槛,书中提供了丰富的上机实践操作和范例程序详解,展示了如何在单台Windows系统上通过Virtual Box虚拟机安装多台Linux虚拟机,如何建立Hadoop集群,再建立Spark开发环境。书中介绍搭建的上机实践平台并不限制于单台实体计算机。对于有条件的公司和学校,参照书中介绍的搭建过程,同样可以将实践平台搭建在多台实体计算机上,以便更加接近于大数据和机器学习真实的运行环境。

2018-11-09

Hadoop基础教程

Hadoop和云服务出现的历史背景,以及何时适用Hadoop的背景知识, 安装并配置Ha doop集群的最佳方式,根据手头的问题调整系统配置, 用Java和Ruby示例程序讲解如何编写运行在Hadoop上的程序, Amazon网络服务提供的托管Hadoop集群的运行方式,以及它与用户直接管理的Hadoop集群有何区别, Hadoop与关系数据库的融合,使用Hive执行SQL查询,使用Sqoop迁移数据, 组成Hadoop生态系统的其他项目和工具,以及Hadoop的发展方向, 针对初学者的有效方法, 通过清晰操作步骤讲解最有用的任务, 边干边学——立刻动手实践, 摆脱枯燥的二进制, 有启发意义的理想的案例,能够带给读者灵感,从而解决面临的问题, 促进读者动手练习的作业和习题

2018-11-09

Hadoop权威指南.大数据的存储与分析.第4版

本书结合理论和实践,由浅入深,全方位介绍了Hadoop 这一高性能的海量数据处理和分析平台。全书5部分24 章,第Ⅰ部分介绍Hadoop 基础知识,第Ⅱ部分介绍MapReduce,第Ⅲ部分介绍Hadoop 的运维,第Ⅳ部分介绍Hadoop 相关开源项目,第Ⅴ部分提供了三个案例,分别来自医疗卫生信息技术服务商塞纳(Cerner)、微软的人工智能项目ADAM(一种大规模分布式深度学习框架)和开源项目Cascading(一个新的针对MapReduce 的数据处理API)。本书是一本专业、全面的Hadoop 参考书和工具书,阐述了Hadoop 生态圈的新发展和应用,程序员可以从中探索海量数据集的存储和分析,管理员可以从中了解Hadoop 集群的安装和运维。

2018-11-01

深入理解ElasticSearch

本书译文经过精心组织,结合了译者对Elasticsearch的使用经验,并参考了IBM、微软、百度、腾讯等众多知名企业的业界专业人士的意见。本书翻译团队由拥有丰富Elasticsearch实践经验的搜索算法专家、架构师和开发者组成。其中,张世武负责第3、5、6章的翻译和校对工作,余洪淼负责第7、8、9章的翻译和校对,商旦负责第1、2、4章的翻译及全书校对。在本书翻译过程中,翻译团队经过多次讨论、审校,力求翻译准确、优雅

2018-11-01

Hadoop实战(第二版)

《Hadoop实战(第2版)》编辑推荐:第1版广受好评,第2版基于Hadoop及其相关技术最新版本撰写,从多角度做了全面的修订和补充。不仅详细讲解了新一代的Hadoop技术,而且全面介绍了Hive、HBase、Mahout、Pig、ZooKeeper、Avro、Chukwa等重要技术,是系统学习Hadoop技术的首选之作。

2018-11-01

Spark快速大数据分析

本书由 Spark 开发者及核心成员共同打造,讲解了网络大数据时代应运而生的、能高效迅捷地分析处理数据的工具——Spark,它带领读者快速掌握用 Spark 收集、计算、简化和保存海量数据的方法,学会交互、迭代和增量式分析,解决分区、数据本地化和自定义序列化等问题。

2018-10-31

java高并发编程详解

本书主要包含四个部分: 部分主要阐述Thread的基础知识,详细介绍线程的API使用、线程安全、线程间数据通信,以及如何保护共享资源等内容,它是深入学习多线程内容的基础。

2018-10-31

Hadoop实战

《Hadoop实战》作为云计算所青睐的分布式架构,Hadoop是一个用Java语言实现的软件框架,在由大量计算机组成的集群中运行海量数据的分布式计算,是谷歌实现云计算的重要基石。《Hadoop实战》分为3个部分,深入浅出地介绍了Hadoop框架、编写和运行Hadoop数据处理程序所需的实践技能及Hadoop之外更大的生态系统。 --------------------- 作者:cf406061841 来源:CSDN 原文:https://blog.csdn.net/cf406061841/article/details/79396391 版权声明:本文为博主原创文章,转载请附上博文链接!

2018-10-31

PaaS实现与运维管理:基于实战指南

PaaS实现与运维管理:基于实战指南,进阶的必备书籍。

2018-07-20

TensorFlow官方文档中文版

TensorFlow官方中文文档,学习TensorFlow的必备的最好的资料

2018-06-28

fscapture8.5中文破解版

fscapture8.5中文破解版,截图的好帮手,好工具,值得推广使用。

2018-06-28

Python爬虫开发与项目实战

 l 由浅入深,从Python和Web前端基础开始讲起,逐步加深难度,层层递进。   l 内容详实,从静态网站到动态网站,从单机爬虫到分布式爬虫,既包含基础知识点,又讲解了关键问题和难点分析,方便读者完成进阶。   l 实用性强,本书共有9个爬虫项目,以系统的实战项目为驱动,由浅及深地讲解爬虫开发中所需的知识和技能。   难点详析,对js加密的分析、反爬虫措施的突破、去重方案的设计、分布式爬虫的开发进行了细致的讲解。

2018-06-20

Spring Boot实战 ,丁雪丰 (译者)

本书以Spring应用程序开发为中心,全面讲解如何运用Spring Boot提高效率,使应用程序的开发和管理更加轻松有趣。作者行文亲切流畅,以大量示例讲解了Spring Boot在各类情境中的应用,内容涵盖起步依赖、Spring Boot CLI、Groovy、Grails、Actuator。对于Spring Boot开发应用中较为繁琐的内容,附录奉上整理完毕的表格,一目了然,方便读者查阅。

2018-06-20

艾伯特Python网络爬虫实战

网络爬虫是互联网上进行信息采集的通用手段,在互联网的各个专业方向上都是不可或缺的底层技术支撑。该书从爬虫基础开始,全面介绍了Python网络爬虫技术,并且包含各种经典的网络爬虫项目案例。

2018-06-12

利用pyhon进行数据分析,是学习python以及进阶python必备书籍

利用pyhon进行数据分析,是学习python以及进阶python必备书籍!!!!!!!!!!!!!!!

2018-06-12

tomcat运行php项目必须的jar包。

tomcat运行php项目必须的jar包。!!!!!!!!!!!!!!!!

2018-06-12

数据库查询优化器的艺术+原理解析与SQL性能...

数据库领域泰斗王珊教授亲自作序推荐,PostgreSQL中国社区和中国用户会发起人以及来自Oracle、新浪、网易、华为等企业的数位资深数据库专家联袂推荐。 从原理角度深度解读和展示数据库查询优化器的技术细节和全貌;从源码实现角度全方位深入分析MySQL和PostgreSQL两大主流开源数据库查询优化器的实现原理;从工程实践的角度对比了两大数据库的查询优化器的功能异同和实现异同。它是所有数据开发工程师、内核工程师、DBA以及其他数据库相关工作人员值得反复研读的一本书。

2018-05-28

JavaEE开发的颠覆者 Spring Boot实战 完整版

《JavaEE开发的颠覆者 Spring Boot实战》是国内市场上为数不多的讲解Spring Boot的中文书。本书从Spring 基础、Spring MVC 基础讲起,适合初学者。涵盖了使用Spring Boot 进行Java EE 开发的绝大数应用场景,如Web 开发、数据访问、安全控制、批处理、异步消息、系统集成、开发与部署、应用监控、分布式系统开发等。

2018-05-28

mysql性能优化

MYSQL 应该是最流行了 WEB 后端数据库。WEB 开发语言近期发展非常快,PHP, Ruby, Python, Java 各有特点,尽管 NOSQL 近期越來越多的被提到,可是相信大部分架构师还是会选择 MYSQL 来做数据存储。 MYSQL 如此方便和稳定。以至于我们在开发 WEB 程序的时候非常少想到它。即使想到优化也是程序级别的,比方。不要写过于消耗资源的 SQL 语句。可是除此之外,在整个系统上仍然有非常多能够优化的地方。

2018-05-28

SSM+mybatis整合详细教程

Spring是一个开源框架,Spring是于2003 年兴起的一个轻量级的Java 开发框架,由Rod Johnson 在其著作Expert One-On-One J2EE Development and Design中阐述的部分理念和原型衍生而来。它是为了解决企业应用开发的复杂性而创建的。Spring使用基本的JavaBean来完成以前只可能由EJB完成的事情。然而,Spring的用途不仅限于服务器端的开发。从简单性、可测试性和松耦合的角度而言,任何Java应用都可以从Spring中受益。 简单来说,Spring是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架

2017-09-19

人工智能(原书第二版)

人工智能是一门极富挑战性的科学,从事这项工作的人必须懂得计算机知识,心理学和哲学。人工智能是包括十分广泛的科学,它由不同的领域组成,如机器学习,计算机视觉等等,总的说来,人工智能研究的一个主要目标是使机器能够胜任一些通常需要人类智能才能完成的复杂工作。但不同的时代、不同的人对这种“复杂工作”的理解是不同的

2017-09-19

重构-改善既有代码的设计

重构(Refactoring)就是通过调整程序代码改善软件的质量、性能,使其程序的设计模式和架构更趋合理,提高软件的扩展性和维护性。

2017-09-19

图解设计模式

原版连续畅销12年、重印25次!, 194张图表 + Java示例代码 = 轻松理解GoF的23种设计模式, 《程序员的数学》《数学女孩》作者结城浩又一力作, ◆图文并茂, 194张图表(包括57张UML类图)穿插文中,帮助理解各设计模式, ◆通俗易懂, 用浅显的语言逐一讲解23种设计模式,读完此书会发现GoF书不再晦涩难懂, ◆专业实用, 编写了Java程序代码来实现设计模式,每章附带练习题和答案,用以熟练掌握设计 模式, ◆拓展进阶, 必要时对Java语言的功能进行了补充说明,可加深对Java的理解。此外,如果了解C++语言,同样可以轻松理解本书内容, 本书适合以下读者阅读, •对面向对象开发感兴趣的人, •对设计模式感兴趣的人(特别是阅读了GoF书但是觉得难以理解的人), •所有Java程序员(特别是对抽象类和接口的理解不充分的人), 本书以浅显易懂的语言逐一说明了GoF的23种设计模式。在讲解过程中,不仅搭配了丰富的图片,而且理论结合实例,用Java语言编写代码实现了设计模式的程序,让程序真正地运行起来,并提供了运用模式解决具体问题的练习题和答案。除此以外,本书在必要时还对Java语言的功能进行补充说明,以加深读者对Java的理解。

2017-09-18

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除