现在人人都想成为安卓/IOS应用开发工程师。其实,安卓/IOS应用可以用很多种语言来实现。由于我们前端开发工程师,对HTML5/CSS/JavaScript的网络编程已经相当熟悉了。所以,今天大家将会认识到一些利用前端语言来开发安卓/IOS应用的工具。
在文章的末尾,也介绍了使用JAVA、C#、Lua以及AS3来开发安卓应用的工具。
希望大家都能找到适合自己的开发工具!祝大家开发安卓/IOS应用一切顺利!
PhoneGap

- 开发语言: HTML, CSS, JavaScript
- 开发工具: PhoneGap Development Tools, Development Code
- 链接: http://phonegap.com/
- 优点:开源、跨平台
PhoneGap是一个开源项目,并且是跨平台的。有了它,JavaScript工程师能够轻松地利用网页技术(HTML/CSS/JavaScript)来开发手机应用(包括安卓和苹果的)。PhoneGap号称是“唯一开源的手机框架,并且支持7个平台”! 它支持的平台有Android, iOS, Windows Phone7, Web OS, Symbian, 和BADA。甚至连Adobe Dreamweaver 5.5 都支持PhoneGap啦!
Sencha Touch

- 开发语言: HTML5, CSS3, JavaScript
- 开发工具: Download Sencha Touch
- 链接: http://www.sencha.com/products/touch/
- 优点:免费、小巧、支持触屏、数据集成
Sencha Touch 是免费的JavaScript手机框架,该框架是世界上第一个基于HTML5的Mobile App框架。它能在安卓、IOS和BlackBerry(黑莓)的平台上运作。
官方公布的优点为:
1、基于最新的WEB标注,比如HTML5/CSS3等。整个库压缩并gzip后只有80KB,禁用一些组件后能使它更小。
2、支持触屏事件。在touchstart、touchend等标准事件基础上,增加了一组自定义事件数据集成,如tap、swipe、pinch、rotate等。
3、数据集成。提供了强大的数据包,通过Ajax、JSONp、YQL等方式绑定到组件模板,写入本地离线存储。
那么Sencha Touch和PhoneGap有什么区别麽?如何选择他俩呢?
你可以选择Sencha Touch去创建智能手机的用户界面,用PhoneGap去访问一些诸如GPS、相机、加速器等平台的应用。
jQuery Mobile

开发语言: HTML5, CSS3, JavaScript, jQuery
- 开发工具: Download jQuery Mobile
- 链接: http://jquerymobile.com/ (要翻墙)
http://www.jqmapi.com/ (中文网站)
JQuery Mobile 是一个网页用户界面的手机开发工具。你能用它来制作基本的布局、导航灯。并且它强依赖于JQuery。所以,熟悉JQuery的同志们学起它来易如反掌啦~ 它也是多平台支持的:Android, iOS, BlackBerry, BADA, Windows Phone7, Web OS, Symbian, MeeGo.
RHOMobile

- 开发语言: HTML, CSS, JavaScript, Ruby
- 开发工具: Download RhoStudio
- 链接: http://rhomobile.com/
- 优点:一次编译,到处运行
RHOMobile 支持全部的智能机!!因为它参照Rails的框架,所以它是最适合Ruby开发者的。RHOMobile基于MVC架构(Model View Controller)。它目前支持为iPhone、BlackBerry、Windows、Symbian和Android平台创建应用,并且支持最新的Android 4.0和IOS 5。Rhomobile基本上把网络和桌面程序开发领域的“一次编译,到处运行”的目标带到了移动开发领域。
另外,利用RhoHub工具可以在线开发和编译手机应用。地址:https://app.rhohub.com/
Titanium Mobile

- Titanium Mobile by Appcelerator
- 开发语言: HTML, CSS, JavaScript
- 开发工具: Download Titanium Mobile
- 链接: http://www.appcelerator.com/products/titanium-mobile-application-development/
Titanium Mobile 是另一个由Appcelerator支持的开发平台项目。也是“一次编写,到处运行”的。有超过300多个API。支持HTML5和CSS3。据说开发者用JavaScript开发安卓/IOS应用时,能像用Objective-C 开发iPhone and iPad应用或者用Java 开发Android应用一样自如。
其他语言及其工具:
Adobe AIR
- 开发语言: HTML, JavaScript, Action Script 3.0
- 开发工具: Download Adobe AIR SDK
- 链接: http://www.adobe.com/devnet/air/documentation.html
http://www.adobe.com/products/air/features._sl_id-contentfilter_sl_featuredisplaytypes_sl_new.html
AIR是针对网络与桌面应用的结合所开发出来的技术,可以不必经由浏览器而对网络上的云端程式做控制。支持平台:安卓Android, 黑莓BlackBerry, 苹果iOS , 个人电脑和电视机。
Adobe Flex
- 开发语言: Action Script 3.0
- 开发工具: Download Adobe Flex SDK
- 链接: http://www.adobe.com/products/flex.html
使用Flex开发应用,程序员们不用关心动画方面的开发,完全可以脱离美工,纯粹依靠技术来构建软件系统。开发者也不用学习FLASH,就可以直接进行FLASH RIA的编程。支持平台:IOS,Android,黑莓,Tablet系统,传统浏览器应用。它使服务器整合了PHP,JAVA,Ruby,.NET和SAP终端。
Corona

- Corona by Ansca
- 开发语言: Lua
- 开发工具: Download Corona SDK, Lua editor of your choice
- 链接: http://www.anscamobile.com/corona/
- 优点:创建复杂游戏利器
Corona SDK 是一个给力的创建复杂游戏的工具!看看官网上那些诱人的游戏吧!反正我是爱死它了!运用Corona,只需简单几行代码,就能低成本地创建一些让人耳目一新的游戏!它拥有Libaray,里面提供了游戏的物理引擎代码。支持平台有IOS、安卓、Kindle fire、nook。并且提供超过500的API接口。不过,每年199刀,也不便宜。
Unity3d

- 开发语言: JavaScript, C#, Boo
- 开发工具: Download Unity3d
- 链接: http://unity3d.com/
Unity3d 是一个游戏引擎,使用它能创建一些3D游戏。它是目前针对智能机和游戏驱动,最好游戏开发工具。支持平台:Android, iOS, Web OS, PS3, Xbox 360, Wii devices.。
Flixel

- 开发语言: Action Script 3.0
- 开发工具: Download Flixel
- 链接: http://flixel.org/ (官网)
https://github.com/AdamAtomic/flixel/ (Github上的代码)
http://games.flixel.org/ (用Flixel创建的游戏,翻墙使用)
- 优点:免费
Flixel是一个开源的游戏制作库(其实,译者更喜欢使用libaray这个词,而不是库)。它完全利用Action Script 3.0 编写。并能免费创建个人或者商业的应用。AdamAtomic,是它的游戏引擎,结合Action Script 3.0,就能创建flash游戏了。从Github上可以下载代码。
Java Programming

- Android SDK
- 开发语言: Java, XML
- 开发工具: Eclipse IDE, Android SDK, ADT(Android Development Tools)
- 链接: http://developer.android.com/sdk/installing.html
最官方、正规的安卓编程语言/工具。JAVA是一种开发安卓应用最常用,首选的语言。Android SDK包含了运行应用的模拟器。Eclipse IDE和ADT(Android Develelopment Tools)可以让用户界面的设计和应用的图形描绘更容易。它同时减少了开发和测试的事件。如果你是JAVA新手,我建议你可以先看看入门级参考书《Head First Java, 2nd Edition》。
百度地图API移动版(for android)就是利用这个语言/工具进行开发的。
http://dev.baidu.com/wiki/imap/index.php?title=Android%E5%B9%B3%E5%8F%B0
Mono (此为译者加上)

- 开发语言: .NET, C#
- 开发工具: Visual Studio, MonoDevelop, the Mono Framework
- 有效链接: http://xamarin.com/monoforandroid
- 优势: 开源、跨平台
Mono是一个开源软件。它包含了一个C#语言的编译器,一个CLR的运行时,和一组类库,并实现了 ADO NET和ASP NET。能够使得开发人员在Linux用C#开发程序。支持平台:Windows系统,Linux, FreeBSD, Unix, Mac OS X和Solaris。
原文地址:http://buildmobile.com/android-development-do-you-know-your-options/#fbid=N_l-mCvl6bl

CleverCSS是个为CSS开发而产生的小型的标记语言,它的设计灵感来自Python,使得能够以一种简洁、结构化的方式构建样式表。在很多方面,它比CSS2更加爱简洁和强大。
它与CSS最明显的不同之处在于语法:基于缩进而不是flat,很明显这有违Python指导,但这也不失为构建结构化样式的好点子。
2)Sass

Sass令CSS又有趣起来,它对CSS3进行了扩展,增加了嵌套规则、变量、混入、选择器继承等语法,可以使用命令行工具或网络框架插件,将其转化为良好格式的标准CSS。
3)Sajax

Sajax是一种使用Ajax framework来构建网站的开源工具,它使得通过JavaScript调用PHP,Perl或Python函数更加简便,而不产生页面刷新。该工具为你做了99%的工作,没有理由不用用。
4)Komodo Edit for Perl,Python,Tcl,PHP,Ruby,Javascript

Komodo Edit一个小型快速开源编辑器,要替换你信任已久的代码编辑器很难,但若给Komodo Edit一个机会,它一定不会让你失望的。
它支持Windows、Mac、Linux,支持PHP, Python, Ruby, JavaScript, Perl, Tcl, XML, HTML 5, CSS3语法着色、代码折叠、后台语法检查、超强的自动补全和calltips。
5)CSSTidy

CSSTidy是一个开源CSS转化和优化工具,它能在Windows、Linux、OSX下执行,可以像PHP脚本一样由每行代码来控制行为。
与其他大多数CSS转换工具相反,它不实用任何常规的表达式,从而CSSTidy能够对CSS2完美支持并提供高可靠性。
6)Less

Less是一种动态样式表语言,LESS将CSS进行了扩展,添加例如变量、混入、操作符以及函数语法。LESS能够依靠Node.js与Rhino运行于客户端和服务器端。
7)Vim

Vim是一个高度可配置的高效文本编辑器,被大多数的UNIX系统广泛使用,Vim是一个免费的慈善共享软件。
8)HSS

HSS是个扩展了CSS语法的工具,拥有强大的特性,例如:变量、嵌套块。HSS是一个CSS编译器,它支持CSS语法验证,当在转换过程中出现语法错误时,它将指出错误具体出现在哪个文件的哪一行。
9)Zen Coding - 一种开发HTML与CSS代码的全新方式

Zen Coding是一个高速HTML,XML,XSL辑插件,该插件的核心是一个强大的缩写引擎,它允许你将扩展表达式(类似于CSS选择器)插入到HTML代码中。
10)XCSS

首个面向对象的Css Framework,能让你的工作流更加简洁,xCSS基于CSS,并在开发复杂样式提供处理面向对象的工作流。
11)Haml

Haml是一种标记语言,不使用内联代码简洁地描述HTML。Haml可替代例如PHP,ASP和ERB等嵌入的页面模板系统,该模版语言多用于Ruby on Rails应用。
12)Markup Generator

Markup Generator是一个创建xhtml/css代码的简单工具,能够减少搭建无聊de最初框架代码,它能生成xhtml标签以及非常直观的css框架,以加速开发。它缩减了语法,以便让你直接对页面元素进行渲染。
13)BluePrint

BluePrint是一个CSS框架,旨在缩短你的开发时间,它提供给你一个稳固的构建基础,让你能够在易用的css网格系统、提供合理排版甚至打印样式的基础之上构建你的项目。