如何编写针对不同平台的应用程序?在Linux,Mac,Windows和移动平台 [英] How to write applications for different platforms? Linux, Mac, Windows and Mobile Platforms

查看:204
本文介绍了如何编写针对不同平台的应用程序?在Linux,Mac,Windows和移动平台的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我们要编写一个客户端的在线服务,应可在尽可能多的平台上成为可能。这个问题是关于什么编程语言和框架,我们应该使用它来创建此客户端。
这些平台是必需的:在Linux,Mac,Windows中,的iOS(iPhone,iPod的,iPad的)和Android。多多益善。

We want to write a client for an online service which should be available on as many platforms as possible. This question is about what programming language and framework we should use to create this client. These platforms are required: Linux, Mac, Windows, iOS (iPhone, iPod, iPad) and Android. The more the better.

对于移动平台有钛移动。我没有尝试过这件事情呢,该网站说,你可以为iOS和Android使用网络的技能比如JavaScript开发。我还不知道,如果你可以部署使用相同的code两个平台。这将是伟大的!

For the mobile platforms there is Titanium Mobile. I haven't tried this thing yet, the website says you can develop for both iOS and Android using web skills such as Javascript. I don't know yet if you can deploy for both platforms using the SAME code. It would be great!

还有钛桌面,但我不喜欢完整的出处code与最终应用共享的想法。钛做到这一点移动太多,但它不是那么容易修改通过应用商店下载的应用程序。

There is also Titanium Desktop but I don't like the idea that the complete source code is shared with the final application. Titanium does this for Mobile too but it isn't that easy to modify an app loaded via App Store.

那么,还有什么其他的办法是有创建其中至少有三大桌面平台上运行的应用程序?我认为C#与单将要走的路,但我只是意识到你需要为了发布在Mac App Store和使用的东西像低吼使用单声道与MonoMac。而且,由于MonoMac自然是仅适用于Mac电脑,它又不可以不对其进行改写,至少在Mac部署在所有平台上的应用程序单。如果应用程序看起来土在所有平台上这将是很好。 Gtk#的只是看起来不Mac上不错。它是在Linux在Windows上好和伟大的。

So, what other way is there to create an application which runs on at least the three major desktop platforms? I thought c# with mono would be the way to go but I just realized that you need to use mono with MonoMac in order to publish it on the Mac App Store and use things like Growl. And since MonoMac is naturally only available for Macs, it's again not possible to deploy the mono app on all platforms without rewriting it for at least the Mac. And it would be nice if the app looks "native" on all platforms. Gtk# just does not look good on a Mac. It's "okay" on Windows and great on Linux.

我知道我们可以使用Objective-C的iOS和Mac上,Java的Andr​​oid版,C#.NET for Windows和C#.mono为Linux,但主要的一点是,我们不想写相同的应用程序在很多的不同的语言。这将使开发和维护真的很难。

I know we could use Objective-C for iOS and Mac, Java for Android, C#.net for Windows and C#.mono for Linux but the main point is that we don't want to write the same app in a lot of different languages. That would make development and maintenance really hard.

和我们美元,C风格的语法,更容易了解我们的PHP Web开发人员p $ PFER语言。顺便说一句:我们不喜欢的空气和我不知道关于Java,因为我从来没有使用过它,但它也没有看本机,感觉有点慢

And we prefer languages with C-style syntax which are much easier to learn for us PHP web developers. Btw: We dislike Air and I'm not sure about Java since I never used it but it also does not look "native" and it feels kinda slow.

编辑:

刚一说明:这不会是一个问题,为每个平台创建一个自己的形式,如果至少有剩余code是相同的。是否有可能使用MonoMac,GTK#和Win论坛在同一个C#应用程序?我想要preFER C#在C ++,因为我有在C ++中没有技能,所以我首先需要检查是多么不容易使用Qt编写。

Just a note: It wouldn't be a problem to create an own form for each platform if at least the remaining code is the same. Is it possible to use MonoMac, Gtk# and Win Forums in the same C# application? And I'd prefer C# over C++ as I have no skills in C++, so I first need to check how hard it is to write with Qt.

另注:我们不打算花太多钱,因为我们需要支付苹果开发者计划,我们要使用免费或廉价的技术。 preferable开源。

Another note: We don't plan to spend much money and because we need to pay Apples Developer Programs we want to use free or cheap technology. Preferable Open Source.

推荐答案

只需使用C#进行上述所有。

Just use C# for all of the above.

Mono项目将包括Mac和Linux,与 MonoDroid的你的Andr​​oid的要求和覆盖的monotouch~~V~~aux 会照顾的iPod / iPad / iPhone的的。

The mono project will cover Mac and Linux, with monodroid your android requirements are covered and monotouch will take care of iPod/iPad/iPhone.

在关于用户界面 - 单对System.Windows.Forms命名空间的全力支持,所以您不必使用GTK#如果你不想

In regards to UI - mono has full support for the System.Windows.Forms namespace, so you don't have to use GTK# if you don't want to.

我不认为我需要提到Windows支持;)

I don't think I need to mention windows support ;)

这篇关于如何编写针对不同平台的应用程序?在Linux,Mac,Windows和移动平台的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