带有OpenFaaS的无服务器Kotlin

带有OpenFaaS的无服务器Kotlin

, 科特林 , 无服务器, 讲解
OpenFaaS上的无服务器Kotlin通过本文,我的目标是通过向您介绍最酷的无服务器平台之一:OpenFaaS,演示无服务器Kotlin的外观。 OpenFaaS是一个社区拥有的开源项目,您可以使用它在任何公共或私有云上运行功能和微服务。您可以在OpenFaaS上运行Docker映像,该映像将为您运行和扩展。因此,您可以自由选择任何编程语言,只要可以将其打包到Docker映像中即可。在本文中,我们希望了解无服务器和功能即服务(FaaS)背后的概念,以及如何将无服务器Kotlin功能部署到OpenFaaS。无服务器和功能即服务无服务器计算通过无服务器计算,我们描述了一个…
阅读更多
服务器作为Kotlin的功能– http4k

服务器作为Kotlin的功能– http4k

功能编程, 爪哇 , 科特林 , 软件开发, 讲解 , 网页
服务器作为Kotlin的功能-http4k您是否听说过"Server as a Function"? The idea is that we write our server application based on just ordinary functions, which is based on a concept outlined in the paper Your 服务器功能 written and published 通过 推特 /Marius Eriksen. In the 科特林 world, the most prominent implementation of this concept is http4k, which the maintainers describe as an "用Kotlin编写的HTTP工具集,重点是创建简单的,可测试的API"。最好的部分是http4k应用程序只是我们可以直接测试的Kotlin函数。让我们看一下第一个示例:第一个http4k服务器示例val应用程序:HttpHandler = {request:Request->响应(OK).body(request.body)} val server = app.asServer(SunHttp(8000))。start()…
阅读更多
 科特林 中的默认地图

科特林 中的默认地图

功能编程, 科特林 , 软件开发, 教学 , 讲解
科特林 是否有默认地图?您是否曾经使用过默认地图或默认字典?如果您稍微了解Python,那么您可能会在某个时候看到它的defaultdict。 科特林 还附带了一个类似的工具,我想在这篇小文章中对其进行演示。您可以在此处找到Python defaultdict文档和一些示例,但以下代码段显示了基本的用例:从集合中导入defaultdict d = defaultdict(int)print(d ["someKey"])// 0 defaultdict也可以与其他类型一起使用,并确保您不'运行代码时不会收到KeyError。相反,它提供了未知密钥的默认值,这对于分组和计算如下算法非常有帮助:从集合中导入defaultdict数据…
阅读更多
使用Gradle执行Kotlin脚本

使用Gradle执行Kotlin脚本

摇篮 , 科特林 , 软件开发, 教学 , 讲解
将Kotlin脚本组织为Gradle任务在本文中,您将学习如何将多个Kotlin脚本组织为Gradle任务,并使它们易于以这种方式执行。一世'我在这里找到了有关此问题的讨论。有人希望使用Gradle构建脚本执行Kotlin脚本,这当然可以通过使用kotlinc来实现,如本(Groovy)构建脚本所示。这不'虽然看起来很漂亮,但是,如相应线程中所述,'表现出色且易于管理。另一个解决方案是使用用Kotlin DSL编写的Gradle脚本,并在build.gradle.kts文件中定义自定义任务,该文件显然可以自然地保存和运行Kotlin代码:// build.gradle.kts // //执行Kotlin任务使用:gradle -q 富 task("foo") { group = "com.kotlinexpertise" description = "my 富 task"…
阅读更多
从Java Builders到Kotlin DSL

从Java Builders到Kotlin DSL

安卓 , 爪哇 , 科特林 , 讲解
从Java Builders到Kotlin DSL简介DSL(领域特定语言)是Kotlin圈子中不断发展的主题。它们使我们可以扩展一些最令人兴奋的语言功能,同时在代码中完成更具可读性和可维护性的解决方案。今天我'd向您展示如何实施某种DSL-我们'将要在Kotlin中包装现有的Java Builder。毫无疑问你'我以前遇到过Java中的构建器模式,例如,如果您'重新成为Android开发人员,您必须'我们有时会使用AlertDialog.Builder,OkHttpClient.Builder或Retrofit.Builder。在纯DSL设计中,包装这样的构建器是一个很好的练习。您唯一需要担心的是设计包装程序提供的API,因为 …
阅读更多
 安卓  KTX–用Kotlin开发Android

