内联函数中的Kotlin修饰类型

内联函数中的Kotlin修饰类型

功能编程, 科特林, 软件开发, 讲解
内联函数中的Kotlin修饰类型I'我已经注意到很多人的避风港'从来没有听说过修饰类型,或者在理解它们是什么以及它们在做什么方面有困难。因此,此小贴子旨在为科特林的黑暗带来一些光明's的类型。起始情况很有趣<T>myGenericFun(c:类<T>)在像myGenericFun这样的普通泛型函数中,您可以't访问类型T,因为它像Java中一样在运行时被擦除,因此仅在编译时可用。因此,如果要在函数体中将泛型用作常规类,则需要像上例中的参数c一样显式传递类作为参数。那'正确并且可以正常工作,但对于调用方而言却有点难看。内联式…
阅读更多
弹簧 WebFlux与Kotlin– Reactive Web

弹簧 WebFlux与Kotlin– Reactive Web

功能编程, 科特林, 软件开发, 弹簧
弹簧 5.0-甚至更出色在本文中,我将展示如何将Spring和Kotlin一起使用。如果您不熟悉我最近的文章,请在这里查看其他Kotlin相关文章。除了Kotlin之外,自2011年开始使用Java以来​​,我一直对使用Spring感兴趣。尽管框架越来越大,而且您经常不知道在所有替代方案中选择哪个功能,但我仍然喜欢该框架。 。随着框架本身的发展,文档也是您有史以来最好的文档之一。我最喜欢Spring的一件事是,您可以从第一天开始就专注于业务逻辑,而之前没有太多技术,基础设施方面的内容…
阅读更多
在Kotlin中创建DSL

在Kotlin中创建DSL

功能编程, 爪哇, 科特林, 软件开发
科特林作为一种编程语言提供了一些非常强大的功能,这些功能允许创建自定义内部内部特定于域的语言(DSL)。我在此博客上也写过这些功能之一,称为“带有Receiver的功能文字”,其他功能是调用约定或中缀表示法。在本文中,我将介绍如何通过引入一个将DSL作为其API公开的库来创建Kotlin DSL。一世'当我不得不在以下情况下设置SSL / TLS连接时,我经常会为Java API苦苦挣扎。实现HTTPS通信所需。我一直感觉很想编写一个可以为我完成此任务的小程序库,隐藏所有困难,当然也隐藏了所需的样板。 (更多 …)
阅读更多
科特林运算符重载–按照公约工作

科特林运算符重载–按照公约工作

功能编程, 科特林, 软件开发, 讲解
科特林操作员重载和约定简介Kotlin支持一种称为约定的技术,每个人都应该熟悉。例如,如果您在类中定义了特殊的方法plus,则可以按照约定使用+运算符:Kotlin运算符重载。在本文中,我想向您展示可以使用的约定,并且还将提供一些Kotlin代码示例来演示这些概念。 (更多…)
阅读更多
科特林协程指南–Kotlin中的并发编程

科特林协程指南–Kotlin中的并发编程

功能编程, 爪哇, 科特林
更新时间2018年10月29日简介和动机在本文中,您将了解Kotlin协程:它们是什么,它们看起来如何以及它们如何工作。演示的代码示例已使用Kotlin 1.3.0和kotlinx.coroutines 1.0.0进行了测试。 科特林协程是其中之一"bigger features"如下引自JetBrains的报价所示'博客:我们都知道,在高负载下阻塞是不好的,轮询是不可行的,世界正变得越来越基于推送和异步。许多语言(从2012年的C#开始)都通过专用语言结构(例如async / await关键字)支持异步编程。在Kotlin中,我们推广了这个概念,以便库可以定义其构造的版本,并且async不是关键字,而只是函数。这种设计允许…
阅读更多
带有接收器的Kotlin函数文字– Quick Introduction

带有接收器的Kotlin函数文字– Quick Introduction

功能编程, 科特林, 软件开发
带接收器的Kotlin函数文字-DSL和许多库函数的基础今天,我想快速介绍带接收器的Kotlin函数文字。这个概念使Kotlin非常适合设计领域特定语言,例如我们从Groovy知道的那样。还有,科特林'的标准库包含许多您已经使用或至少可能看到的功能:应用和最突出的功能。 (更多…)
阅读更多
JVM上的Kotlin– Bytecode Generation

JVM上的Kotlin– Bytecode Generation

功能编程, 科特林, 软件开发
JVM上的Kotlin-它如何提供这么多功能?简介究竟是什么"JVM language",什么是Kotlin?不仅仅是Java是要在JVM上运行吗? 科特林提供了Java所没有的许多功能,例如正确的函数类型,扩展函数和数据类。这怎么可能?我已经深入研究了Kotlin的工作原理以及"JVM language" actually means. We'我会看看科特林'的字节码生成。如果您也已经考虑过这些问题,那么本文应该使您有所了解:)有关Kotlin功能的更详细介绍,请参阅我的入门指南。 (更多…)
阅读更多
科特林密封级– An Explanation

科特林密封级– An Explanation

科特林, 软件开发, 未分类
今天,我遇到了从未听说过的科特林密封课。经过研究,我发现这个概念并不是什么新鲜事物,例如在Scala中也可以使用。那么,还有另一个Scala功能JetBrains被认为相关且适合Kotlin吗?我喜欢:)阅读这篇文章,如果你'对更多Kotlin功能感兴趣。实际上,这是一个非常简单的功能,我'我将在下面解释。 科特林密封类-功能说明密封类可以被子类化,并且可以包含抽象方法,这意味着密封类是隐式的,尽管文档中没有'不能这么说。实际上课"sealed" we have to put the 密封 modifier before its name, as we can see here: 密封 class MyClass Restriction The…
阅读更多
科特林泛型和方差(与Java相比)

科特林泛型和方差(与Java相比)

爪哇, 科特林, 软件开发
本文介绍Kotlin中的泛型和方差的概念,并将其与Java进行比较。 科特林泛型与Java不同'用户如何定义他们在子类型关系中的行为。与Java相对,Kotlin允许在声明站点上定义差异,而Java仅知道使用站点差异。 科特林泛型-什么是方差?许多编程语言都支持子类型的概念,该子类型允许实现表示关系的层次结构,例如"A cat IS-an animal"。在Java中,我们可以使用extends关键字来更改/扩展现有类的行为(继承),也可以使用实现来提供接口的实现。根据Liskov的替换原则,A类的每个实例都可以被其B型子实例替代。方差一词在数学中也经常提到,…
阅读更多
使用Gradle用Kotlin编写的Setup Vert.x应用程序–Kotlin反应式编程

使用Gradle用Kotlin编写的Setup Vert.x应用程序–Kotlin反应式编程

爪哇, 科特林, 软件开发
我决定在一个简单的示例中结合Kotlin编写一个Vert.x应用程序,因为我对响应式编程非常感兴趣,并且喜欢使用Kotlin。在这篇文章中,我将提供有关Vert.x的一些基本信息,作为在JVM上编写响应式应用程序的工具集,还介绍了Kotlin。最后,我想演示如何在Gradle中设置此应用程序。 (更多…)
阅读更多