构建混合应用程序,从哪里开始?
Building a hybrid app, where to start?
我知道这是一个 'open' 的问题,但我不知道从哪里开始。让我先告诉你一些我的 experience/background 这样你就知道我的水平了:
- 过去用 Lingo 制作 cd-rom
- 在 HTML3.2 时代开始 web/front 结束开发,在 XHTML 流行时有点停止
- 使用 Javascript 1.2 直到 1.6 左右,后来开始使用 Jquery
- Actionscript 最高 2.0,构建网站和游戏
- 进行了相当多的 PHP/mySQL 开发。构建自定义 CMS 和后来的 Drupal 模块开发
- 这一切都是在实习或作为自由职业者期间,借助书本等进行的所有自我思考
所以现在我坚持这个想法来为自己构建一个应用程序。我决定它应该是一个混合应用程序,因为我的目标受众非常少,但 60% 是 iOS,我不想遗漏 Android。此外,我已经熟悉 HTML5/CSS3 并开始为我的应用程序开发组件。
该应用程序的基本概念是它是 Google 功能之上的一层:个人资料、日历、圈子和视频群聊。用户将(最终我希望)能够为其他用户创建事件以进行回复,他们将能够将彼此添加为好友并就事件进行聊天。功能明智的一小步,但对我来说却是一大步:)
我正在考虑使用 Android 版本的 Crosswalk 项目来解决围绕混合应用程序开发的最大问题。
过去几个月我一直在阅读准备工作,但我读得越多,似乎知道的就越少。这是我认为我应该了解更多的东西;
- Node.js
- Gulp.js
- 工作的开发环境(我曾经在 Homesite 工作过,后来在 Dreamweaver - 别笑)
- 打包工具等
- 人行横道项目
现在我不是在寻找一些拖放软件包来在 3 天内构建应用程序。我本身不想走简单的路线,我不介意有点学习曲线。我在 Win8 机器上工作,我知道这不是最佳选择,但我无法更改它。
现在我应该从哪里开始呢?我自己也在考虑 NPM,但你们可能不这么想。关于您认为我需要学习的东西的好书吗?
谢谢指教!
我可以分享我使用 Cordova 的经验。
我像全栈开发人员一样工作,并且我非常擅长构建响应式网站,因此接触移动开发的自然步骤是尝试 Cordova。
首先您可以开始构建 HTML 文档完全响应并尝试在您的目标设备上作为网页。
针对移动设备的一个很酷的东西是你可以使用新的 CSS3 指令,而不用担心与旧浏览器的兼容性。
首先,我按照本教程安装了 Cordova。
https://ccoenraets.github.io/cordova-tutorial/create-cordova-project.html
打开项目上的 /www 文件夹,您可以像网站一样编辑您的应用程序,也可以像普通网站一样使用浏览器进行调试。
为了增强功能,您会发现 github 上有很多插件可以扩展 Cordova/phonegap 项目中的本机功能。
我建议您也使用 onsen http://onsen.io/ 构建一个框架,让您可以轻松地使用移动设备 UI。
我可以给你的最后一个提示,如果你的目标 Android 是在虚拟机上尝试你的应用程序,我使用 Genymotion https://www.genymotion.com/,它比 SD<
祝你的第一个应用程序好运!
正如你所想象的,有很多框架可以让你入手。
看你的技能,也许使用 JS/HTML/css 堆栈更好,但在这种情况下,你将在 webview 中创建一个混合应用程序。
在我看来,webview 应用程序的质量只能接受,但由于他的生产力,在某些情况下可能是最好的决定。
另一个不错的选择是 react-native。该框架允许使用 javascript 创建本机应用程序。 React 有自己的标记语言,非常类似于html。 JS 代码使用嵌入器 javascript 引擎在本机设备上执行,而不是 webview,因此,性能和体验可以与本机应用程序进行比较。
最后,我的替代方案是我编写的框架,用于编写本机 UI 并为每个平台共享业务逻辑。你可以看看 aj-framework https://github.com/bfortunato/aj-framework
我知道这是一个 'open' 的问题,但我不知道从哪里开始。让我先告诉你一些我的 experience/background 这样你就知道我的水平了:
- 过去用 Lingo 制作 cd-rom
- 在 HTML3.2 时代开始 web/front 结束开发,在 XHTML 流行时有点停止
- 使用 Javascript 1.2 直到 1.6 左右,后来开始使用 Jquery
- Actionscript 最高 2.0,构建网站和游戏
- 进行了相当多的 PHP/mySQL 开发。构建自定义 CMS 和后来的 Drupal 模块开发
- 这一切都是在实习或作为自由职业者期间,借助书本等进行的所有自我思考
所以现在我坚持这个想法来为自己构建一个应用程序。我决定它应该是一个混合应用程序,因为我的目标受众非常少,但 60% 是 iOS,我不想遗漏 Android。此外,我已经熟悉 HTML5/CSS3 并开始为我的应用程序开发组件。 该应用程序的基本概念是它是 Google 功能之上的一层:个人资料、日历、圈子和视频群聊。用户将(最终我希望)能够为其他用户创建事件以进行回复,他们将能够将彼此添加为好友并就事件进行聊天。功能明智的一小步,但对我来说却是一大步:)
我正在考虑使用 Android 版本的 Crosswalk 项目来解决围绕混合应用程序开发的最大问题。
过去几个月我一直在阅读准备工作,但我读得越多,似乎知道的就越少。这是我认为我应该了解更多的东西;
- Node.js
- Gulp.js
- 工作的开发环境(我曾经在 Homesite 工作过,后来在 Dreamweaver - 别笑)
- 打包工具等
- 人行横道项目
现在我不是在寻找一些拖放软件包来在 3 天内构建应用程序。我本身不想走简单的路线,我不介意有点学习曲线。我在 Win8 机器上工作,我知道这不是最佳选择,但我无法更改它。
现在我应该从哪里开始呢?我自己也在考虑 NPM,但你们可能不这么想。关于您认为我需要学习的东西的好书吗?
谢谢指教!
我可以分享我使用 Cordova 的经验。
我像全栈开发人员一样工作,并且我非常擅长构建响应式网站,因此接触移动开发的自然步骤是尝试 Cordova。
首先您可以开始构建 HTML 文档完全响应并尝试在您的目标设备上作为网页。 针对移动设备的一个很酷的东西是你可以使用新的 CSS3 指令,而不用担心与旧浏览器的兼容性。
首先,我按照本教程安装了 Cordova。 https://ccoenraets.github.io/cordova-tutorial/create-cordova-project.html 打开项目上的 /www 文件夹,您可以像网站一样编辑您的应用程序,也可以像普通网站一样使用浏览器进行调试。
为了增强功能,您会发现 github 上有很多插件可以扩展 Cordova/phonegap 项目中的本机功能。
我建议您也使用 onsen http://onsen.io/ 构建一个框架,让您可以轻松地使用移动设备 UI。
我可以给你的最后一个提示,如果你的目标 Android 是在虚拟机上尝试你的应用程序,我使用 Genymotion https://www.genymotion.com/,它比 SD<
祝你的第一个应用程序好运!
正如你所想象的,有很多框架可以让你入手。
看你的技能,也许使用 JS/HTML/css 堆栈更好,但在这种情况下,你将在 webview 中创建一个混合应用程序。 在我看来,webview 应用程序的质量只能接受,但由于他的生产力,在某些情况下可能是最好的决定。
另一个不错的选择是 react-native。该框架允许使用 javascript 创建本机应用程序。 React 有自己的标记语言,非常类似于html。 JS 代码使用嵌入器 javascript 引擎在本机设备上执行,而不是 webview,因此,性能和体验可以与本机应用程序进行比较。
最后,我的替代方案是我编写的框架,用于编写本机 UI 并为每个平台共享业务逻辑。你可以看看 aj-framework https://github.com/bfortunato/aj-framework