独立开发app如何提高自身编程能力?

用户68736147

开发app需要一个完整的团队,其中至少要包括android开发、IOS开发、html5开发、服务端开发、美术和测试,这还仅仅是开发团队的配置,正常还应该有产品经理、主策、视觉工程师和交互工程师。

完整的团队配置是保证app质量和按期交付的关键,互联网产品通常对用户体验都比较看重,所以一般公司在进行app开发时都有一个至少5人的小团队。到目前为止我还没有遇到一个人完成所有任务的情况,但是存在只有一个程序员做android端开发或IOS端开发的情况,这种情况也大多出现在给企业内部做定制产品时。下面就说一下这种一个人完成某一部分开发的情况,如何在这种情况下持续提高。


手机端开发本身难度不大


不管是android端开发还是IOS端开发,整体难度都不大,因为就是一个客户端的开发过程。大部分的业务处理都在后端进行,前端的主要任务是做数据输入和数据展示。

手机端开发分为原生开发、非原生开发、混合开发三种情况,android开发采用java语言,IOS开发采用OC或者Swift语言,混合开发会结合html5技术。

做手机端开发的整体提升空间也还可以,使用的技术大部分都是前端的内容以及一些框架的熟悉和使用。程序员的编程能力基本上会跟着用户走,用户量越大、使用面越广、功能越多则对产品的要求也越高。所以要提升编程能力一方面是跟着需求走,另一方面是主动学习,定期关注android和ios的开发社区,跟全球的程序员一起交流,了解最新的开发技术。


服务端开发任务量较大


app开发的大量任务集中在后端,用户的所有请求都发送到服务端进行处理,处理结束后把数据在手机端呈现出来,所以服务端是开发的重点和难点,需要掌握的知识也比较多。

目前服务端采用java语言比较多,当然也可以使用python等语言。整体处理流程遵循以下步骤:

  1. 接收手机端请求并验证数据。

  2. 判断用户请求目的,调用相应的业务模块进行业务处理。
  3. 生产回应并返回数据。

这个过程中比较复杂的过程集中在第二步,也就是导航这个步骤,这个步骤的任务处理从控制器开始,接着由控制器来调用业务模块(有可能是第三方框架)进行具体的业务处理。整个系统的压力也集中在这个步骤上,所以针对这个部分的优化操作也比较复杂。

常见的处理方案是池化、共享业务组件,也有把任务发送到第三方机构(数据中心)来完成具体的处理过程,比如人脸识别、身份验证、语音通信等等。通过对这部分内容的优化处理会提高程序员的业务能力,也是一个比较常见的提升通道。

我做移动互联也有一段时间了,后续会在头条上撰写关于移动互联开发的文章,大家可以关注我,一起交流学习。


IT人刘俊明

我觉得自己设计的app的话,把遇到的所有问题都解决了的,自然能力就提高了,不是吗。

还可以通过github代码阅读与模仿和学习,阅读别人优秀的源码挺好的,看别人代码,优秀的模式,借鉴,重写这也是种方法!!!

同时必须多看,多写,多思考总结自己知识漏洞!。

这个外国人他在不到3周的时间里,他却成功地开发出了自己的第一款App——Photo Date的。除了编程,从idea、设计到成功上架App Store的一切工作都是Ben一人独立完成的的,嘿嘿。

个人学习总结嘿嘿:

1、你可以把你脑子里的点子都尽可能复刻出来的。

2、尝试写自己的轮子的。

3、尝试重写一些app的界面,实现和他一样的效果,做出不同的效果。

所以不管怎么说看十遍,不如写一遍。解决问题的过程记录下来,久而久之的,再遇到问题也就得心应手,好的开源项目fork下来,阅读调试是非常值得的的。

程序员应该有扎实的基础的。数据结构、离散数学、编译原理的的,这些是所有计算机科学的基础的,所以如果不掌握他们,很难写出高水平的程序的。据我的观察的,学计算机专业的人比学其他专业的人更能写出高质量的软件的。。。


我的内容我做主


华创云

提高编程能力的唯一途径就是多敲代码,多思考,注意是自己敲,copy别人的永远不会有长进,当然了这个首先需要你有良好的基础,扎实的基础才是解决所有编程问题的杀手锏,前期可以多多分析别人的代码,想一下为什么人家要这么写,还有多看一些开源的源码,你会有质的飞跃


王烁影

有没有搞错!又来?这是要把我逼疯的节奏吗?我确实不知道,没这方面的知识储备。如果硬要我回答,我就只能神吹了!当然这是不好的,容易误导读者。所以,只能到这里了!不次不要问我这些问题了好吗?😜😜😜😜


分享到:


相關文章: