APP7 天快速开发教程 1: APP 开发基础介绍及需求梳理

2017-02-10 17:55:17 +08:00
 APICloud

第一天:了解 APICloud 平台、理解 APICloud 应用设计思想、掌握平台使用流程。学习如何对一款 APP 进行需求分析、功能分解和架构设计等编码之前重要的准备工作。

课程相关材料:

http://7xy8na.com1.z0.glb.clouddn.com/apicloud/99f27562d0b602d064b57569475dc00d.zip

本期课程演示案例(仿每日优鲜 APP ):

http://downloadpkg.apicloud.com/app/download?path=http://7y44yj.com1.z0.glb.clouddn.com/c7432757db98f0d6f742a2522461c0a5_d

教程更新:

Github 地址: https://github.com/apicloudcom/APICloud-7Days-Online-Training-Tutorials/blob/master/Day1.md

学习目标

主要内容

1.APICloud 平台介绍

1.1 查看 APICloud 平台能力

1.2 APICloud 应用的开发模式和使用的技术语言

1.3 APICloud 技术、产品、生态、案例、商业模式的总体介绍

1.4 APICloud 开发者相关的服务支撑体系

1.5 新手应该如何开始入门 APICloud 应用开发

2.APICloud 平台使用流程

2.1 APICloud 云控制台使用

2.2 选择一款主流 H5 编码工具并安装相应的 APICloud 插件

2.3 APICloud 应用开发的基础操作流程

3.应用需求分析

3.1 梳理需求说明文档

3.2 进行 UE/UI 设计

4. 总体架构设计

4.1 APICloud 应用设计思想

5. UI 架构设计

5.1 APICloud 应用的 UI 组成结构

5.2 APICloud 界面布局 5 大组件

5.3 APICloud 混合渲染技术原理

5.4 使用 APICloud5 大 UI 组件完成应用 UI 架构设计

5.5 输出 APP 的 UI 架构设计文档

6. 功能点分解

6.1 基于需求说明,梳理出主要功能点

6.2 为每个功能点,给出合适的技术实现方案

6.3 在 APICloud 聚合 API 找到功能点对应的模块

6.4 输出 APP 的功能模块分解文档

7. 开放服务选择

7.1 基于需求说明,梳理出需要使用的开放服务

7.2 调研不同的开放服务商所提供的服务是否能满足自己应用的需求

7.3 在 APICloud 聚合 API 找到对应的开放服务模块

7.4 输出 APP 的开放服务分解文档

8. 数据接口定义

8.1 定义服务端接口文档

8.2 输出服务端接口调试文件

9. 应用证书和第三方 Key 申请

9.1 申请应用证书

9.2 确定应用包名

9.3 申请开放平台相关 Key

1.了解 APICloud 平台

1.1 查看 APICloud 平台能力

查看 API 文档了解 APICloud 文档组织结构,学会通过文档搜索,找到需要的功能*

APICloud 平台功能体系:

1.2 APICloud 应用的开发模式和使用的技术语言

APICloud 应用开发模式:标准的 HTML/CSS/JS + APICloud 扩展 API

APICloud 扩展 API 调用方式:就是使用标准的 JavaScript 语法,与标准的 JavaScript 对象调用方式一致。 核心模块在 window.api 对象下,不需要单独引用,可以直接调用 api.methodName(param, callback);

扩展模块需要 require 引入,遵守 CommonJS 规范

var module = api.require('moduleName');

module.methodName(param, callback);

param: {} //参数,是一个 JSON 对象

callback: function(ret, err){} //回调函数,是一个 Function 对象,方法调用的结果通过此函数返回

例如:

你可以把 H5 理解一门技术一门语言,但他还没达到一个平台的水平

为什么要扩展 API ?

APICloud 聚合 API http://www.apicloud.com/modulestore

APICloud 平台定位:

1.3 APICloud 技术、产品、生态、案例、商业模式的总体介绍