安卓 KTX–用Kotlin开发Android

安卓 , 科特林 , 软件开发, 教学 , 讲解
简介Android KTX是一个开放源代码库或一组功能,旨在使使用Kotlin进行Android开发更加愉快。您可以在这里找到其网站。缩写KTX代表Kotlin扩展,因此该库基本上是一组扩展功能,扩展属性和其他顶级功能。在本文中,我们来看看'在此库中以及我们如何利用它。这个图书馆'我们的目标不是在现有的Android API中添加新功能,而是通过利用Kotlin语言的功能使这些API易于使用。 安卓 KTX的结构在开始时要注意的一个非常重要的事情是,Android KTX提供的功能可以通过以下方式添加到许多单独的项目中…
阅读更多
 科特林 可空性功能

科特林 可空性功能

功能编程, 爪哇 , 科特林 , 软件开发, 教学 , 讲解
空安全编程-Kotlin Way免责声明:这篇ktor文章最初发布在Dzone 爪哇 Guide 2018中,可以在此处下载。在本文中,我们将回顾由空指针引起的问题以及如何在Java中避免它们。之后,本文将演示Kotlin可空性功能如何工作以及如何改进您的代码。作为Java开发人员,我们'非常习惯在应用程序运行时抛出的NullPointerExceptions(NPE)。由于错误,这种错误几乎总是无意发生,该错误基于无法识别的null引用。空引用通常用于指示缺少的值,'在很多情况下对程序员来说是显而易见的。尽管Java依赖于强静态类型,但它不'让你区分…
阅读更多
为什么要开始为StackOverflow做贡献

为什么要开始为StackOverflow做贡献

科特林 , 软件开发, 教学 , 讲解
一段小小的历史几年前,当我开始编程时,我用谷歌搜索了当天遇到的许多问题,并且大多在StackOverflow上找到了答案。每个程序员都依赖的地方。我仍然遇到问题,我仍然可以在StackOverflow上找到答案。不过,情况有所改变。我不'不仅会消耗网站上的内容,还会对此做出贡献。直到2017年5月,我没有'甚至在StackOverflow上也没有帐户。在这个时候,我开始对如何了解感兴趣'就像回答问题,而不仅仅是阅读它们。自从我开始学习Kotlin编程语言以来,我一直很乐于帮助其他人解决与Kotlin相关的问题。这是我创建帐户的最初动机,…
阅读更多
使用Gradle  科特林  DSL和Travis CI在Bintray上发布Kotlin库

使用Gradle 科特林 DSL和Travis CI在Bintray上发布Kotlin库

摇篮 , 爪哇 , 科特林 , 软件开发, 讲解
使用Gradle 科特林 DSL在Bintray上分发库在几周前发布的最新博客文章中,我了解了Gradle 科特林 DSL的用法以及它如何帮助描述构建脚本。在另一篇较早的文章中,我介绍了一个小型库,该库可用于使用自定义的Kotlin DSL:SeKurity简化TLS / SSL套接字的创建。在这篇文章中,我们'我们将研究如何将此类库提供给其他实际希望在其他项目中使用的库。最终,应该可以在诸如Maven或Gradle之类的构建脚本中将SeKurity库列出为简单的依赖项。由于库本身已经由Gradle支持,所以我'll显示了一种在以下位置发布生成的工件的方法…
阅读更多
 科特林 教程– Quick Reference –Kotlin入门

科特林 教程– Quick Reference –Kotlin入门

功能编程, 科特林 , 软件开发, 讲解
简介免责声明:此参考文献最初以DZone Refcard的形式发布。在过去的几个月中,Kotlin已成为最受欢迎的JVM语言之一。一个特殊的原因是,在Google将Kotlin设为Android开发的官方语言之后,它在Android社区中引起了广泛关注。 科特林 由JetBrains开发,JetBrains负责最著名的IDE,尤其是IntelliJ IDEA。尽管如此,它'是一种开源语言,可以在GitHub上找到。据说该语言非常简洁,在错误发生频率方面安全,可以与Java互操作,并且还提供了许多功能,可以进行功能编程,编写类型安全的DSL等。除了JVM外,Kotlin还可以针对大多数Android版本(包括机器代码)进行编译 …
阅读更多