# www.flydean.com **Repository Path**: null-void/www.flydean.com ## Basic Information - **Project Name**: www.flydean.com - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2020-12-04 - **Last Updated**: 2021-06-20 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ## www.flydean.com 毕生的收藏都在这了,看得上的小伙伴点个star吧 ![Github stars](https://img.shields.io/github/stars/ddean2009/www.flydean.com.svg) ## 我是谁? 我就是我啦,我叫小F,在互联网和金融行业奋斗多年,别的优点没有,就是善于学习和总结。 希望能够把之前用到的,未来学到的知识和技巧总结起来,分享给大家。 读书破万卷,下笔如有神!关注我总是没错的。 ## 都有神马? 那么问题来了这个博客都有神马呢? 值不值大家点个赞呢?我的博客主要关注于java,并发,多线程,大数据,区块链,架构等方面,一有时间就会更新。 下面分享几个我总结的规划脑图,博客的写作会参照这些脑图慢慢的完善,欢迎大家关注和star,感兴趣的朋友也可以一起来完善哦。 ### 系统架构 [架构师必须掌握的技术](mindmap/architect.md) ### java [java必须掌握的技术](mindmap/java.md) ### 设计模式 [必须掌握的设计模式](mindmap/patten.md) ### 大数据 [大数据我们该学点什么](mindmap/bigdata.md) ### 区块链 [区块链技术大合集](mindmap/blockchain.md) ### golang [golang基础](mindmap/golang.md) ### 前端 [你所不知道的前端技术](mindmap/js.md) # java从小工到专家 java作为第一大编程语言,可谓源远流长,一代又一代的java程序员前仆后继走在java学习的路上。java程序员的学习之路在2020年又有什么变化呢?本文详细附上了每一个部分所需知识的教程链接地址,并会持续更新,希望能够和大家一起进步! 先上图: ![](https://img-blog.csdnimg.cn/20200408145430519.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_0,text_aHR0cDovL3d3dy5mbHlkZWFuLmNvbQ==,size_35,color_8F8F8F,t_70) 上面的RoadMap图中列出了作为一个java程序员需要掌握的技术路线,所有技术都懂那当然非常好,如果还没掌握也没关系,just keep learning! ## 必须掌握的基础知识 作为程序员当然是有门槛的,这个门槛就是所需要掌握的基础知识,写好了程序不仅要知其然,更要知其所以然。这样才能在写程序的过程中,透过现象看到本质,从本质上提升写代码的功力。 ### 1. Git & Github Github作为全球最大的同性交友平台,是个程序员都应该知道。作为开源风潮的托管平台,GitHub上面有大量的优秀开源项目,如果有需可以从GitHub上面借用各种项目,没有需要也可以去读读上面的代码,提升下写作水平。 Git作为优秀的版本管理工具,相信绝大多数公司都在使用,那么掌握Git的命令和使用就是非常重要了。更为重要的是,Git通过git flow带给我们了代码管理的新思路。 ![](https://img-blog.csdnimg.cn/20200408112529372.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_0,text_aHR0cDovL3d3dy5mbHlkZWFuLmNvbQ==,size_35,color_8F8F8F,t_70) ### 2. Linux 很多程序员用惯了windows可能对Linux并不熟悉,但是大家要知道绝大多数的服务器都是部署在Linux上面的,不懂Linux就说自己懂编程,岂不是很搞笑?连自己写出来的代码运行的平台都不了解,怎么可以。即使不是运维专员,自己部署程序也要会的,部署中需要注意的问题肯定要关注,至于Linux的基本命令那更是要100%掌握。 ### 3. 数据结构和算法 如果只是使用java中的库,那么至少array, linked list, hash table, binary tree, queue, stack, graph这些基本的数据结构是需要掌握的。 如果你想更深入一些Trie, B-Tree, AVL tree等等可以了解一下。 ### 4. HTTP / HTTPS 现在是Web的天下了,搞懂HTTP,HTTPS走遍天下都不怕。 可以参考之前我的文章: [一篇文章让你彻底弄懂SSL/TLS协议](http://www.flydean.com/ssl-tls-all-in-one/) ### 5. 设计模式 ![](https://img-blog.csdnimg.cn/20200404104728815.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_0,text_aHR0cDovL3d3dy5mbHlkZWFuLmNvbQ==,size_35,color_8F8F8F,t_70) 设计模式可以说是大神和小工的分界线,各种设计模式信手拈来才能成为设计专家。 当然这里不是要你死记硬背,关键是合理应用。 ### 6. 计算机原理 知道计算机是怎么工作的很重要,你的代码,程序怎么转换成计算机可以懂的语言,CPU的调度原理,内存工作原理等等。 ## java学习之路 有了上面的基础,终于我们可以开始讲java的学习之路了。 ### 1. 工具 #### 1.1 开发工具 工欲善其事,必先利其器。有了好的工具可以有效的提升开发效率。Eclipse和IDEA当然是IDE的首选。 [2020年,5个你不能不知道的java IDE神器](http://www.flydean.com/top5-java-free-ide/) #### 1.2 构建工具 maven和Gradle是java构建工具的不三之选,这两个优选一个。ANT是之前的构建工具,不需要详细掌握,了解即可。 #### 1.3 虚拟化工具 Docker的横空出世,打造了一个新的虚拟化时代,凭借其优异的性能和资源占用率,Docker赢得了很多企业的喜爱,Docker一定要学。有了docker接下来使用Kubernetes(K8S)来做管理则是水到渠成。 #### 1.4 CI工具 Jenkins是CI的很好的工具。 ### 2. JDK JDK的熟练程度直接关系到能不能写出好的代码,接下来我们详细来看。 #### 2.1 Java Collections 集合类是在任何程序中都要使用到的类型,这几个是你必须要熟悉的 ArrayList, HashMap, HashSet, LinkedHashSet, TreeSet。熟悉使用熟悉其实现原理。下面是我整理和写过的关于Java集合的相关文章: * [fail-safe fail-fast知多少](http://www.flydean.com/java-fail-safe-fail-fast/) * [Iterator to list的三种方法](http://www.flydean.com/java-iterator-to-list/) * [asList和ArrayList不得不说的故事](http://www.flydean.com/aslist-arraylist/) * [Copy ArrayList的四种方式](http://www.flydean.com/how-to-copy-list/) * [深入理解HashMap和TreeMap的区别](http://www.flydean.com/hashmap-vs-treemap/) * [深入理解HashMap和LinkedHashMap的区别](http://www.flydean.com/hashmap-vs-linkedhashmap/) * [一文弄懂EnumMap和EnumSet](http://www.flydean.com/enummap-enumset/java中Comparable和Comparator的区别) * [java中Comparable和Comparator的区别](http://www.flydean.com/java-comparable-comparator/) * [一文读懂java中的Reference和引用类型](http://www.flydean.com/java-reference-referencetype/) * [SkipList和java中ConcurrentSkipListMap的实现](http://www.flydean.com/skiplist-concurrentskiplistmap/) * [一文弄懂java中的Queue家族](http://www.flydean.com/java-queue-overview/) * [PriorityQueue和PriorityBlockingQueue](http://www.flydean.com/priorityqueue/) * [SynchronousQueue详解](http://www.flydean.com/synchronousqueue-in-detail/) * [java中DelayQueue的使用](http://www.flydean.com/java-delayqueue/) * [java中的类型擦除type erasure](http://www.flydean.com/java-type-erasure/) * [深入理解java的泛型](http://www.flydean.com/java-generics-in-deep/) #### 2.2 Java并发和多线程 java中多线程和并发是一个非常重要的话题,concurrency包里面提供了诸多非常有用的同步类:CyclicBarrier,CountDownLatch,Semaphore等等。 concurrency包下面的Locks和Atomic提供了一些新的锁的实现。深入了解这些内容可以更好的理解多线程环境中资源的使用。 Thread和Thread Pool是多线程的基础,需要深入理解和应用。 Java并发和多线程的文章如下: * [java.util.concurrent简介](http://www.flydean.com/java-util-concurrent-overview/) * [java并发中的Synchronized关键词](http://www.flydean.com/java-concurrent-synchronized/) * [java中的Volatile关键字使用](http://www.flydean.com/java-concurrent-volatile/) * [java中wait和sleep的区别](http://www.flydean.com/java-wait-sleep/) * [java中Future的使用](http://www.flydean.com/java-future/) * [java并发中ExecutorService的使用](http://www.flydean.com/java-executorservice/) * [java中Runnable和Callable的区别](http://www.flydean.com/java-runnable-callable/) * [java中ThreadLocal的使用](http://www.flydean.com/java-threadlocal/) * [java中线程的生命周期](http://www.flydean.com/java-thread-lifecycle/) * [java中join的使用](http://www.flydean.com/java-join/) * [怎么在java中关闭一个thread](http://www.flydean.com/java-kill-thread/) * [java中的Atomic类](http://www.flydean.com/java-atomic/) * [java中interrupt,interrupted和isInterrupted的区别](http://www.flydean.com/java-interrupt/) * [java中的daemon thread](http://www.flydean.com/java-daemon-thread/) * [java中ThreadPool的介绍和使用](http://www.flydean.com/java-threadpool/) * [java中的fork join框架](http://www.flydean.com/java-fork-join/) * [java中Locks的使用](http://www.flydean.com/java-locks/) * [java并发中CountDownLatch的使用](http://www.flydean.com/java-countdownlatch/) * [java中CyclicBarrier的使用](http://www.flydean.com/java-cyclicbarrier/) * [在java中使用JMH(Java Microbenchmark Harness)做性能测试](http://www.flydean.com/java-jmh/) * [java中ThreadLocalRandom的使用](http://www.flydean.com/java-threadlocalrandom/) * [java中FutureTask的使用](http://www.flydean.com/java-futuretask/) * [关于CompletableFuture的一切,看这篇文章就够了](http://www.flydean.com/java-completablefuture/) * [java多线程之Phaser](http://www.flydean.com/java-phaser/) * [java中使用Semaphore构建阻塞对象池](http://www.flydean.com/java-semaphore/) * [在java中构建高效的结果缓存](http://www.flydean.com/java-memoizedcalculator/) * [java中CompletionService的使用](http://www.flydean.com/java-completionservice/) * [使用ExecutorService来停止线程服务](http://www.flydean.com/java-shutdown-executorservice/) * [我们的线程被饿死了](http://www.flydean.com/java-starvationdeadlock/) * [java中有界队列的饱和策略(reject policy)](http://www.flydean.com/java-reject-policy/) * [由于不当的执行顺序导致的死锁](http://www.flydean.com/java-lock-ordering-deadlock/) * [同步类的基础AbstractQueuedSynchronizer(AQS)](http://www.flydean.com/java-aqs/) * [非阻塞同步机制和CAS](http://www.flydean.com/java-cas/) * [非阻塞算法(Lock-Free)的实现](http://www.flydean.com/java-lock-free/) * [java内存模型(JMM)和happens-before](http://www.flydean.com/java-jmm-happens-before/) #### 2.3 Java 8-15的新特性 Java 8引入了太多太多新的有用的东西,像Lambda,Stream API, Date Time API等待。Java 8引入的函数式编程直接改变了以往的编程习惯。 ***JDK8*** * [java 8 Streams简介](http://www.flydean.com/java-8-streams-introduction/) * [java中functional interface的分类和使用](http://www.flydean.com/java-functional-interface/) * [Lambda表达式最佳实践](http://www.flydean.com/lambda-best-practices/) * [在java 8 stream表达式中实现if/else逻辑](http://www.flydean.com/java-8-stream-if-else/) * [怎么在java 8的map中使用stream](http://www.flydean.com/java-8-map-stream/) * [java 8 Stream中操作类型和peek的使用](http://www.flydean.com/java-8-stream-peek/) * [java 8 lambda表达式中的异常处理](http://www.flydean.com/java-8-lambda-exception/) * [java关于throw Exception的一个小秘密](http://www.flydean.com/java-rethrow-exception/) * [java stream中Collectors的用法](http://www.flydean.com/java-stream-collectors/) * [java 8 stream reduce详解和误区](http://www.flydean.com/java-8-stream-reduce/) * [怎么在java中创建一个自定义的collector](http://www.flydean.com/java-custom-collector/) * [java 8 stream中的Spliterator简介](http://www.flydean.com/java-8-stream-spliterator/) * [怎么break java8 stream的foreach](http://www.flydean.com/java-8-stream-foreach-break/) * [java 8中 predicate chain的使用](http://www.flydean.com/java-8-predicate-chain/) * [java 8中构建无限的stream](http://www.flydean.com/java-8-infinite-stream/) * [自定义parallelStream的thread pool](http://www.flydean.com/java-8-stream-cust-pool/) 当然java 8只是最低的要求,java已经出到了13了,如果有能力的话可以学习Java 9 到 Java 13的新特性: Modules, var for local variables, static factory methods for collections等等。 ***JDK9*** * [JDK9的新特性:String压缩和字符编码](http://www.flydean.com/jdk9-string-compact/) * [JDK9的新特性:JPMS模块化](http://www.flydean.com/jdk9-java-module-jpms/) * [JDK9的新特性:JVM的xlog](http://www.flydean.com/jdk9-jvm-xlog/) ***JDK10*** * [JDK10的新特性:本地变量类型var](http://www.flydean.com/jdk10-var-local-variable/) * [JDK10的新特性:var泛型和多个接口实现](http://www.flydean.com/jdk10-var-genericity-multiple-implements/) * [JDK10的新特性:var和匿名类](http://www.flydean.com/jdk10-var-anonymous-class/) ***JDK11*** * [JDK11的新特性:新的HTTP API](http://www.flydean.com/jdk11-http-api/) * [JDK11的新特性:HTTP API和reactive streams](http://www.flydean.com/jdk11-http-api-reactive-streams/) ***JDK12*** * [JDK12的新特性:teeing collectors](http://www.flydean.com/jdk12-teeing-collectors/) * [JDK12的新特性:CompactNumberFormat](http://www.flydean.com/jdk12-compactnumberformat/) ***JDK13*** * [JDK13的新特性:AppCDS详解](http://www.flydean.com/jdk13-appcds/) ***JDK14*** * [JDK 14的新特性:instanceof模式匹配](http://www.flydean.com/jdk14-instanceof-pattern-matching/) * [JDK 14的新特性:更加好用的NullPointerExceptions](http://www.flydean.com/jdk-14-nullpointerexceptions/) * [JDK 14的新特性:Lombok的终结者record](http://www.flydean.com/jdk-14-lombok-record/) * [JDK 14的新特性:文本块Text Blocks](http://www.flydean.com/jdk-14-text-blocks/) * [JDK 14的新特性:switch表达式](http://www.flydean.com/jdk-14-switch/) * [JDK14中的java tools简介](http://www.flydean.com/jdk14-java-tools/) * [jcmd:JDK14中的调试神器](http://www.flydean.com/jdk14-jcmd/) * [JDK 14的新特性:JFR,JMC和JFR事件流](http://www.flydean.com/jdk14-jfr-jmc-event-stream/) ***JDK15*** * [JDK 15 JAVA 15的新特性展望](http://www.flydean.com/jdk15-java15-new-features/) #### 2.4 Java IO java.io和java.nio是Java中处理IO的两个包,IO是非常重要的,处理文件读写,包括网络数据流的读写都需要使用到IO。 我们需要掌握java.io包中的File, InputStream, OutputStream, Reader, Writer。 还需要掌握java.nio包中的ByteBuffer, FileChannel, Selector等。 * [Java中IO和NIO的本质和区别](http://www.flydean.com/io-nio-overview/) * [小师妹学JavaIO之:try with和它的底层原理](http://www.flydean.com/io-try-with/) * [小师妹学JavaIO之:File文件系统](http://www.flydean.com/io-file/) * [小师妹学JavaIO之:File copy和File filter](http://www.flydean.com/io-file-copy-file-filter/) * [小师妹学JavaIO之:文件读取那些事](http://www.flydean.com/io-file-reader/) * [小师妹学JavaIO之:文件编码和字符集Unicode](http://www.flydean.com/io-charsets-properties/) * [小师妹学JavaIO之:文件写入那些事](http://www.flydean.com/io-file-writer/) * [小师妹学JavaIO之:目录还是文件](http://www.flydean.com/java-io-directory/) * [小师妹学JavaIO之:文件系统和WatchService](http://www.flydean.com/java-io-file-watchservice/) * [小师妹学JavaIO之:文件File和路径Path](http://www.flydean.com/java-io-file-path/) * [小师妹学JavaIO之:Buffer和Buff](http://www.flydean.com/java-io-nio-buffer/) * [小师妹学JavaIO之:NIO中Channel的妙用](http://www.flydean.com/java-io-nio-channel/) * [小师妹学JavaIO之:MappedByteBuffer多大的文件我都装得下](http://www.flydean.com/io-nio-mappedbytebuffer/) * [小师妹学JavaIO之:NIO中那些奇怪的Buffer](http://www.flydean.com/java-io-nio-kinds-of-buffer/) * [小师妹学JavaIO之:用Selector来发好人卡](http://www.flydean.com/java-io-nio-selector/) #### 2.5 深入理解JVM **JVM分析工具系列:** * [jcmd:JDK14中的调试神器](http://www.flydean.com/jdk14-jcmd/) * [JDK 14的新特性:JFR,JMC和JFR事件流](http://www.flydean.com/jdk14-jfr-jmc-event-stream/) * [JDK9的新特性:JVM的xlog](http://www.flydean.com/jdk9-jvm-xlog/) * [JDK14性能管理工具:Jconsole详解](http://www.flydean.com/jdk14-jvm-jconsole/) * [JDK14性能管理工具:jstack使用介绍](http://www.flydean.com/jdk14-jvm-jstack/) * [JDK14性能管理工具:jstat使用介绍](http://www.flydean.com/jdk14-jvm-jstat/) * [ABA问题的本质及其解决办法](http://www.flydean.com/aba-cas-stamp/) * [JDK14性能管理工具:jmap和jhat使用介绍](http://www.flydean.com/jdk14-jmap-jhat/) * [终于我用JOL打破了你对java对象的所有想象](http://www.flydean.com/java-object-layout-jol/) **小师妹学JVM系列:** * [小师妹学JVM之:JVM的架构和执行过程](http://www.flydean.com/jvm-all-in-one/) * [小师妹学JVM之:GC的垃圾回收算法](http://www.flydean.com/jvm-gc-algorithms/) * [小师妹学JVM之:深入理解JIT和编译优化-你看不懂系列](http://www.flydean.com/jvm-jit-in-detail/) * [小师妹学JVM之:JDK14中JVM的性能优化](http://www.flydean.com/jvm-performance-enhancements/) * [小师妹学JVM之:JIT中的LogCompilation](http://www.flydean.com/jvm-jit-logcompilation/) * [小师妹学JVM之:JIT中的PrintCompilation](http://www.flydean.com/jvm-jit-printcompilation/) * [小师妹学JVM之:java的字节码byte code简介](http://www.flydean.com/jvm-byte-code/) * [小师妹学JVM之:JIT中的PrintAssembly](http://www.flydean.com/jvm-jit-printassembly/) * [小师妹学JVM之:逃逸分析和TLAB](http://www.flydean.com/jvm-escapse-tlab/) * [小师妹学JVM之:JIT中的PrintAssembly续集](http://www.flydean.com/jvm-jit-printassembly-2/) * [小师妹学JVM之:深入理解编译优化之循环展开和粗化锁](http://www.flydean.com/jvm-jit-loop-unrolling-lock-coarsening/) * [小师妹学JVM之:JIT的Profile神器JITWatch](http://www.flydean.com/jvm-jit-jitwatch) * [小师妹学JVM之:cache line对代码性能的影响](http://www.flydean.com/jvm-jit-cacheline/) * [小师妹学JVM之:JVM中的Safepoints](http://www.flydean.com/jvm-jit-safepoints/) * [小师妹学JVM之:Dirty cards和PLAB](http://www.flydean.com/jvm-dirty-card-plab/) ### 3. 框架 如果想做大型java项目,框架是少不了的,使用框架可以节省开发时间,提升开发效率。 #### 3.1 Spring java框架最最最流行的就是Spring了。可以说Spring统治了java的大部分江山。说起来Spring还是以EJB的替代品出现的,它摆脱了EJB的复杂性,通过使用AOP和IOC,提供了轻便的可配置的容器,赢得了大片市场。最新的Spring版本是5.*。 除了Spring Core,Spring MVC目前的市场份额也越来越大。做好web开发Spring MVC也是必不可少的。 [Spring 5.X系列教程:满足你对Spring5的一切想象-持续更新](https://flydean.blog.csdn.net/article/details/106226778) #### 3.2 Spring Boot 虽然Spring简化了EJB,但是还是需要诸多的配置文件,而Spring Boot的出现大大的减少了配置文件的编写。 要问什么框架开发最快最靠谱,Spring Boot肯定要占一席之地。 [Spring Boot 2.X系列教程:七天从无到有掌握Spring Boot-持续更新](https://flydean.blog.csdn.net/article/details/106226840) #### 3.3 Netty & Mina Netty & Mina是两个NIO框架,其最本质的就是异步的IO,和普通IO最大的区别就是提升效率节约时间。 Spring 5最新引入的Spring Web Reactive就是基于Netty实现的。 待续... #### 3.4 ORM ORM框架的使用方便我们对数据库的操作,Hibernate和Mybatis是两个ORM框架的优秀选手。但是据我了解好像国内使用Mybatis的偏多,国外更倾向使用Hibernate。 为什么呢?我的理解Hibernate是JPA的一种实现,更加的标准。 #### 3.5 微服务 这年头如果你不提微服务好像就低人一等。不用怕,Spring特意为我们准备了微服务全家桶Spring Cloud。 并不是所有的服务都需要微服务,微服务也不是越多越好,看项目,看情况,看心情! 待续... ### 4. 测试框架 很多朋友可能喜欢写代码,不喜欢写测试。也有的朋友觉得测试是测试人员做的,跟开发人员没关系。 但是测试真的非常重要,从单元测试到end to end测试到集成测试,我们一直都在路上。 单元测试的几个框架Junit,Mockito,PowerMock都是非常优秀的框架,值得每个java程序员掌握。 其他的可以学习一下Selenium和Cucumber,作为end to end测试,Selenium配合headless chrome,真的不要太爽。 ### 5. 实用库 很多时候JDK并没有提供太多的实用库,这时候我们需要借助于第三方的力量。 有很多第三方库都非常优秀,比如google的Guava,Apache的commons包,处理JSON的Jackson JSON,处理日志的Log4J,Slf4j等,都是我们日常所常用的。 ## Keep learning 最后,想告诉大家的是要Keep learning,技术革新变化非常快,只有一直学习,才能不掉队不落后,学到老,活到老。希望各个朋友都能一步一个脚印的找到自己的路。毕竟知识没有捷径可走。 大家有感兴趣的技术路线可以回复本文留言给我,我会尽量丰富这个技术路线图,谢谢大家! # 区块链 ## Libra教程 * [Libra白皮书解读](http://www.flydean.com/libra-white-paper-interpretation/) * [Libra教程之:Libra协议的关键概念](http://www.flydean.com/libra-protocol-key-concepts/) * [Libra教程之:Transaction的生命周期](http://www.flydean.com/libra-transaction-life/) * [Libra教程之:Libra testnet使用指南](http://www.flydean.com/libra-transaction-life/) * [Libra教程之:来了,你最爱的Move语言](http://www.flydean.com/libra-your-favorite-move-language/) * [Libra教程之:运行自定义move modules](http://www.flydean.com/libra-run-custom-move-modules/) * [Libra教程之:Libra protocol的逻辑数据模型](http://www.flydean.com/libra-protocol-logical-data-model/) * [Libra教程之:执行Transactions](http://www.flydean.com/libra-execution-transactions/) * [Libra教程之:数据结构和存储](http://www.flydean.com/libra-data-structures-and-storage/) * [Libra教程之:move语言的特点和例子](http://www.flydean.com/libra-move-overview/) ## 以太坊教程 * [ERC20 Short Address Attack](http://www.flydean.com/erc20-short-address-attack/) * [Solidity的Bytecode和Opcode简介](http://www.flydean.com/solidity-bytecode-and-opcode/) ## 超级账本教程 * [Hyperledger Fabric基础知识](http://www.flydean.com/hyperledger-fabric-basics/) * [分布式账本简介](http://www.flydean.com/introduction-to-distributed-ledgers/) * [Fabric的6大特性](http://www.flydean.com/6-technical-advantages-of-fabric/) * [使用IBM Blockchain Platform extension开发你的第一个fabric智能合约](http://www.flydean.com/blockchain-vscode-extension/) * [在IBM Cloud中运行Fabric](http://www.flydean.com/run-fabric-on-ibm-cloud/) * [使用VSCode连接到IBM Cloud区块链网络](http://www.flydean.com/use-vs-connect-ibc/) # Scala * [Scala教程之:面向对象的scala](http://www.flydean.com/scala-object-oriented/) * [Scala教程之:Scala基础](http://www.flydean.com/scala-base/) * [Scala教程之:函数式的Scala](http://www.flydean.com/scala-functional/) * [Scala教程之:静态类型](http://www.flydean.com/scala-statically-typed/) * [Scala教程之:可扩展的scala](http://www.flydean.com/scala-extensible/) * [Scala教程之:scala的参数](http://www.flydean.com/scala-parameters/) * [Scala教程之:Option-Some-None](http://www.flydean.com/scala-option-some-none/) * [Scala教程之:Enumeration](http://www.flydean.com/scala-enumeration/) * [Scala教程之:PartialFunction](http://www.flydean.com/scala-partialfunction/) * [Scala教程之:Future和Promise](http://www.flydean.com/scala-future-promise/) * [Scala教程之:可变和不变集合](http://www.flydean.com/scala-immutable-mutable-collection/) * [Scala教程之:Either](http://www.flydean.com/scala-either/) * [Scala教程之:深入理解协变和逆变](http://www.flydean.com/scala-covariance-contravariant/) * [scala教程之:可见性规则](http://www.flydean.com/scala-visibility/) * [Scala的自定义类型标记](http://www.flydean.com/scala-self-type/) ## 我的链接 * github: [https://github.com/ddean2009](https://github.com/ddean2009/www.flydean.com) * 我的博客: [http://www.flydean.com](http://www.flydean.com) > 最通俗的解读,最深刻的干货,最简洁的教程,众多你不知道的小技巧等你来发现! > > 欢迎关注我的公众号:「程序那些事」,懂技术,更懂你! ![contact me](https://img-blog.csdnimg.cn/20200709152618916.png) ## 联系方式 邮箱: flydean@163.com