在WisOne平台上学习TypeScript
TypeScript是微软公司推出的开源的类型化脚本语言,目的是用于为弱类型的javaScript提供强类型的识别和感知功能,同时它提供了类、接口、继承等相关在javaScript中不容易实现的功能,语法类似C#,简洁易懂,是构建大中型Web应用的一门非常理想的语言。
ü 通过这篇文章,你可以学到:
认识WisOne IDE
在WisOne IDE中编写TypeScript代码
在属性面板更改控件的属性
在WisOne IDE中运行TypeScript代码
本文源代码链接:http://www.wisone.com/app/sample/helloworld.frm
尽管微软在Visual Studio 2012中通过插件包的方式可以使用TypeScript的智能提示和编译功能,但是对于很多开源世界而来的开发人员来说,装个数G的Visual Studio来开发TypeScript有些大材小用,还好现在互联网上有一些专门用于辅助TypeScript开发的平台,WisOne智云平台就是其中具有代表性的一个Web平台。
通过如下的网址进入智云平台:
WisOne IDE网页呈现了一个基于Web的IDE集成化开发环境,它使用TypeScript作为开发语言,并提供了可视化的开发与设计工具,如图1.1所示。

WisOne目前还只是预览阶段,但是随着WisOne团队的不断升级和完善,相信不久的将来,我们就可以在WisOne上使用TypeScript来开发专业性的Web应用了。
Example 1:Hello Word!
接下来让我们来了解一下如何在WisOne平台上学习TypeScript,就从经典的Hello Word开始,步骤如下所示:
(1)从工具栏上拖一个按钮,如图1.2所示。

(2)选中按钮,可以在属性面板中设置按钮的属性信息,是不是很像Visual Studio或者是Delphi等集成化开发环境。在属性面板中,设置Caption属性为“Hello World”,以更改按钮的显示文字。
(3)双击按钮,将进入到WisOne的代码编辑环境,可以看到WisOne自动产生了单击事件代码存根,在空白处输入代码即可,如图1.3所示。

由图中可以发现,WisOne的代码编辑器有智能提示功能,这对于初学TypeScript的人来说,实在太妙了,不用安装庞大的Visual Studio,也可以直接玩转TypeScript的语法提示。
(4)在代码存根位置输入如下的代码:
button1Click(sender: Core.Classes.TComponent){
//我的第一行TypeScript代码
this.button1.caption="你好,世界";
}
这行代码用于更改按钮的标题,可以看到,WisOne的IDE对TypeScript进行了很好的整合,这让整个Web IDE特别的具有Windows版开发工具的味道。
好了,已经迫不急待的要运行代码了,单击WisOne IDE左上角的“运行”按钮,如图1.4所示。

可以看到WisOne在一个新的页面上开启了我们的窗口,单击按钮,是不是发现按钮的标题已经发生了改变,如图1.5所示。

Example 2:使用TypeScript类型
接下来看一下TypeScript中如何使用类型,javaScript是不需要显示定义类型的,为变量的赋值决定了其类型,这种弱类型的语法极不利于大型可扩展的应用开发,而TypeScript提出了类型的概念,在定义变量时可以指定其类型,这个示例中向窗口中再次添加一个按钮,然后编写如下的示例代码:
module Unit1{
//定义一个函数,可以看到TypeScript的强类型代码
function Greeter(greeting: string) {
this.greeting = greeting;
}
export class TForm1 extends Core.Forms.TForm{
btnType: Core.StdCtrls.TButton;
btnTypeClick(sender: Core.Classes.TComponent){
//构造一个Greeter类的实例
var greeter = new Greeter("Hello world");
//访问Greeter类的属性
this.btnType.caption=greeter.greeting;
}
}
}
在Unit1单元名称下面,定义了一个函数Greeter,可以看到这个函数的形式参数是string类型的值,在函数体内定义了一个属性。
在按钮的单击事件处理代码中,首先实例化了Greeter类的实例,然后调用其属性,如果为Greeter的构造函数传递一个非字符串类型的值,WisOne将会抛出错误提示,如图1.6所示:

可以看到,WisOne在编译TypeScript时,将错误提示显示在调试面板中,非常便于我们了解其中的语法错误,TypeScript提供了类型功能,这对于开发大型可扩展的应用来说,确实是一个必要的功能。
将123456删除,替换为一个字符串,然后运行程序,这次成功运行通过,单击按钮将显示Greeter中的属性值,如图1.7所示。