推荐视频: APICloud 视频之初级代码篇第 1-3 讲 http://www.apicloud.com/video_list

1.4 了解 APICloud 开发者相关的服务支撑体系

1.5 新手应该如何开始入门 APICloud 应用开发

如何能快速入门?最好的学习资料来哪?

2. 掌握 APICloud 平台使用(最基本)

2.1 掌握 APICloud 控制台使用 https://www.apicloud.com/console

APICloud 应用开发的基本流程

推荐视频: APICloud 视频之初级代码篇第 5 讲 http://www.apicloud.com/video_list

2.2 选定一款主流前端编码工具并安装相应的 APICloud 插件 https://www.apicloud.com/devtools

APICloud 应用编码调试原理:

APPLoader 加载 Widget 的路径:

目前 APICloud 开发工具插件支持: Sublime Text 、 WebStorm 、 Atom 、 Eclipse.

推荐使用: Sublime Text + APICloud Plugin

推荐使用: Atom + APICloud Plugin

插件功能包括:

推荐视频: Sublime 使用教程 Window&Mac http://www.apicloud.com/video_list

推荐文档: Sublime 插件使用说明 http://docs.apicloud.com/Dev-Tools/sublime-apicloud-plugin

推荐文档: Atom 插件使用说明 http://docs.apicloud.com/Dev-Tools/Atom-apicloud-plugin

推荐视频: APICloud 视频之初级代码篇第 9-11 讲自定义 loader 使用 http://www.apicloud.com/video_play?list=2&index=1

推荐文档:自定义 loader 说明 http://docs.apicloud.com/Dev-Guide/Custom_Loader

APICloud CLI 工具

一套基于 Nodejs 的命令行,包括 APICloud 工具插件全部核心功能,基于 GPL3.0 开源。开发者可以通过调用命令行的方式将 APICloud 工具轻松集成到任何前端开发工具中。

推荐文档: apicloud-cli 工具使用说明 http://docs.apicloud.com/Dev-Tools/apicloud-cli

推荐文档: APICloud 开发工具核心库 http://docs.apicloud.com/Dev-Tools/apicloud-tools-core

2.3 APICloud 应用开发的基础操作流程

在 APICloud 平台上有 4 种查看 APP 运行效果的手段:

3.应用需求分析

3.1 梳理需求

输出需求说明文档: requirement-spec.xml]

