《TensorFlow官方文档》入门指南

入门指南

有关TensorFlow编程基础知识的简要介绍,参考以下指南:

MNIST(一个大型的手写体数字数据库,译者注)已经成为试用新机器学习工具包的规范数据集。我们提供三个指南,每个指南都展示了在TensorFlow上训练MNIST模型的不同方法:

Read more

并发队列-无界阻塞延迟队列DelayQueue原理探究

一、前言

DelayQueue队列中每个元素都有个过期时间,并且队列是个优先级队列,当从队列获取元素时候,只有过期元素才会出队列。
Read more

Java中调度线程池ScheduledThreadPoolExecutor原理探究

一、 前言

前面讲解过Java中线程池ThreadPoolExecutor原理探究,ThreadPoolExecutor是Executors中一部分功能,下面来介绍另外一部分功能也就是ScheduledThreadPoolExecutor的实现,后者是一个可以在一定延迟时候或者定时进行任务调度的线程池。
Read more

JEP 200:模块化JDK

原文链接   译者:carvendy

JEP 200:模块化JDK

作者  Mark Reinhold
创建  2014/07/22 14:08
更新  2017/03/08 13:58
类型  特性
状态  集成
域   SE
JSR   376
讨论  拼图的开发在openjdk.java.net
努力  XL
持续时间  XL
优先  l
检验人 Alan Bateman, Alex Buckley, Paul Sandoz
支持  Brian Goetz
发行  9
版本  8051618
依赖  JEP 220:模块化运行时镜像
JEP 261:模块系统
JEP 201:模块化源码

Read more

常用开源框架扩展清单之原理

一、前言

评价一个框架是否是优秀的,其中必有一点是该框架是否留足了可扩展的接口。我们在实际做项目中很多情况下就是基于某某框架,然后在这个框架留出的扩展接口上进行业务开发,所以很有必要对这些框架留出了哪些扩展点,这些扩展点是干啥用的有个心知肚明的了解。本文针对作者项目中用到的tomcat,spring扩展点进行记录,作为记录笔记,以便查找。
Read more

ClassLoader解惑

一、什么是Classloader

一个Java程序要想运行起来,首先需要经过编译生成 .class文件,然后创建一个运行环境(jvm)来加载字节码文件到内存运行,而.class 文件是怎样被加载中jvm 中的就是Java Classloader所做的事情。

那么.class文件什么时候会被类加载器加载到jvm中运行那?比如执行new操作时候,当我们使用Class.forName(“包路径+类名”),Class.forName(“包路径+类名”,classloader),classloader.loadclass(“包路径+类名”);时候就触发了类加载器去类加载对应的路径去查找*.class,并创建Class对象。
Read more

《Maven官方文档》选择可移植的Wagon提供者

原文链接   译者:carvendy

选择可移植的Wagon提供者

默认,Maven使用java.net.URLConnectionHttpURLConnection)类提供使用JDK接入仓库使用HTTP/HTTPS协议。不行地,支持这个实现由确定的bug,Maven使用这可能发现不能链接服务端并需要一些配置。一个奇怪的行为例包含着行包装授权头Base64值,当密码很长和使用缓存优先可以授权连接同样的服务端。

Maven 2.2.0 尝试修改这问题通过Wagon实现基于Apache HttpClient。不幸地,很快地HttpClient不支持NTLM(至少,version 2),影响意味着用户在代理服务器在NTLMv2后不能使用Maven 2.2.0。

希望地,解决这些,Maven 2.2.1将支持指定你想使用的Wagon提供者和给定的协议在构建过程中。从role-hint组件为了Wagon,提供者名字将被附加到协议使用的格式==<protocol>-<provider>==。

Maven 2.2.1,两种方式指定Wagon提供者应该使用:命令行,或者==<server>配置部分在settings.xml==。 Read more

《JAVA模块化系统》翻译邀请

2017年6月13日份,JAVA模块化系统在JCP执行委员会中投票通过,意味着在JAVA9中我们将能使用JAVA的模块化能力,我们团队也在开发和使用一个模块化框架TITAN。所以并发网本月组织翻译JAVA模块化系统 (拼图项目)。

Read more

《Maven官方文档》密码加密

原文链接   译者:carvendy

密码加密

  1. 介绍
  2. 怎么创建一个主密码
  3. 怎么加密服务端密码
  4. 怎么保持主密码可移动驱动器
  5. 提示

Read more

常用开源框架中设计模式使用分析

一、前言

说起来设计模式,大家应该都耳熟能详,设计模式代表了软件设计的最佳实践,是经过不断总结提炼出来的代码设计经验的分类总结,这些模式或者可以简化代码,或者可以是代码逻辑开起来清晰,或者对功能扩展很方便…。

设计模式按照使用场景可以分为三大类:创建型模式(Creational Patterns)、结构型模式(Structural Patterns)、行为型模式(Behavioral Patterns)。

Read more

UML建模图实战笔记

一、前言

UML:Unified Modeling Language(统一建模语言),使用UML进行建模的作用有哪些:

  • 可以更好的理解问题
  • 可以及早的发现错误或者被遗漏的点
  • 可以更加方便的进行组员之间的沟通
  • 支持面向对象软件开发建模,可以更好的描述显示编程的情景。
  • 对于复杂的系统来说,如果概要模型做的好,那么整个系统的模型也就很清晰明了。

Read more

JAVA互斥锁(synchronized&Lock):行为分析及源码

JVM中有这样一段注释:

// The base-class, PlatformEvent, is platform-specific while the ParkEvent is
// platform-independent.  PlatformEvent provides park(), unpark(), etc., and
// is abstract -- that is, a PlatformEvent should never be instantiated except
// as part of a ParkEvent.
// Equivalently we could have defined a platform-independent base-class that
// exported Allocate(), Release(), etc.  The platform-specific class would extend
// that base-class, adding park(), unpark(), etc.
//
// A word of caution: The JVM uses 2 very similar constructs:
// 1. ParkEvent are used for Java-level "monitor" synchronization.
// 2. Parkers are used by JSR166-JUC park-unpark.
//
// We'll want to eventually merge these redundant facilities and use ParkEvent.

Read more

并发队列中迭代器弱一致性原理探究

一、前言

并发队列里面的Iterators是弱一致性的,next返回的是队列某一个时间点或者创建迭代器时候的状态的反映。当创建迭代器后,其他线程删除了该元素时候并不会抛出java.util.ConcurrentModificationException异常,能够保持创建迭代器后的元素一定被正确的next出来。

Read more

Java NIO系列教程(十 五)Java NIO Path

原文链接  译者:章筱虎

Path接口是java NIO2的一部分。首次在java 7中引入。Path接口在java.nio.file包下,所以全称是java.nio.file.Path。 java中的Path表示文件系统的路径。可以指向文件或文件夹。也有相对路径和绝对路径之分。绝对路径表示从文件系统的根路径到文件或是文件夹的路径。相对路径表示从特定路径下访问指定文件或文件夹的路径。相对路径的概念可能有点迷糊。不用担心,我将在本文的后面详细介绍相关细节。

不要将文件系统的path和操作系统的环境变量path搞混淆。java.nio.file.Path接口和操作系统的path环境变量没有任何关系。

在很多方面,java.nio.file.Path接口和java.io.File有相似性,但也有一些细微的差别。在很多情况下,可以用Path来代替File类。

Read more

《Maven官方文档》目录指南

原文链接   译者:carvendy

文档

Maven入门

介绍

Read more

return top