自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

程序那些事

最通俗的解读,最深刻的干货,最简洁的教程,众多你不知道的小技巧,尽在程序那些事!

  • 博客(42)
  • 资源 (27)
  • 论坛 (1)
  • 收藏
  • 关注

原创 java程序员从小工到专家成神之路(2020版)-持续更新中,附详细文章教程
原力计划

java作为第一大编程语言,可谓源远流长,一代又一代的java程序员前仆后继走在java学习的路上。java程序员的学习之路在2020年又有什么变化呢?本文详细附上了每一个部分所需知识的教程链接地址,并会持续更新,希望能够和大家一起进步!

2020-04-13 10:16:38 16776 8

原创 Iterator to list的三种方法
原力计划

文章目录简介使用while使用ForEachRemaining使用stream总结Iterator to list的三种方法简介集合的变量少不了使用Iterator,从集合Iterator非常简单,直接调用Iterator方法就可以了。那么如何从Iterator反过来生成List呢?今天教大家三个方法。使用while最简单最基本的逻辑就是使用while来遍历这个Iterator,在遍历...

2020-04-30 07:02:54 8875

原创 fail-safe fail-fast知多少
原力计划

文章目录简介Fail-fast IteratorFail-fast 的原理Fail-safe Iterator总结fail-safe fail-fast知多少简介我们在使用集合类的时候,通常会需要去遍历集合中的元素,并在遍历中对其中的元素进行处理。这时候我们就要用到Iterator,经常写程序的朋友应该都知道,在Iterator遍历的过程中,是不能够修改集合数据的,否则就会抛出Concurr...

2020-04-30 06:54:50 9725

原创 JDK14的新特性:Lombok的终结者record
原力计划

文章目录简介新的Record类型探讨Record的秘密record扩展总结JDK 14的新特性:Lombok的终结者record简介自从面向对象产生之后,程序界就开始了新的变化,先是C发展到了C++,后面java横空出世,大有一统江湖的趋势。面向对象凭借其结构化的特点和在大型项目中的优势,一路蓬勃发展到今。面向对象不是不好,但是太繁琐。比如我们要定义一个简单的存储数据的结构,比如说Use...

2020-04-30 06:48:56 9563 1

原创 自定义parallelStream的thread pool

文章目录简介通常操作使用自定义ForkJoinPool总结自定义parallelStream的thread pool简介之前我们讲到parallelStream的底层使用到了ForkJoinPool来提交任务的,默认情况下ForkJoinPool为每一个处理器创建一个线程,parallelStream如果没有特别指明的情况下,都会使用这个共享线程池来提交任务。那么在特定的情况下,我们想使用...

2020-04-29 07:14:03 8725

原创 java 8中构建无限的stream
原力计划

文章目录简介基本使用自定义类型总结java 8中构建无限的stream简介在java中,我们可以将特定的集合转换成为stream,那么在有些情况下,比如测试环境中,我们需要构造一定数量元素的stream,需要怎么处理呢?这里我们可以构建一个无限的stream,然后调用limit方法来限定返回的数目。基本使用先看一个使用Stream.iterate来创建无限Stream的例子: ...

2020-04-29 07:09:46 8636

原创 java 8中 predicate chain的使用
原力计划

