编程语言:类型系统的本质

2022-07-02
阅读 15 分钟
3.7k
我一直对编写更好的代码有浓厚的兴趣。如果你能真正理解什么是抽象,什么是具象,就能理解为什么现代编程语言中,接口和函数类型为什么那么普遍存在了。在使用函数式语言进行编程后,就能够很清晰地理解为什么随着时间的推移,更主流的语言开始采用函数式语言中的一些被认为理所当然的特性。
封面图

ReentrantLock 实现原理笔记(一)

2019-07-12
阅读 27 分钟
6.2k
java.util.concurrent.locks.ReentrantLockexclusive : adj. (个人或集体) 专用的,专有的,独有的,独占的; 排外的; 不愿接收新成员(尤指较低社会阶层)的; 高档的; 豪华的; 高级的 reentrant : 可重入; 可重入的; 重入; 可再入的; 重进入

一篇文章读懂 React & redux 前端开发

2018-11-14
阅读 10 分钟
4.1k
DvaJS: React and redux based, lightweight and elm-style framework. [链接] 实例项目源码:[链接] 快速上手 #安装 dva-cli 通过 npm 安装 dva-cli 并确保版本是 0.9.1 或以上。 {代码...} #创建新应用 安装完 dva-cli 之后,就可以在命令行里访问到 dva 命令(不能访问?)。现在,你可以通过 dva new 创建新应用。 ...

《Kotlin 反应式编程》使用 RxKotlin 实现一个极简的 http DSL

2018-04-23
阅读 8 分钟
5.8k
我们现在已经基本知道 Kotlin 中 DSL 的样子了。但是这些 DSL 都是怎样实现的呢?本节我们就通过实现一个极简的http DSL来学习创建 DSL 背后的基本原理。

Spring Boot 应用 Docker 化 《Spring Boot 2.0极简教程》(陈光剑)

2018-04-15
阅读 10 分钟
8.6k
前面的章节中,我们都是在IDE环境中开发运行测试 Spring Boot 应用程序。在开发测试发布整个软件生命周期的过程中,我们通常需要完成打包部署发布到日常、预发、线上机器运行等运维相关工作。本章前半部分介绍 Spring Boot 应用的打包和部署,后半部分重点介绍如何使用 Docker 来构建部署运行 Spring Boot 应用。

Spring Boot 实现异步任务执行 Async Task

2018-04-13
阅读 6 分钟
10.6k
“异步”(Asynchronous)与“同步”(Synchronous)相对,异步不用阻塞当前线程来等待处理完成,而是允许后续操作,直至其它线程将处理完成,并回调通知此线程。也就是说,异步永远是非阻塞的(non-blocking)。

React.js 集成 Kotlin Spring Boot 开发 Web 应用实例详解

2017-12-17
阅读 18 分钟
4.4k
React.js 集成 Kotlin Spring Boot 开发 Web 应用实例详解 项目工程目录 {代码...} build.gradle {代码...} ReaktApplication.kt {代码...} 后端工程目录 {代码...} 前端Node React 工程部分: 使用 $ nowa init web 命令创建前端 web 工程: {代码...} 设置 JavaScript 的版本是 ES6 前端工程 {代码...} {代码...} nowa b...

《 Kotlin + Spring Boot : 下一代 Java 服务端开发 》

2017-11-17
阅读 9 分钟
5.1k
1.1 环境准备:JDK,Gradle,IDEA1.2 快速上手:Kotlin + Spring Boot 实现一个 Restful Hello World

第12章 元编程与注解、反射 《Kotlin 项目实战开发》

2017-11-13
阅读 14 分钟
6.8k
反射(Reflection)是在运行时获取类的函数(方法)、属性、父类、接口、注解元数据、泛型信息等类的内部信息的机制。这些信息我们称之为 RTTI(Run-Time Type Information,运行时类型信息) 。

【Spring Boot + Kotlin 实战教程】Spring Data JPA 多表关联查询 映射到 Dto 的方法

2017-11-13
阅读 3 分钟
6k
【Spring Boot + Kotlin 实战教程】Spring Data JPA 多表关联查询 映射到 Dto 的方法 TechArticle {代码...} TechArticleTag {代码...} DTO 定义类: TechArticleDto {代码...} JPQL 语句的写法 {代码...} 完整的工程示例源代码: [链接]

第14章 使用Kotlin 进行 Android 开发2

2017-11-09
阅读 30 分钟
3.9k
这个 ItemDetailFragment 表示单个 Item 详细信息。此片段在双窗格模式 (在平板电脑上) 包含在 ItemListActivity 中,在手机上则是包含在ItemDetailActivity中。其 Kotlin 代码如下

第14章 使用Kotlin 进行 Android 开发1

2017-11-09
阅读 29 分钟
8.2k
根据Realm Report (2017-Q4,[链接]) ,过去的一年在Android 端的开发:Java 从 95% 降低到 Java 85%, 而 Kotlin 从 5% 涨到 15% ,如下图所示

Kotlin 使用 Spring WebFlux 实现响应式编程

2017-11-09
阅读 13 分钟
8.7k
IBM的研究称,整个人类文明所获得的全部数据中,有90%是过去两年内产生的。在此背景下,包括NoSQL,Hadoop, Spark, Storm, Kylin在内的大批新技术应运而生。其中以RxJava和Reactor为代表的响应式(Reactive)编程技术针对的就是经典的大数据

第9章 文件IO操作、正则表达式与多线程《Kotlin 项目实战教程》

