有 App 吗?

本文介绍如何向客户提供服务(即您的软件)。

软件交付简史

过去,软件开发人员的生活非常简单。您编写一些代码,将其复制到磁盘上,然后发送给客户。接下来是互联网,因此您可以通过下载分发代码。或者网站本身成为产品。

然后,计算机开始缩小到平板电脑、智能手机和手表的大小,配备小型触摸屏,没有真正的键盘,有时需要您的代码在设备本身上运行。

如今,要向客户提供服务,我们必须真正支持多种分发渠道:一个可以在各种计算机和设备上使用的网站,以及每个主要平台(Android、iOS、Windows Phone)的原生应用程序。需要学习很多不同的技术!

软件开发人员的生活不再那么简单了。您有哪些选择?

HTML5

您可以选择的第一条路线是只创建服务的基于 Web 的版本。Web 浏览器每年都在变得越来越强大。让您更好地控制网站的外观和感觉,无论客户使用的是什么尺寸或类型的设备。

但是您的客户仍然需要持续的互联网访问才能使用您的服务。幸运的是,Web 浏览器也可以帮助我们。支持 HTML 5 的 Web 浏览器支持称为本地存储和服务工作者的功能,您可以使用它们让客户认为他/她仍然连接到您的服务。当互联网连接再次可用时,您可以同步更改。我并不是说这很容易做到,远非如此,但这是可以做到的。

使用 Opal 可以让生活更轻松。这意味着您可以在 Web 浏览器中运行 Ruby 代码。通常 Web 浏览器只运行 Javascript,但 Opal 会巧妙地将您的 Ruby 代码转换为 Javascript。这样您就不必学习 Javascript。
使用相同的语言来处理前端(Web 浏览器)和后端(例如带有 Rails 的 Web 服务器)也很方便。

TryRuby 在所有方面都使用 Ruby 和 Opal。

原生应用

另一种选择是开发原生应用。为每个你想要支持的移动平台创建单独的应用。原生应用让你对程序的外观和感觉拥有完全的控制权。你还可以更好地访问设备内置的传感器(运动、位置等)。

这种方法最大的缺点是每个移动平台使用完全不同的开发环境和编程语言。你可能需要学习 Java、Objective-C、Swift、C-Sharp 等语言。

但幸运的是,现在有跨平台工具可用,你可以一次创建应用,然后将其分发到多个移动平台。