JavaScript平台Platypi悄然登场
几个月前,一个新的JavaScript平台Platypi悄然诞生。它为开发者提供的不仅仅是一套标准的MVC框架而已,由于它是基于TypeScript构建的,因此对开发者而言在熟悉之中透露出与众不同的感觉。
Platypi平台包括三个组件:PlatypusTS、PlatypusUI和PlatypusCLI。PlatypusTS是核心的MVC JavaScript框架,基于TypeScript构建。在某种程度上,它的视图控制器-服务-视图(View Controllers、Services、Views)模型看起来似曾相识。
在三个组件交汇的平台中,集成了一个有趣的独立命令行工具。当构建app时,开发者经常会写许多重复的样板代码以生成服务或控制器的骨架。PlatypusCLI为开发者提供了一个可以自动生成样板代码的生成器。例如,在命令行中输入:
platypi add service products
这条指令在适应的目录下创建一个TypeScript文件基本结构,包含以下代码:
/// <reference path="../../_references.d.ts" />
import plat = require('platypus');
import BaseService = require('../base/base.service');
class ProductsService extends BaseService {}
plat.register.injectable('products-service', ProductsService);
export = ProductsService;
开发者仍须将TypeScript文件联结到app的其它部分,但是当你创建一个新项目时,使用命令行工具往往会帮助你节省时间,并保证构建的一致性。
Platypi同样提供它自己的UI库——PlatypusUI。你可以选择不在项目中使用这个库,但是它包含了许多自带样式的通用控件,还在控制器代码中提供一些钩子,值得一试。组件与web components的语法类似,熟悉的开发者会很快上手,而习惯编写及使用自定义directive的Angular开发者也会感觉非常熟悉。举个例子,如果我们想要创建一个按钮:
<plat-button class="button-primary gs-button" plat-tap="register">Register</plat-button>
这个按钮在浏览器中会渲染成这样:
<button class="button-primary gs-button plat-button plat-gesture" plat-tap="register" plat-control="plat-button">
<span>Register</span>
</button>
点击按钮将执行页面中视图控制器的register方法。
与一些流行的JavaScript框架不同,Platypi通过提供支持合约盈利。最简单的是免费版,独立开发者版本的收费标准是每人每月10美元,并且每年提供10次在48小时之内回复的支持请求。此外,Platypi还为公司提供了咨询服务,帮助他们构建自己的解决方案,服务包含培训以及设计工作。
当被问及Platypi与Angular有何不同时,CEO Matt Landers回答说:“Angular不提供客户支持服务,你需要依赖社区解答你的疑惑,帮助你快速修复bug,也只有社区才可以升级Angular, 为其发展定向。”关于Platypi未来的客户支持计划,他说:
如果你编写了一个需要使用10年的库存管理系统,我们希望可以成为在这10年间值得你依赖的合作伙伴。
这个项目通过使用Apache Cordova提供跨平台支持。
Platypi由三位前微软工程师共同创建,官方版本在2015年3月10日正式发布。据Landers说,他们已经开始集成第三方服务。你可以在他们的GitHub上获取API文档以及公司所有项目的信息。
查看英文原文:Platypi JavaScript Platform Launches
JavaScript平台Platypi悄然登场的更多相关文章
- ringojs 基于jvm 的javascript 平台试用
ringojs 是一个基于jvm 的javascript 平台,支持commonjs 模块模式 安装 下载包配置环境变量,或者使用docker,测试使用docker dockerfile deb 包安 ...
- 七种武器:JavaScript 新特性闪亮登场
JavaScript(或ECMA Script) 是一门不断发展的语言,有许多关于如何前进的建议和想法.TC39(技术委员会39)是负责定义JS标准和特性的委员会,今年他们非常活跃.以下是目前处于&q ...
- 深入理解 JavaScript,以及 Linux 下的开发调试工具
前言 JavaScript 是我接触到的第二门编程语言,第一门是 C 语言.然后才是 C++.Java 还有其它一些什么.所以我对 JavaScript 是非常有感情的,毕竟使用它有十多年了.早就想写 ...
- JavaScript学习笔记(四)——jQuery插件开发与发布
jQuery插件就是以jQuery库为基础衍生出来的库,jQuery插件的好处是封装功能,提高了代码的复用性,加快了开发速度,现在网络上开源的jQuery插件非常多,随着版本的不停迭代越来越稳定好用, ...
- JavaScript学习总结(四)——jQuery插件开发与发布
jQuery插件就是以jQuery库为基础衍生出来的库,jQuery插件的好处是封装功能,提高了代码的复用性,加快了开发速度,现在网络上开源的jQuery插件非常多,随着版本的不停迭代越来越稳定好用, ...
- JavaScript资源大全中文版(Awesome最新版--转载自张果老师博客)
JavaScript资源大全中文版(Awesome最新版) 目录 前端MVC 框架和库 包管理器 加载器 打包工具 测试框架 框架 断言 覆盖率 运行器 QA 工具 基于 Node 的 CMS 框 ...
- JavaScript代码模块化的正规方法
RequireJS-CommonJS-AMD-ES6 Import/Export详解 为什么起了一个这个抽象的名字呢,一下子提了四个名词分别是:RequireJS,CommonJS,AMD,ES6,答 ...
- JavaScript资源大全
目录 前端MVC 框架和库 包管理器 加载器 打包工具 测试框架 框架 断言 覆盖率 运行器 QA 工具 基于 Node 的 CMS 框架 模板引擎 数据可视化 编辑器 UI 输入 日历 选择 文件上 ...
- MEAN-全栈javascript开发框架
引言 使用JavaScript能够完整迅速做出Web应用程序,目前一套工具包括MongoDB.ExpressJS,AngularJS和Node.js越来越受到欢迎,其开发的灵活性和易用性加快开发效率, ...
随机推荐
- select和epoll原理和区别
对于select和poll,其主要原理跟epoll不同 poll和select的共同点就是,对全部指定设备(fd)都做一次poll,当然这往往都是还没有就绪的,那就会通过回调函数把当前进程注册到设备的 ...
- kuangbin专题十六 KMP&&扩展KMP HDU3336 Count the string
It is well known that AekdyCoin is good at string problems as well as number theory problems. When g ...
- 关于Django在写小项目的一些小注意事项
个人常踩的坑的小问题: . 在筛选元素的时候,及时queryset里面只有一个元素,取值还是要用方法取出来 例:#当狗指定pd时候已经唯一,还是要加fir()方法,本人经常忘记了 models.Boo ...
- nginx编译报错
[root@vm_0_2_centos nginx-1.12.2]# ./configure --prefix=/application/nginx-1.12.2 --user=www --group ...
- shell脚本启动java程序
#!/bin/bash ### 切换到工作目录 bin=$(cd `dirname ${0}`;pwd) cd ${bin} echo "bin [${bin}] .." ### ...
- selenium处理页面select元素
selenium为网页中选择框元素的获取特别引入了一个Select对象, 引入对象的方式: from selenium.webdriver.support.ui import Select 查询文档可 ...
- SQL datetime和smalldatetime区别
datetime 存储大小8个字节,精确到分后的3为小数,日期范围从1753 年 1 月 1 日到 9999 年 12 月 31 日:而 smalldatetime存储大小为4个字节,精确到分,日期范 ...
- HBase学习(一)
HBase是建立在Hadoop文件系统之上的分布式面向列的数据库.它是一个开源项目,是横向扩展的. HBase是一个数据模型,类似于谷歌的大表设计,可以提供快速随机访问海量结构化数据.它利用了Hado ...
- inventor安装不了
AUTODESK系列软件着实令人头疼,安装失败之后不能完全卸载!!!(比如maya,cad,3dsmax等).有时手动删除注册表重装之后还是会出现各种问题,每个版本的C++Runtime和.NET f ...
- [转]使用 YCombo 做 JS /CSS开发 合并 压缩
本文转自:http://www.neoease.com/minimize-javascript-files-using-ycombo/ 前文已介绍过 YCombo 及相关的 CSS 和 JS 合并工具 ...