( http://7xy8na.com1.z0.glb.clouddn.com/apicloud/3df056696e3156d08cbaeed4aed1c42c.xlsx

3.2 进行 UE/UI 设计

输出 UE/UI 设计: 产品原型文件、原始 UI 设计图、 UI 切图

4. 整体架构设计

4.1 理解 APICloud 应用设计思想

Client/Cloud 架构设计,完整的前后端分离,在移动端实现界面和功能,在服务端提供数据和服务。

5. UI 架构设计

使用 APICloud 界面布局 5 大组件进行 UI 架构设计

5.1 APICloud 应用的 UI 组成结构

5.2 APICloud 界面布局 5 大组件

( http://docs.apicloud.com/Client-API/api#12)

5.3 理解 APICloud 混合渲染技术原理

浏览器的页面渲染机制:

APICloud 混合渲染机制:

5.4 使用 APICloud5 大 UI 组件完成应用 UI 架构设计

根据产品原型和 UI 设计图,按界面逐个分析。

编写一个小的界面布局的测试 Demo http://7xy8na.com1.z0.glb.clouddn.com/apicloud/14839882e62a7c7c200eabdfe4729ff0.zip

5.5 输出 APP 的 UI 架构设计文档

UI 架构设计文档: ui-architecture.xmind

http://7xy8na.com1.z0.glb.clouddn.com/apicloud/5314e37fd76105e2bf70d0bf964db340.xmind

6. 功能点分解

6.1 基于需求说明,梳理出主要功能点

6.2 为每个功能点,给出合适的技术实现方案

6.3 在 APICloud 聚合 API 找到功能点对应的模块

6.4 输出 APP 的功能模块分解文档: function-modules.xmind

http://7xy8na.com1.z0.glb.clouddn.com/apicloud/2966eb9edaa13ccd7b37fe4e57512be9.xmind

7. 开放服务选择

7.1 基于需求说明,梳理出需要使用的开放服务

7.2 调研不同的开放服务商所提供的服务是否能满足自己应用的需求

7.3 在 APICloud 聚会 API 找到对应的开放服务模块

7.4 输出 APP 的开放服务分解文档: service-modules.xmind

http://7xy8na.com1.z0.glb.clouddn.com/apicloud/e7db23fc8e152992c65c8cee53b2dc94.xmind

8. 数据接口定义

APICloud 应用架构是 Client + Cloud 架构,终端实现 UI 布局和功能,云端提供数据和服务。开发 APICloud 应用,与服务器端程序的实现方式和开发语言没有任何关系。

可以选择使用 APICloud 数据云,也可以自己来开发服务端接口**

8.1 定义输出服务端接口文档: server-api.pdf

http://7xy8na.com1.z0.glb.clouddn.com/apicloud/7cb2dd66607d91cd7957d548b4e7c1e6.pdf

8.2 输出服务端接口调试文件: server-api.postman_collection

http://7xy8na.com1.z0.glb.clouddn.com/apicloud/99d3e5fb1adff0f0cca6908db45a7969.postman_collection

9. 应用证书和第三方 Key 申请

9.1 申请应用证书

推荐文档:

安卓证书帮助文档 http://docs.apicloud.com/Dev-Guide/Android-License-Application-Guidance

苹果证书帮助文档 http://docs.apicloud.com/Dev-Guide/iOS-License-Application-Guidance

9.2 确定应用包名

9.3 申请开放平台相关 Key

<feature name="bMap"> <param name="android_api_key" value="0nKBc8SkhvOGxGOLZ96Q6iWXcSU0iOhe"/>
    <param name="ios_api_key" value="iObZMn4A1N6pxQBhgG4ElbHmaDNshPZR" />
</feature>

推荐文档

百度地图模块文档 http://docs.apicloud.com/Client-API/Open-SDK/bMap

百度开放平台接入指南 http://docs.apicloud.com/Others/Open-SDK-Integration-Guide/baidu

<feature name="wx">
    <param name="urlScheme" value="wxd0d84bbf23b4a0e4"/>
    
    <param name="apiKey" value="wxd0d84bbf23b4a0e4"/>
    
    <param name="apiSecret" value="a354f72aa1b4c2b8eaad137ac81434cd"/>
</feature>

推荐文档

微信模块文档 http://docs.apicloud.com/Client-API/Open-SDK/wx

微信开放平台接入指南 http://docs.apicloud.com/Others/Open-SDK-Integration-Guide/weChat

<feature name="pushGeTui">
    <param name="ios_appkey" value="xCGkZR1bCp6gscLUB20Dl4" />
    
    <param name="ios_appid" value="G5lfFkQZ008VoZUXydA2r2" />
    
    <param name="ios_appsecret" value="RuxlC8ExWA7T4NFoJhQFd6" />
    
    <param name="android_appkey" value="SsYLDV34ik5CBgtdzCQ608" />
    
    <param name="android_appid" value="dASHvkJSLc9Q5vvSEALdI4" />
    
    <param name="android_appsecret" value="BmjqFXsFDS6SVMyV2JXglA" />
    
</feature>

推荐文档

个推模块文档 http://docs.apicloud.com/Client-API/Open-SDK/pushGeTui

个推开放平台接入指南 http://docs.apicloud.com/Others/Open-SDK-Integration-Guide/pushGeTui_manual

3303 次点击
所在节点    程序员
2 条回复
johnhsm2333
2017-02-13 17:16:07 +08:00
这应该发到推广去吧
yellowV2ex
2017-02-13 17:27:20 +08:00
7 天太久了,有没有 3 天的?

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/339618

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX