移动编程入门.什么是一个好平台
Getting started with mobile programming. What is a good platform?
对于c++
开发人员来说,什么是好的移动编程平台?
学习android
是个不错的选择吗?
如果你已经了解C++,那么Symbian拥有最大的安装群,而且不像java/android-vm/iphone那样是沙盒。
虽然iPhone和Andriod可能看起来很有趣,但如果你真的看一下这些数字,在看市场份额时,Symbian真的是唯一的选择。尽管苹果拥有庞大的广告巨头和狂热的追随者,但它远未达到2亿多部塞班智能手机的水平。(大约有500万iphone用户)。
此外,手机上的"java"并不总是指同一件事。不同的手机包含不同的版本,因此与PC环境不同,手机上的java并不像它所说的那样"写一次,在任何地方运行"。
我已经开始用最新的SDK玩Android了。它非常容易开发,因为Java的酷性、android平台的丰富性和eclipse IDE非常容易使用。我认为安卓将在moile应用程序方面发挥巨大作用。
更新:现在你也可以选择WindowsPhone7,这是我目前最喜欢的,因为我是一名多年的.NET开发人员。只需获得WP7SDK并在您的视觉工作室中开始编码即可。
Java ME将为您提供最广泛的部署选项和市场份额选择,因为大多数手机都支持它。从C++到Java非常容易,因为Java的gotchas比C++少。作为一个积极的副作用,您还可以在一个占地面积比Java SE小得多且易于管理的平台上学习Java。
我建议使用.NET Compact Framework来实现简单快速的开发。Visual Studio中包含的模拟器使其更易于开发。
但我也认为这取决于你想要的应用程序,例如,我不建议使用紧凑的框架来编写具有高要求图形的游戏。
使用.NET Compact Framework的缺点是,您的目标硬件会受到限制,因为它只能在Microsoft Windows CE版本上运行(我认为是在SymbianOS上)。
就我个人而言,我从Windows Mobile平台和Microsoft Embedded C++开始。
这是一个自然的转变,因为我来自MSVC编译器/Vistudio6环境,所以我已经非常熟悉编译器和IDE的各个方面。
事实上,因为我非常熟悉这些其他工具,所以学习模拟器和(特别是)使用ActiveSync的奇怪之处变得容易多了。我还发现操作系统很容易使用(包括熟悉的文件资源管理器和系统设计)。
因此,要更准确地回答你的问题,我认为这取决于你以前熟悉哪个平台,以及你对可用工具的信心。特别适用于调试和仿真!
在Symbian中,你可以访问所有的手机功能==做一些非常酷的事情,但当你试图从头开始学习Symbian时,它是一个婊子——它很复杂。
JavaME-流行,启动非常快,轻量级API,但沙盒,访问不同的电话区域因供应商而异,因型号而异。你可以在几乎每部手机上做一些事情,比如连接网络、绘制图形和显示菜单,但访问电话簿、相机和短信的方式差异很大
有时,让应用程序在不同型号的手机上完全相同需要时间(我不知道具体情况,但我认为这在所有移动平台上都是个问题)
你肯定需要看看Windows Phone 7,它是C#,并且有强大的工具支持VS2010和Expression blend来开发快速的Windows Phone应用程序。这不仅会让你在电话中受益。相同的开发技能集可以用于轻松地制作Silverlight和WPF应用程序。
您可以尝试使用StartJava来演示Android应用程序的创建。
http://www.en.assoft.ru/startjava
https://play.google.com/store/apps/details?id=com.assoft.StartJava
我想建议你安卓是所有技术中最好的。现在安卓手机正在急剧增长,所以开发也在像明智的一样增长,任何开发者都可以学习。。。在互联网上有很多教程可以教你android编程。。。。所以我想建议你是android是最好的选择。。。
- 将vector<vector<double>>从x86平台中创建的一个进程发送到x64中构建的另一个进程的最快方法是什么
- 将一个平台的一部分分享为另一个平台,同时将其涂成另一个平台
- 一个C++编译器是为不同的平台(Linux,Windows等)多次编写的,这是真的吗?
- C++/CX - 我需要从常量字符*实例化一个平台::字符串
- 如何从另一个平台(iOS到Windows)打开和读取SQLite数据库
- 有没有一种方法可以在一个平台上编写c++程序,而不需要为不同的操作系统重新编写
- 如何可移植地调用一个 C++ 函数,该函数在某些平台上采用 char**,在其他平台上采用 const char**
- 是否有一个平台不将 std::time_t 表示为 unix 时间
- 平台独立性:它与将源代码从一个操作系统移动到另一个操作系统有何不同
- 是否可以创建一个可以在ios移动平台和windows桌面平台之间运行的应用程序,而无需使用web界面
- 如何使JNI项目在所有JB、KK和LP下工作,这些项目仅在一个平台下编译
- 一个应用程序实例,独立于平台,C++11
- 在一个解决方案中是否可以有具有不同平台工具集的项目?(MSBuild)
- 创建一个构建框架来支持编译支持多个平台的代码
- 是否有一个易于使用的,独立于平台的包,我们可以用它来读取&在c++下编写gzip流
- 一个eclipse c++项目可以为不同的平台链接不同的库吗?
- 我如何有一个平台相关的检查,而没有-Wtype-limits警告
- 使用CMake构建一个与平台无关的目录结构
- 是否有可能在c++中为嵌入式平台创建一个新的原语类型?
- 在另一个平台上构建