文章目录简介基本使用使用多个Filter使用复合Predicate组合PredicatePredicate的集合操作总结java 8中 predicate chain的使用简介Predicate是一个FunctionalInterface,代表的方法需要输入一个参数,返回boolean类型。通常用在stream的filter中,表示是否满足过滤条件。 boolean test(T t...

2020-04-28 07:39:47 8791

原创 JDK 14的新特性:更加好用的NullPointerExceptions
原力计划

JDK 14的新特性:更加好用的NullPointerExceptions让99%的java程序员都头痛的异常就是NullPointerExceptions了。NullPointerExceptions简称NPE,它是运行时异常的一种,也是java程序中最最容易出现的异常。出现了NullPointerExceptions之后我们怎么处理呢?一般情况下就是看日志,看一下到底哪一行出错了。如果这...

2020-04-28 07:33:26 9304

原创 技术回顾系列:最新最热门的技术大事-第一周

技术回顾系列:最新最热门的技术大事-第一周每一周我们都会回顾一下上周发生的有趣的事情,现在让我们来看看上周都发生了哪些事情吧:Apache Kafka 2.5.0发布了Apache软件基金会在四月16日发布了最新的Apache Kafka 2.5.0版本。该版本包含了最新的安全更新,新的指标和诸多的更新。Kafka是一个分布式的消息处理平台,最开始是由LinkedIn开发的,并且在20...

2020-04-28 07:25:14 8736

原创 JDK 14的新特性:instanceof模式匹配

JDK14在2020年的3月正式发布了。可惜的是正式特性只包含了最新的Switch表达式,而Records,patterns,text blocks仍然是预览特性。本文要讲的就是JDK14的一个预览特性instanceof的pattern matching。 也就是说在instanceof中可以使用模式匹配了。怎么理解呢?我们先举个历史版本中使用instanceof的例子。假如我们是动物园的管理员,动物园里面有Girraffe和Hippo两种动物

2020-04-27 07:36:41 8847

原创 JDK 15 JAVA 15的新特性展望
原力计划

伴随着2020的寒冬和新冠病毒的肆虐,JAVA迎来了久未已久的JAVA 14。自从2017年JAVA 9发布之后,JAVA的发布版本跟上了敏捷开发的步伐,小步快跑,Java平台发布节奏已从每3年以上的主要版本转变为每6个月发布一次功能。现在,每年的3月和9月都会发布新的版本功能。三月已过,九月还远吗?在JAVA 14中,推出了swith的最终版本,并且支持了NVM。今天本文将会展望一下JAVA 15中会带给我们的新特性

2020-04-27 07:27:11 15218

原创 怎么break java8 stream的foreach
原力计划

文章目录简介使用Spliterator自定义forEach方法总结怎么break java8 stream的foreach简介我们通常需要在java stream中遍历处理里面的数据,其中foreach是最最常用的方法。但是有时候我们并不想处理完所有的数据,或者有时候Stream可能非常的长,或者根本就是无限的。一种方法是先filter出我们需要处理的数据,然后再foreach遍历。那...

2020-04-26 07:45:34 9114

原创 java 8 stream中的Spliterator简介
原力计划

文章目录简介tryAdvancetrySplitestimateSizecharacteristics举个例子总结java 8 stream中的Spliterator简介简介Spliterator是在java 8引入的一个接口,它通常和stream一起使用,用来遍历和分割序列。只要用到stream的地方都需要Spliterator,比如List,Collection,IO channel等...

2020-04-26 07:40:44 9123

原创 怎么在java中创建一个自定义的collector
原力计划

文章目录简介Collector介绍自定义Collector总结怎么在java中创建一个自定义的collector简介在之前的java collectors文章里面,我们讲到了stream的collect方法可以调用Collectors里面的toList()或者toMap()方法,将结果转换为特定的集合类。今天我们介绍一下怎么自定义一个Collector。Collector介绍我们先看一...

2020-04-25 07:56:27 7124

原创 java 8 stream reduce详解和误区
原力计划

文章目录简介reduce详解总结java 8 stream reduce详解和误区简介Stream API提供了一些预定义的reduce操作,比如count(), max(), min(), sum()等。如果我们需要自己写reduce的逻辑,则可以使用reduce方法。本文将会详细分析一下reduce方法的使用,并给出具体的例子。reduce详解Stream类中有三种reduce,分...

2020-04-25 07:51:24 7022

原创 java stream中Collectors的用法
原力计划

在java stream中,我们通常需要将处理后的stream转换成集合类,这个时候就需要用到stream.collect方法。collect方法需要传入一个Collector类型,要实现Collector还是很麻烦的,需要实现好几个接口。于是java提供了更简单的Collectors工具类来方便我们构建Collector。下面我们将会具体讲解Collectors的用法

2020-04-24 07:46:58 9044

原创 java关于throw Exception的一个小秘密

文章目录简介throw小诀窍总结java关于throw Exception的一个小秘密简介之前的文章我们讲到,在stream中处理异常,需要将checked exception转换为unchecked exception来处理。我们是这样做的: static <T> Consumer<T> consumerWrapper( Throw...

2020-04-24 07:42:37 9184

原创 java 8 lambda表达式中的异常处理
原力计划

文章目录简介处理Unchecked Exception处理checked Exception总结java 8 lambda表达式中的异常处理简介java 8中引入了lambda表达式,lambda表达式可以让我们的代码更加简介,业务逻辑更加清晰,但是在lambda表达式中使用的Functional Interface并没有很好的处理异常,因为JDK提供的这些Functional Interf...

2020-04-23 06:59:08 9600

原创 java 8 Stream中操作类型和peek的使用
原力计划

文章目录简介中间操作和终止操作peek结论java 8 Stream中操作类型和peek的使用简介java 8 stream作为流式操作有两种操作类型,中间操作和终止操作。这两种有什么区别呢?我们看一个peek的例子:Stream<String> stream = Stream.of("one", "two", "three","four"); stream....

2020-04-23 06:54:41 9849

原创 怎么在java 8的map中使用stream
原力计划

文章目录简介基本概念使用Stream获取map的key使用stream获取map的value总结怎么在java 8的map中使用stream简介Map是java中非常常用的一个集合类型,我们通常也需要去遍历Map去获取某些值,java 8引入了Stream的概念,那么我们怎么在Map中使用Stream呢?基本概念Map有key,value还有表示key,value整体的Entry。创建...

2020-04-22 07:30:43 9341

原创 在java 8 stream表达式中实现if/else逻辑

文章目录简介传统写法使用filter总结简介在Stream处理中,我们通常会遇到if/else的判断情况,对于这样的问题我们怎么处理呢?还记得我们在上一篇文章lambda最佳实践中提到,lambda表达式应该越简洁越好,不要在其中写臃肿的业务逻辑。接下来我们看一个具体的例子。传统写法假如我们有一个1 to 10的list,我们想要分别挑选出奇数和偶数出来,传统的写法,我们会这样使用:...

2020-04-22 07:25:57 11086 7

原创 Lambda表达式最佳实践
原力计划

文章目录简介优先使用标准Functional接口使用@FunctionalInterface注解在Functional Interfaces中不要滥用Default Methods使用Lambda 表达式来实例化Functional Interface不要重写Functional Interface作为参数的方法Lambda表达式和内部类是不同的Lambda Expression尽可能简洁使用方法...

2020-04-21 07:20:05 8970

原创 java并发Exchanger的使用
原力计划

文章目录简介类定义类继承构造函数两个主要方法具体的例子结语简介Exchanger是java 5引入的并发类,Exchanger顾名思义就是用来做交换的。这里主要是两个线程之间交换持有的对象。当Exchanger在一个线程中调用exchange方法之后,会等待另外的线程调用同样的exchange方法。两个线程都调用exchange方法之后,传入的参数就会交换。类定义public class...

2020-04-21 07:13:50 8945

原创 java中functional interface的分类和使用
原力计划

文章目录简介Functional InterfaceFunction:一个参数一个返回值BiFunction:接收两个参数,一个返回值Supplier:无参的FunctionConsumer:接收一个参数,不返回值Predicate:接收一个参数,返回booleanOperator:接收和返回同样的类型总结简介java 8引入了lambda表达式,lambda表达式实际上表示的就是一个匿名的f...

2020-04-20 11:13:13 9113

原创 java 8 Streams简介
原力计划

文章目录简介Functional InterfaceFunction:一个参数一个返回值BiFunction:接收两个参数,一个返回值Supplier:无参的FunctionConsumer:接收一个参数,不返回值Predicate:接收一个参数,返回booleanOperator:接收和返回同样的类型总结简介java 8引入了lambda表达式,lambda表达式实际上表示的就是一个匿名的f...

2020-04-20 11:07:46 9080

原创 一篇文章让你彻底弄懂SSL/TLS协议
原力计划

文章目录SSL/TLS的应用TLS协议的架构握手协议主密码和预备主密码TLS记录协议一篇文章让你彻底弄懂SSL/TLS协议SSL/TLS是一种密码通信框架,他是世界上使用最广泛的密码通信方法。SSL/TLS综合运用了密码学中的对称密码,消息认证码,公钥密码,数字签名,伪随机数生成器等,可以说是密码学中的集大成者。SSL(Secure Socket Layer)安全套接层,是1994年由Net...

2020-04-19 07:44:23 10997

原创 基于口令的密码(PBE)

基于口令的密码(PBE)基于口令的密码(Password Based Encryption,PBE)是一种基于口令生成密钥,并使用该密钥进行加密的方法。其中加密和解密使用的是同一个密钥。根据用户自己的口令和salt生成口令密码,我们先看下加密的过程:加密的过程可以分为这几步:生成KEK密钥使用伪随机数生成器来生成salt将salt和用户自己的口令使用单向散列函数算法生成KEK密...

2020-04-18 07:47:27 9378

原创 更加安全的密钥生成方法Diffie-Hellman

更加安全的密钥生成方法Diffie-Hellman之前我们谈到了密钥配送的问题,这个世界是如此的危险, 一不小心通信线路就会被监听,那么我们怎么在这种不安全的线路中传递密钥呢?这里我们介绍一下Diffie-Hellman密钥交换算法。这个算法是由Whitfield Diffie和Martin Hellman在1976年共同发明的一种算法。通过这个算法,双方只需要交换某些共同的信息就可以生成出...

2020-04-17 07:27:25 9310

原创 有关密钥的最全总结都在这了
原力计划

文章目录各种密钥总结其他密钥分类密钥的管理密钥详解在之前的文章中,我们讲到了对称密码,公钥密码,消息认证码和数字签名等密码学的技术,这些技术中都使用到了一个叫做密钥的东西。那么到底什么是密钥呢?密钥就是一个key,通过这个key可以获得最终的明文。所以密钥其实是和明文等价的。举个例子,保险箱里面放着十万美元,保险箱被锁住了,并且有一个钥匙。那么这个拥有钥匙的人和拥有了十万美元是等价的。各...

2020-04-17 07:19:48 10835 4

原创 一文读懂密码学中的证书
原力计划

一文读懂密码学中的证书之前的文章中,我们讲到了数字签名,数字签名的作用就是防止篡改和伪装,并且能够防止否认。但是要正确运用数字签名技术还有一个非常大的前提,那就是用来验证签名的公钥必须真正的属于发送者。如果你获取到的公钥是伪造的,那么不管你的签名算法多完美,也是会得到错误的结果。那么我们怎么才能安全的获得发送者的公钥呢?这里就需要使用到证书了。所谓证书就是通过第三方的可信机构对发送者的公钥进...

2020-04-16 07:24:26 9733

原创 java内存模型(JMM)和happens-before
原力计划

文章目录重排序Happens-Before安全发布初始化安全性java内存模型(JMM)和happens-before我们知道java程序是运行在JVM中的,而JVM就是构建在内存上的虚拟机,那么内存模型JMM是做什么用的呢?我们考虑一个简单的赋值问题:int a=100;JMM考虑的就是什么情况下读取变量a的线程可以看到值为100。看起来这是一个很简单的问题,赋值之后不就可以读到值了...

2020-04-16 07:17:53 9065

原创 非阻塞算法(Lock-Free)的实现
原力计划

文章目录非阻塞的栈非阻塞的链表非阻塞算法(Lock-Free)的实现上篇文章我们讲到了使用锁会带来的各种缺点,本文将会讲解如何使用非阻塞算法。非阻塞算法一般会使用CAS来协调线程的操作。虽然非阻塞算法有诸多优点,但是在实现上要比基于锁的算法更加繁琐和负责。本文将会介绍两个是用非阻塞算法实现的数据结构。非阻塞的栈我们先使用CAS来构建几个非阻塞的栈。栈是最简单的链式结构,其本质是一个链表...

2020-04-15 10:24:17 9070

原创 非阻塞同步机制和CAS
原力计划

文章目录什么是非阻塞同步悲观锁和乐观锁CAS非阻塞同步机制和CAS我们知道在java 5之前同步是通过Synchronized关键字来实现的,在java 5之后,java.util.concurrent包里面添加了很多性能更加强大的同步类。这些强大的类中很多都实现了非阻塞的同步机制从而帮助其提升性能。什么是非阻塞同步非阻塞同步的意思是多个线程在竞争相同的数据时候不会发生阻塞,从而能够在更加...

2020-04-15 10:17:49 9026

原创 同步类的基础AbstractQueuedSynchronizer(AQS)
原力计划

同步类的基础AbstractQueuedSynchronizer(AQS)我们之前介绍了很多同步类,比如ReentrantLock,Semaphore, CountDownLatch, ReentrantReadWriteLock,FutureTask等。AQS封装了实现同步器时设计的大量细节问题。他提供了FIFO的wait queues并且提供了一个int型的state表示当前的状态。根据...

2020-04-14 12:07:39 8968

原创 由于不当的执行顺序导致的死锁
原力计划

为了保证线程的安全,我们引入了加锁机制,但是如果不加限制的使用加锁,就有可能会导致顺序死锁(Lock-Ordering Deadlock)。上篇文章我们也提到了在线程词中因为资源的不足而导致的资源死锁(Resource Deadlock)。本文将会讨论一下顺序死锁的问题。我们来讨论一个经常存在的账户转账的问题。账户A要转账给账户B。为了保证在转账的过程中A和B不被其他的线程意外的操作,我们需要...

2020-04-11 08:58:03 9159

原创 java中有界队列的饱和策略(reject policy)
原力计划

文章目录AbortPolicyDiscardPolicyDiscardOldestPolicyCallerRunsPolicy使用Semaphorejava中有界队列的饱和策略(reject policy)我们在使用ExecutorService的时候知道,在ExecutorService中有个一个Queue来保存提交的任务,通过不同的构造函数,我们可以创建无界的队列(ExecutorServ...

2020-04-10 10:17:55 9125

原创 万万没想到,线程居然被饿死了!

我们的线程被饿死了我们在构建线程池的时候可以构建单个线程的线程池和多个线程的线程池。那么线程池使用不当可不可能产生死锁呢?我们知道死锁是循环争夺资源而产生的。线程池中的线程也是资源的一种,那么如果对线程池中的线程进行争夺的话也是可能产生死锁的。在单个线程的线程池中,如果一个正在执行的线程中,使用该线程池再去提交第二个任务,因为线程池中的线程只有一个,那么第二个任务将会等待第一个任务的执行完成...

2020-04-09 10:11:44 9239

原创 使用ExecutorService来停止线程服务
原力计划

文章目录使用shutdown使用shutdownNow使用ExecutorService来停止线程服务之前的文章中我们提到了ExecutorService可以使用shutdown和shutdownNow来关闭。这两种关闭的区别在于各自的安全性和响应性。shutdownNow强行关闭速度更快,但是风险也更大,因为任务可能正在执行的过程中被结束了。而shutdown正常关闭虽然速度比较慢,但是却...

2020-04-08 09:57:04 9373

原创 都2020年了,这5个java IDE神器你还不知道?
原力计划

TIOBE的4月份编程语言排行榜出来了,java还是稳坐第一位,java最新的版本也到了13,一直以来java凭借其企业级应用的优势和大量的框架级应用俘获了大量的粉丝和企业客户。谈到开发者,java肯定是个绕不过去的话题,那么这么多的java开发者到底都用哪些IDE呢?好的IDE肯定不仅要支持java的开发,HTML,CSS,JS,移动开发一个都不能少。 IDE就是为了降低开发难道,提升开...

2020-04-07 09:50:58 24771 2

原创 java中CompletionService的使用

java中CompletionService的使用之前的文章中我们讲到了ExecutorService,通过ExecutorService我们可以提交一个个的task,并且返回Future,然后通过调用Future.get方法来返回任务的执行结果。这种方式虽然有效,但是需要保存每个返回的Future值,还是比较麻烦的,幸好ExecutorService提供了一个invokeAll的方法,来保存...

2020-04-03 09:25:05 9140

UML ROSE

Uml &lt;br/&gt; 的好帮手

2007-04-19

java-collection-all-in-one.pdf

详细讲解java中集合的分类和使用,并介绍了java集合中一些不为人知的小秘密。还详细介绍了java并发包中的集合特性。

2020-10-26

JDK11GC-cheatsheet.pdf

JDK11相比JDK10,添加了一个新的Source-File Mode,可以直接通过java来运行单个java源文件,而不需要进行编译。同时还提供了新的HTTP API,支持响应性stream。 当然上面的都不是重点,重点的是JDK11是一个LTS版本,是继JDK8之后的又一个LTS版本,也可能是大家日后使用的最多的一个版本。 所以JDK11的JVM参数吸收了JDK9,JDK10的新特性和改动,并在他们的基础上进行了微调。 同样在文章最后,我也将JDK11的GC调优秘籍做成了一张PDF,欢迎大家下载。

2020-07-22

JDK12GC-cheatsheet.pdf

JDK12 GC调优秘籍 JDK12 GC cheatsheet, 一张PDF包含所有的调优参数! 为了方便大家的参考,特意将JDK12中的GC参数总结成了一张PDF,这个PDF比之前总结的JDK8-11的PDF在排版,颜色和内容准确性上面又有了非常大的提升,欢迎大家下载。

2020-07-24

JDK13GC-cheatsheet.pdf

JDK13 GC调优秘籍 JDK13 GC cheatsheet, 一张PDF包含所有的调优参数! 为了方便大家的参考,特意将JDK13中的GC参数总结成了一张PDF,这个PDF比之前总结的JDK8-12的PDF在排版,颜色和内容准确性上面又有了非常大的提升,欢迎大家下载。

2020-07-24

JDK14GC-cheatsheet.pdf

JDK14 GC调优秘籍 JDK14 GC cheatsheet, 一张PDF包含所有的调优参数! 为了方便大家的参考,特意将JDK14中的GC参数总结成了一张PDF,这个PDF比之前总结的JDK8-13的PDF在排版,颜色和内容准确性上面又有了非常大的提升,欢迎大家下载。

2020-07-24

Spring5.1中文参考指南.pdf

最新版Spring5.1参考指南中文版,带全部标签,可能是全网最好的PDF了,欢迎大家下载! 除了Spring之前的功能介绍之外,增加了Spring5最新的webflux技术,让你的程序更快更强更好

2019-11-30

JDK9GC-cheatsheet.pdf

JDK9 GC调优秘籍 JDK9 GC cheatsheet, 一张PDF包含所有的调优参数! 今天我们讲讲JDK9中的JVM GC调优参数,JDK9中JVM的参数总共有2142个,其中正式的参数有659个。好像比JDK8中的参数要少一点。 为了方便大家的参考,特意将JDK9中的GC参数总结成了一张PDF,这个PDF比之前总结的JDK8的PDF在排版,颜色和内容准确性上面又有了非常大的提升,欢迎大家下载。

2020-06-26

JDK10GC-cheatsheet.pdf

为了方便大家的参考,特意将JDK10中的GC参数总结成了一张PDF,这个PDF在之前的JDK9的基础上进行了增减和修正,欢迎大家下载。

2020-07-16

j2ee 1.4 API

j2ee 1.4 API

2007-04-19

JDK8GC-cheatsheet.pdf

JVM的参数有很多很多,根据我的统计JDK8中JVM的参数总共有1853个,正式的参数也有680个。 这么多参数带给我们的是对JVM的细粒度的控制,但是并不是所有的参数都需要我们自己去调节的,我们需要关注的是一些最常用的,对性能影响比较大的GC参数即可。 为了更好的让大家理解JDK8中 GC的调优的秘籍,这里特意制作了一张PDF,遇到问题就看两眼,不美吗?

2020-06-22

Hibernate原理与配置快速入门.pdf

Hibernate原理与配置快速入门.pdf

2007-04-20

概观C++程序设计语言.chm

概观C++程序设计语言.chm

2007-04-21

spring live 中文版

spring live 中文版<br/>好东西

2007-04-20

Android编程权威指南

Android编程权威指南 想要精通安卓的快来看看啊, 绝对是不可多得的一本好书。

2015-06-25

[Objective-C 程序设计(第4版)].(斯蒂芬).林冀等.扫描版

最新的Objective c , IOS程序设计, 你不容错过!

2016-02-29

iOS+软件开发揭密:iPhone&iPad+企业应用和游戏开发

iOS+软件开发揭密:iPhone&iPad+企业应用和游戏开发 需要IOS学习的人速度过来看啊。

2015-06-25

HTML5高级程序设计第二版.

HTML5高级程序设计第二版.

2015-06-25

Android应用开发详解.pdf

Android应用开发详解, 非常牛逼的书。 必看

2015-04-03

Android编程入门教程

Android编程入门教程. android 入门教程, 非常适合新手。赶紧来下载吧。

2015-06-25

CSS 2.0

CSS 2.0 页面设计必备

2007-04-19

O'Reilly - Python and XML.pdf

O'Reilly - Python and XML.pdf

2015-04-03

struts-api

struts-api

2007-04-13

struts in action

struts in action

2007-04-13

高质量C、C++编程指南.pdf

高质量C、C++编程指南.pdf

2007-04-20

Inside C++ Object Model.chm

Inside C++ Object Model.chm<br/>Inside C++ Object Model.chm

2007-04-20

精通比特币pdf

想要加入一场颠覆金融世界的技术革命吗?《精通比特币》会为你参与这个 货币网络提供必备知识,引导你进入看似复杂的比特币世界。无论你是正在构建 下一个杀手级应用、投资创业,还是单纯对技术好奇,这本实用的书都是你不可 或缺的阅读材料。

2018-06-20

下载区分页有问题

发表于 2011-07-04 最后回复 2011-07-05

空空如也

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

TA关注的人 TA的粉丝

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