App开发,目前也主要是两大方向,苹果和安卓,小程序一类的暂时先不说。刚好我就是一名iOS开发者“APP开发文档”,就以我自己的经验聊一聊吧,安卓应该也类似。前提:我暂且理解为你已经是一名程序员,目前想转做app开发,就以这个为前提吧,如果你是其他行业转的或者还未毕业的同学,那就在这个前提下,再找补一下计算机基础的专业知识了解下吧。
本人经历:我在做iOS开发之前学过Java、C语言相关的开发语言,并且在公司做过一些项目,都是服务的的项目,后来因为自己接触了苹果产品,成为了“果粉”,对iOS开发也产生了兴趣,APP开发文档所以就从服务端的开发转到了“前端”的 app 开发,做了iOS开发者,目前也做了多年了。Ps:以下内容涉及的会比较多,针对不同的定位(团队协作还是独立开发者),所需要的也不同。另外不同的app类型,所需的知识也不同,比如游戏类的和工具类的就不同,一些专业型的和非专业型的也不同,我下面整理的也不是很全,是比较泛的。
根据我自己的理解和经历,粗略的总结了一部分:
一、了解苹果硬件、软件的知识
1、比如苹果电脑的操作使用;
2、iPhone的硬件信息(例如屏幕分辨率、内存等硬件信息)。
3、macOS和iOS 的软件信息(UI 组件、特性等)。
4、App Store 的审核机制,这些都是需要知道的,从开发到提交上架,这些都是会涉及到的。
二、开发语言Objective-c 和 swift 语言的基础知识;虽然现在苹果也在推广swift,包括很多公司的项目已经使用swift开发,但是老的项目依然是OC语言开发的,还是需要掌握OC的。
三、开发工具
1、Xcode 是苹果应该开发的基础工具,包括iOS、macOS、watchOS、tvOS都需要使用,也有第三方的工具可以coding,但怎么都离不开Xcode。
除了开发工具,还有性能调试工具 instruments 也是需要使用和了解的。
2、除了上面的基本开发工具外,还有很多第三方的工具,例如命令行工具、文本编辑、图片压缩、设计稿查看、icon及市场截图生成工具;协作共享工具(例如有道、印象笔记等等;
四、App 开发技能
1、常用 UI 组件特性;
2、项目的架构/框架设计、SDK 设计开发;
3、性能调优;
4、Bug 排查、调试工具及方法;
5、app 提交流出、审核被拒处理如何处理等等;
五、其他工具
1、团队协作的工具;
2、提高效率的工具;
3、原型设计工具;
4、代码提交工具;
5、其他很多工具……
六、协作能力这个是针对公司团队的,常见的协作工具,提高协作的方式等,也是需要知道的。这个也是可以边做边学的,不同的团队,协作工具也不一样,但基本都是差不多的,例如:设计师设计好的原型图或者UI设计稿如何给到开发?切图的命名规则怎么做才能让开发更高效?和测试同学如何协作能保证效率,同时也能保证质量?例如:开发可以在开发阶段集成测试功能的代码,方便自己开发调试,也可以在提交测试后,测试同学也能方便的使用和反馈问题给开发。例如:通过持续集成高效的开发和测试,等等,这些也可以算到协作能力里面。
七、产品需求能力如果是独立开发者这项也是必须的,即便是一个很简单的 app,也算是一个产品,只是可以简单到不用冗余的需求文档而已。
但如果是在公司团队协作,作为一名开发人员,也是要有分析需求,并且给予合理建议的。
八、设计能力(交互设计)
1、独立开发者:这项是必须的,APP开发文档能够通过原型工具进行交互设计,当然可以很简单或者这个原型是在你脑海里的,然后用代码实现。
2、团队:一般会有专门的设计师进行 app的交互、体验、UI设计,然后给到开发人员进行开发。提交审核也可能有专门的人员负责,但如果是作为app的独立开发者进行开发,这些也是需要掌握的,常见的设计工具也可以了解一些,Ps:关于设计,苹果官方有 《人机交互指南》文档,这个一定要看一遍,无论是独立开发还是团队协作,都是有好处的。
还有一点比较重要,就是提高“审美”,无论是代码还是UI,都需要更“美”(代码简洁易懂、易扩展;UI 符合苹果或者安卓的设计原则,同时有“设计感”)。
九、问题排查的能力
1、开发过程中:开发中的问题,要善于使用Xcode的bug调试工具及常见的调试命令;
2、线上事故:当线上出现严重或者疑难问题时,需要快速响应、止损、排查和修复问题,除了常用的开发、调试工具以外,还需要有一定的抗压能力和除代码层面以外的解决问题能力。例如通过分析崩溃日志,定位问题,当出现不能复现的问题时,需要多维度分析用户数据,便于定位问题,APP开发文档
十、运营能力这个也是独立开发者应该具备的,APP开发文档因为无论是什么软件,都是需要“运营”的,公司一般有运营团队去做,而个人开发者也要掌握这方面的知识,例如常用的第三方运营工具/网站,知道UV、IP、PV 这些都代表什么意思,如何去推广自己的 app 等等。
以上也是自己临时想的,APP开发文档比较多比较杂,欢迎taol和交流,?。
1、首先手机软件内找到【WPSOffice】APP,点击打开。
2、【WPSOffice】app打开后,点击底部【+】。
3、这时候下面弹出【文档】、【演示】、【表格】等等格式提示界面,点击【新建文档】。
4、进入选取模板页面,点击【新建空白】进入编辑页面。
5、再输入你要你要编辑的文字,在底部【开始】、【文件】、【插入】等选项栏可以设置文本样式、文字大小、字体颜色,以及插入图片、表格、文本框等。
1、前期需求规划与信息——你需要制定出一个完整的需求文档,功能文档,流程图,时序图。
2、交互设计、UI设计——设计出基本且完善的原型图和app基础的交互设计效果,之后再根据这些设计出完整的UI界面并学会切图,一些需要做自适应的素材图片需要做点9patch。这里还需要你懂得px,pt和dp之间的换算,屏幕密度的换算和相互之间的系数,以便你的app能完美适应不同分辨率设备。
其中交互设计需要你懂得很多人机操作的技巧经验,掌握Axure等交互工具的使用,UI设计需要你掌握Photoshop和Illustrator等操作。
3、使用ADT之类的开发环境进行app软件开发,你最基本的也得掌握java语言,熟悉android环境和机制。
4、如果不是单机版的app,需要用到服务器,那你还得掌握WebService相关知识和开发语言,常用的有ASP.Net,PHP,JSP等。
5、熟悉并能开发数据库。
6、某些功能需要做算法,这还需要一定得专业知识,尤其是数学基础。
7、熟悉API接口开发,这里包括你自行开发API的能力以及调用第三方API的经验。
8、熟悉TCP/IP,socket等网络协议和相关知识。
9、熟练掌握App发布的流程,真机调试技巧,证书,打包,上架,App开发其实不一定适合一个人搞,太费劲,除非是一个单机版的小应用,或者利用现成的app开发简单的第三方应用,否则还是让一个团队来完成各自擅长的领域。
下载当地工商管理部门APP创建文档。
1、前期需求规划与信息——你需要制定出一个完整的需求文档,功能文档,流程图,时序图。
2、交互设计、UI设计——设计出基本且完善的原型图和app基础的交互设计效果,之后再根据这些设计出完整的UI界面并学会切图,一些需要做自适应的素材图片需要做点9patch。这里还需要你懂得px,pt和dp之间的换算,屏幕密度的换算和相互之间的系数,以便你的app能完美适应不同分辨率设备。
其中交互设计需要你懂得很多人机操作的技巧经验,掌握Axure等交互工具的使用,UI设计需要你掌握Photoshop和Illustrator等操作。
3、使用ADT之类的开发环境进行app软件开发,你最基本的也得掌握java语言,熟悉android环境和机制。
4、如果不是单机版的app,需要用到服务器,那你还得掌握WebService相关知识和开发语言,常用的有ASP.Net,PHP,JSP等。
5、熟悉并能开发数据库。
6、某些功能需要做算法,这还需要一定得专业知识,尤其是数学基础。
7、熟悉API接口开发,这里包括你自行开发API的能力以及调用第三方API的经验。
8、熟悉TCP/IP,socket等网络协议和相关知识。
9、熟练掌握App发布的流程,真机调试技巧,证书,打包,上架,App开发其实不一定适合一个人搞,太费劲,除非是一个单机版的小应用,或者利用现成的app开发简单的第三方应用,否则还是让一个团队来完成各自擅长的领域。
APP开发是很严谨的,前期和过程需要做足准备才能保证项目、前期1.1前期我们需要有具体的规划,包括需求、市场、后期的推广等整体策划。1.2专业公司整理清楚需求,功能规划、业务逻辑、思维导图(把需求落实到文档上面),整体实施方案。项目开发期2.1成立项目小组,项目经理、产品经理、设计师、技术开发人员、测试人员。
2.2把项目具体需求落实到ue(前后台)页面上,规划页面设计,APP开发文档框架;ue确认之后做ui。2.3开发文档、数据库设计、接口文档落实,2.4做项目demo,demo有利于避免项目需求误差,2.5程序开发,安卓、ios、后台同步开发,相互配合,2.6单元测试和整理测试,在项目开发过程中进行单元测试、发现问题及早解决,开发完成后,编写测试用例进行全面的功能测试和性能测试,确保项目上线没有问题。上线后期维护3.1部署项目上线服务器,确保稳定,3.2准备相应的资料提交项目上线,3.3提交应用商店审核,上线,后期项目功能维护,确保运行过程中稳定。