引擎:Corona SDK

作者:indienova
2015-03-03
1 1 0

随着 App 市场爆炸性的发展,如何快速开发出高质量的 App 也成为一个重要的议题。目前两主流大移动装置平台为 Android 与 iOS,为了扩增市场与满足使用者的需求,同时开发 App 于这两大不同平台是势在必行的。然而 Android 与 iOS 所使用的语言与开发工具全然不同,若想要两者兼备代表着必须维护两套不同的项目,无论开发、除错或测试都会需要两倍以上的心力。

庆幸的事,目前市面上提供了许多跨平台的开发工具,让使用者只需要撰写一套程序代码就可以将 App 同时发布于不同的平台。知名的跨平台开发工具包括 Phone Gap、App Accelerator、Unity 3D、Adobe Flash 等等。每个同的跨平台开发工具都有其特色,适合不同的开发者与开发不类型的 App。而本篇文章将介绍一款跨平台的软件开发工具-Corona SDK。虽然目前在业内鲜为人知,但其国外的社群已经茁壮到一定的程度,而其网络上的各种资源也是相当丰富。这款开发工具最强大之处在于可以快速开发出酷炫的的游戏以及各种不同类型的 App,关键在于其使用一套易于学习的语言 Lua 作为开发基础,并且提供近千个强大 API 让开发者可以轻易撰写出复杂的特效或功能,我们将在接下来的段落中详细介绍其优点与特色。

Corona SDK,不是啤酒

Corona SDK 对大部分人来说相当陌生,可能第一时间想到的是便利超商贩卖的啤酒,其实 Corona SDK 在很久以前就已经引起了世界的注意,那是因为一位14岁的小男孩利用其撰写了一个名为 Bubble Ball 的免费游戏,该游戏打败 Angry Birds 并在 iTunes Store 蝉联两周下载量冠军。这个消息让众人相当惊讶,因为开发 App 并不是一件相当容易的事,而一位 14 岁的小男孩居然可以透过 Corona SDK 写出高质量的游戏,也因此让让人们开始感到好奇 Corona SDK 究竟是什么东西。

Corona SDK 是由两位 Adobe 公司离职员工所创办,他们都在曾 Adobe 公司担任重要的角色,其中一位更是 Flash Lite Team 的首席工程师。他们离职后随即在 2007 年成立 Corona Labs,并在2009年发布了 Corona SDK 1.0,当时尚未有跨平台的功能,只能针对 iPhone 进行开发。一直到了 2010 年其发布了 Corona SDK 2.0 以及 Corona Game Edition Beta,开始可以支持跨平台并且提供各种方便撰写游戏的 API。

Corona SDK 的优点

1、简单易学
Corona SDK 所使用的语言为 Lua,而 Lua 是一套轻量级的脚本语言,本身语法相当简易直觉,Corona SDK 包装了各种 API 让用户可以透过 Lua 语言呼叫直接使用。假设原生语言需要10行程序代码才能完成的事情,Corona SDK 可以将这件事简化到一行程序代码。少量程序代码的好处是让开发者可以更专注于App内容的设计,而更少的程序代码也代表着更清楚易懂的程序架构与更少的除错时间。

2、完善的API支持
Corona SDK 提供了各种完善的API让开发者可以轻易的使用手机硬件的本身功能如:地理位置系统、加速度计、罗盘等等,而针对其他额外的功能如推播讯息、广告、In App Purchase 等等,Corona SDK 通通做了完善的支持。甚至针对社群方面,也有 Facebook 的 API 可以呼叫。

3、强大的游戏 API
Corona SDK 最大的卖点就是其对游戏功能的支持。开发者下载安装完 Corona SDK 之后不需再做任何额外的环境设定即可开始使用其内建的功能开发游戏。其支持的游戏功能包括:物理引擎、Sprite Sheet、动画、绘图处理等等,而这些游戏功能 API 的语法也相当直觉易用,对于快速开发游戏而言是一大利器。

4、丰富的在线资源
虽然 Corona SDK 的网络社群并没有办法和 Android 与 iOS 相提并论,但是官方对于社群的维护相当重视,在官网提供了一个讨论版“Share Code”,让资深的开发人员可以把自己撰写好的 Sample Code 分享。该讨论板大部分的 Sample Code 保持良好的质量与清楚的说明,让初学者可以轻松的使用这些范例。当使用者碰到任何问题时,官方的也往往会在第一时间响应说明。

Corona SDK 的美中不足

虽然 Corona SDK 有许多优点与特色,但仍然有一些待改善的地方。第一点是 Corona SDK 没有自己的整合开发环境,通常开发 Lua 都是透过简单的文本编辑器,因此没办法进行自动编译除错,往往只能在执行期才能知道错误的地方。第二点依然与开发环境有关,Corona SDK 没有办法透过传输线直接执行于手机装置,若想要实机测试,只能先将程序代码透过布署的方式编译成 .apk 或 .app 再安装于手机装置。而布署时必须与期官方网站联机认证使用者身分,这将导致在没有网络的情况下将无法实机测试 App。

结论

Corona SDK 是一套简单易学的跨平台开发工具,对于想要快速开发游戏的开发者来说是一个非常棒的选择。其简易的语法与强大的 API 可以帮助开发者在最短时间内开发出酷炫的游戏或各种类型的 App。使用 Corona SDK 开发 App 不用担心其对于装置操作方面的支持,因为不管是任何装置的操作如加速度计、地理位置系统、指南针等等其都有良好的支持。Corona SDK 另外也支持 In App Purchase、广告、Facebook 等等额外的功能,整体来说 Corona SDK 在功能性支持方面来讲有接近满分的表现。其美中不足之处在于缺乏专属的整合开发环境,也无法透过传输线直接在实机执行测试,这些都是 Corona SDK 必须加强改善的地方。

转载自:移动信息化(有删改)

近期点赞的会员

 分享这篇文章

indienova 

indienova - 独立精神 

您可能还会对这些文章感兴趣

参与此文章的讨论

暂无关于此文章的评论。

您需要登录或者注册后才能发表评论

登录/注册