小结
本文介绍了在WisOne平台上开发TypeScript的基础知识,讨论了WisOne IDE的组成,以及如何使用WisOne编写TypeScript代码,通过一个经典的“Hello World”来演示如何在WisOne平台上编写TypeScript代码。最后通过一个类型化的TypeScript示例,介绍了WisOne平台的调试功能。
关于WisOne平台的更多信息,可以通过如下的网址获取:
在WisOne平台上学习TypeScript的更多相关文章
- Apache Pulsar 在腾讯 Angel PowerFL 联邦学习平台上的实践
腾讯 Angel PowerFL 联邦学习平台 联邦学习作为新一代人工智能基础技术,通过解决数据隐私与数据孤岛问题,重塑金融.医疗.城市安防等领域. 腾讯 Angel PowerFL 联邦学习平台构建 ...
- 关于如何在Android、Java等非微软平台上建立高信任的SharePoint应用程序
关于如何在非微软平台上建立高信任的SharePoint应用程序 原文 :http://blogs.msdn.com/b/kaevans/archive/2014/07/14/high-trust-sh ...
- JVM 平台上的各种语言的开发指南
JVM 平台上的各种语言的开发指南 为什么我们需要如此多的JVM语言? 在2013年你可以有50中JVM语言的选择来用于你的下一个项目.尽管你可以说出一大打的名字,你会准备为你的下一个项目选择一种新的 ...
- 在微软平台上运行 SAP 应用程序
本博客介绍了在微软平台上运行 SAP 应用程序的相关信息,作者在基于微软平台使用 SAP 方面有着数十年经验. 发布关于 Azure 的 SAP 说明 几个月前,SAP 针对适用于 SAP 软件 ...
- [原]详解如何将cocos2dx项目编译到Android平台上的(方式一:Cywin+NDK)
链接地址:http://m.blog.csdn.net/blog/yhc13429826359/29357815 2014-6-8阅读578 评论0 前言:cocos2dx作为一个开源的移动2D游戏框 ...
- Android平台上最好的几款免费的代码编辑器
使用正确的开发工具能够快速有效地完成源代码的编写和测试,使编程事半功倍.在网络信息高速发展的今天,移动设备的方便快捷已经深入人心,越来越多的程序员会选择在任何感觉舒适的地方使用移动设备查看或者编辑源代 ...
- 使用PostSharp在.NET平台上实现AOP(转)
出处:https://www.cnblogs.com/leoo2sk/archive/2010/11/30/aop-postsharp.html 摘要 本文首先介绍AOP(面向方面编程)的相关概念及理 ...
- 使用PostSharp在.NET平台上实现AOP
摘自:http://www.cnblogs.com/leoo2sk/archive/2010/11/30/aop-postsharp.html 本文首先介绍AOP(面向方面编程)的相关概念及理论,然后 ...
- 在Ubuntu平台上创建Cordova Camera HTML5应用
在这篇文章中,我们将具体介绍怎样使用Cordova Camera HTML5 应用.很多其它关于Cordova的开发指南,开发人员能够參考文章"the Cordova Guide" ...
随机推荐
- UOJ【UR #12】实验室外的攻防战
题意: 给出一个排列$A$,问是否能够经过以下若干次变换变为排列$B$ 变换:若${A_i> A_i+1}$,可以${swap(A_i,A_i+1)}$ 考虑一个数字从A排列到B排列连出来的路径 ...
- Cocos2d-x学习笔记(九)场景切换
这里只介绍两个简单的两个场景相互切换的方法. void pushScene(Scene *sn)和void popScene(Scene *sn)是一对.前者将当前场景放入到场景堆栈中,并切换到下一个 ...
- [原][译][osg][osgEarth]飞行模拟软件JSBSim的操作(FGFCS类)
英文原文在 FGFCS.h头文件中 JSBSim的控制操作封装了飞行控制系统(FCS)的功能. 这个FGFCS类还封装了相同的“系统”和“自动驾驶仪”能力. FGFCS包含用来定义一个系统或飞行模型体 ...
- Beta冲刺
第一天 日期:2018/6/24 1 今日完成任务情况. 妥志福.牛瑞鑫: 完成任务:数据库设计完成数据导入成功 王胜海.马中林: 完成任务:代码规范检查 董润园.邓英蓉: 完成任务:平台基本功能黑盒 ...
- putty xming gnome-session
在windows里远程连接linux的最好方法. 比VNC方式好多了 1) xming启动一个窗口 2) putty 设置完X11 forwarding之后,远程登录 3) 在putty 里启动 gn ...
- [don't have permission to access]的一个经典原因
那就是 ..... SELinux ...... 几年前好像经历过这个恶梦.现在又经历了一回. 从Windows上传了一个目录,做一个apache的别名Alias, 结果总是没有权限. chmod 7 ...
- External RNA Controls Consortium (ERCC)
ERCC是啥? 外部RNA控制联盟,就是一套RNA-seq,基因表达检测过程中的控制系统,使得结果具有可重复性. RNA Spike-in Controls for Gene Expression W ...
- Python在七牛云平台的应用(二)图片瘦身
(一)七牛云平台的图片瘦身功能简介:(引用自官网) 针对jpeg.png格式图片 瘦身后分辨率不变,格式不变. 肉眼画质不变. 图片体积大幅减少,节省 CDN 流量 官网给的图片压缩率很高,官网给的「 ...
- 常用Java字符API
- python-day16--内置函数
内置函数操作 #!usr/bin/env python # -*- coding:utf-8 -*- # 1.locals()和globals() # def func(): # x=1 # y=2 ...