Kweb是一个库,您可以利用它使用Kotlin编程语言轻松构建Web应用程序。从程序员的角度来看,它基本上消除了浏览器和服务器之间的分离。这意味着只操纵DOM的事件不需要进行服务器往返。由于Kweb是用Kotlin编写的,用户应该对Kotlin和Java生态系统有一定的了解。

Kweb允许您将所有业务逻辑保留在服务器端,并通过高效的websocket与web浏览器进行通信。为了有效地处理异步性,它利用了Kotlin强大的新协同机制。还允许通过在两者之间无缝传递事件来保持客户端和服务器之间的一致状态。

Kweb有什么特点?

  • 使Web服务器和Web浏览器之间的障碍对程序员来说几乎是不可见的。
  • 最大限度地减少服务器 - 浏览器聊天和浏览器渲染开销。
  • 支持与一些功能强大的JavaScript库集成,如Semantic,这是一个专为主题设计的UI框架。
  • 允许将浏览器中的DOM元素直接绑定到服务器上的状态,并通过观察者和数据映射器模式自动更新它们。
  • 与Shoebox无缝集成,Shoebox是一个用于持久数据存储的Kotlin库,支持视图和观察者模式。
  • 轻松添加到现有项目。
  • 立即更新您的Web浏览器以响应代码更改。
  • Kweb库是通过JitPack发布的,JitPack是一个用于JVM和Android项目的新型软件包存储库。
  • Kweb利用了这样一个事实:在大多数Web应用程序中,逻辑发生在服务器端,而客户端不可信任。这个库还处于起步阶段,但仍然能够很好地证明该方法是可行的。

Kotlin语言Web库又添一虎将:Kweb的更多相关文章

  1. 用Kotlin语言重新编写Plaid APP:经验教训(I)

    原文标题:Converting Plaid to Kotlin: Lessons learned (Part 1) 原文链接:http://antonioleiva.com/plaid-kotlin- ...

  2. 释放Android的函数式能量(I):Kotlin语言的Lambda表达式

    原文标题:Unleash functional power on Android (I): Kotlin lambdas 原文链接:http://antonioleiva.com/operator-o ...

  3. Kotlin 语言高级安卓开发入门

    过去一年,使用 Kotlin 来为安卓开发的人越来越多.即使那些现在还没有使用这个语言的开发者,也会对这个语言的精髓产生共鸣,它给现在 Java 开发增加了简单并且强大的范式.Jake Wharton ...

  4. Kotlin语言学习笔记(5)

    委托模式(Delegation) 类的委托 interface Base { fun print() } class BaseImpl(val x: Int) : Base { override fu ...

  5. Erlang的Web库和框架

    ChicagoBoss,Nitrogen ,Zotontic,BeepBeep,ErlyWeb,Erlang Boss. 转自:http://bbs.chinaunix.net/thread-3764 ...

  6. Android Kotlin —— 语言结合

    2017 Google I/O 大会开始就宣布,将Kotlin语言作为安卓开发的一级编程语言.        Kotlin 是一个基于 JVM 的新的编程语言,由 JetBrains 开发.   Ko ...

  7. GO语言web框架Gin之完全指南

    GO语言web框架Gin之完全指南 作为一款企业级生产力的web框架,gin的优势是显而易见的,高性能,轻量级,易用的api,以及众多的使用者,都为这个框架注入了可靠的因素.截止目前为止,github ...

  8. 用Kotlin语言重新编写Plaid APP:经验教训(II)

    原文标题:Converting Plaid to Kotlin: Lessons learned (Part 2) 原文链接:http://antonioleiva.com/plaid-kotlin- ...

  9. Standard C 语言标准函数库介绍

    全面巩固所知所学,往精通方向迈进! Standard C 语言标准函数库速查 (Cheat Sheet) from:http://ganquan.info/standard-c/function/ C ...

随机推荐

  1. vue--点击事件

    <template> <div id="app"> <p>{{msg}}</p> <input type="text ...

  2. 9.5Django

    2018-9-5 15:23:00 配置数据库信息  setting MySQLdb 不支持python3 创建表 pycharm 连接数据库 好强大的赶脚

  3. Laravel 查询包括软删除的记录

    查询结果包括已被软删除的记录: Model::withTrashed()->get(); 只查询软删除记录: Model::onlyTrashed()->get(); PS:个人博客-La ...

  4. Nginx设置网站维护页面

    网站升级需要停服,可以在Nginx设置静态页面设置强制跳转 修改nginx配置文件nginx.conf http { sendfile on; keepalive_timeout 65; server ...

  5. C++中引用与取地址

    所谓引用就是为对象起一个别名.例如变量b = &a,b就是a的一个引用.对b的任何操作等同于对a的操作,也就是说,如果你改变了b的值,同时a的值也会发生改变.b就是a的另外一个名字,他们实质是 ...

  6. 从url到请求 再到页面生成

    百度面试 从url到请求 再到页面生成 - MartinDing - 博客园 https://www.cnblogs.com/martinding/p/7458723.html

  7. PHP Architecture

    http://www.laruence.com/2008/08/12/180.html

  8. pyqt5核心-信号与槽(第二弹)

    果: from PyQt5 import QtCore, QtGui, QtWidgets class Ui_Form(object): def setupUi(self, Form): Form.s ...

  9. 将字符串类型转化为date类型

    直接上代码 import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Date; pub ...

  10. Hadoop 之日志管理—应用在 YARN 中运行时的日志

    背景: 在写这篇博文前,自己一直没有弄明白一个问题,“在 Map 函数和 Reduce 函数中使用 System.out.print 打印日志时,输出内容在哪里显示?”.试了好多回,在 log/* 目 ...