2017-10-21
阅读 12 分钟
6.6k
我们在《第6章 扩展函数与属性》中已经介绍过Kotlin中的类扩展的特性。使用Kotlin的扩展函数功能,我们可以直接为 String 类实现一个 inc() 函数,这个函数把字符串中的每一个字符值加1

第8章 泛型 《Kotlin 项目实战开发》

2017-10-17
阅读 12 分钟
4.5k
通常情况的类和函数,我们只需要使用具体的类型即可:要么是基本类型,要么是自定义的类。但是在集合类的场景下,我们通常需要编写可以应用于多种类型的代码,我们最简单原始的做法是,针对每一种类型,写一套刻板的代码。这样做,代码复用率会很低,抽象也没有做好。我们能不能把“类型”也抽象成参数呢?是的,当然可以。

第6章 扩展函数与属性

2017-10-13
阅读 5 分钟
2.7k
在使用Java的时候,我们经常使用诸如StringUtil, DateUtil等等一堆工具类,代码写起来也比较冗长。举个例子,获取一个字符串的第一个字符值、最后一个字符值。如果我们用Java代码来写,通常是要先声明一个StringUtil类,然后在里面写相应的工具方法,代码可以是下面的这个样子

《Kotin 极简教程》第8章 函数式编程(FP)

2017-07-30
阅读 30 分钟
3k
"函数式编程", 又称泛函编程, 是一种"编程范式"(programming paradigm),也就是如何编写程序的方法论。它的基础是 λ 演算(lambda calculus)。λ演算可以接受函数当作输入(参数)和输出(返回值)。

Spring Boot + JPA + Freemarker 实现后端(Kotlin)分页 完整示例

2017-07-28
阅读 6 分钟
4.1k
Spring Boot + JPA + Freemarker 实现后端分页 完整示例 《Kotlin极简教程》正式上架: 点击这里 > 去京东商城购买阅读 点击这里 > 去天猫商城购买阅读 非常感谢您亲爱的读者,大家请多支持!!!有任何问题,欢迎随时与我交流~ 界面效果 前端代码 {代码...} 后端代码 {代码...} 完整工程源码 [链接]

《Kotlin 极简教程》第8章 函数式编程(FP)

2017-07-27
阅读 28 分钟
4.8k
"函数式编程", 又称泛函编程, 是一种"编程范式"(programming paradigm),也就是如何编写程序的方法论。它的基础是 λ 演算(lambda calculus)。λ演算可以接受函数当作输入(参数)和输出(返回值)。

《Kotin 极简教程》第7章 面向对象编程(OOP)

2017-07-23
阅读 43 分钟
4.5k
在前面的章节中,我们学习了Kotlin的语言基础知识、类型系统、集合类以及泛型相关的知识。在本章节以及下一章中,我们将一起来学习Kotlin对面向对象编程以及函数式编程的支持。

《Kotlin 极简教程 》第6章 泛型

2017-07-23
阅读 15 分钟
4.2k
第6章 泛型 《Kotlin极简教程》正式上架: 点击这里 > 去京东商城购买阅读 点击这里 > 去天猫商城购买阅读 非常感谢您亲爱的读者,大家请多支持!!!有任何问题,欢迎随时与我交流~ 6.1 泛型(Generic Type)简介 通常情况的类和函数,我们只需要使用具体的类型即可:要么是基本类型,要么是自定义的类。 但是尤...

《Kotlin 极简教程 》第5章 集合类

2017-07-23
阅读 54 分钟
5k
本章将介绍Kotlin标准库中的集合类,我们将了解到它是如何扩展的Java集合库,使得写代码更加简单容易。如果您熟悉Scala的集合库,您会发现Kotlin跟Scala集合类库的相似之处。

《Kotlin 极简教程 》第4章 基本数据类型与类型系统

2017-07-23
阅读 35 分钟
5k
第4章 基本数据类型与类型系统 《Kotlin极简教程》正式上架: 点击这里 > 去京东商城购买阅读 点击这里 > 去天猫商城购买阅读 非常感谢您亲爱的读者,大家请多支持!!!有任何问题,欢迎随时与我交流~ 到目前为止,我们已经了解了Kotlin的基本符号以及基础语法。我们可以看出,使用Kotlin写的代码更简洁、可读性...

《Kotlin极简教程》第3章 Kotlin语言基础

2017-07-23
阅读 39 分钟
3.6k
学习任何东西,都是一个由表及里的过程。学习一门编程语言也一样。对于一门编程语言来说,“表” 就是基本词汇(关键字、标识符等)、句子(表达式)和语法。

《Kotlin极简教程》第2章 快速开始:HelloWorld

2017-07-23
阅读 21 分钟
4.1k
“Hello, World"程序是指在计算机屏幕上输出“Hello,world”这行字符串的计算机程序,“hello, world”的中文意思是“世界,你好”。这个程序在Brian Kernighan 和Dennis M. Ritchie合著的《The C Programme Language》使用而广泛流行。因为它的简洁、实用,表达了一个编程语言的极简功能。

《Kotlin极简教程》第1章 Kotlin简介

2017-07-23
阅读 13 分钟
5.7k
科特林岛(Котлин)是一座俄罗斯的岛屿,位于圣彼得堡以西约30公里处,形状狭长,东西长度约14公里,南北宽度约2公里,面积有16平方公里,扼守俄国进入芬兰湾的水道。科特林岛上建有喀琅施塔得市,为圣彼得堡下辖的城市。