ios项目总结ppt

工作总结 时间:2017-09-26 我要投稿

  ios项目开发总结范文【1】

  四周的时间能够和山大的同学一起工作、学习、生活我感到非常的荣幸,同时也感觉到很大的压力,作为电子商务专业的学生从事软件开发感觉还是有一定的困难,特别是我们还是和山大大三的学生一起,在初来时自己就有一些不自信,但随着项目的进展,我慢慢的找到了自己的位置,找到自己的目标,虽然自己与好的同学还有差距,这也给了我很大压力,但是我相信没有压力就没有动力,所以整个实训过程中我都在不断地努力。

  实训期间让我学到很多东西,不仅在理论上让我对it领域有了全新的认识,在实践能力上也得到了很大的提高,真正的学到了学以致用,更学到很多做人的道理,对我来说受益匪浅。特别是利用周六上午的时间山大为我们安排的讲座让我们了解it领域一些新的发展动态以及一些领先的技术,让我意识到自己知识的缺少,这激励我在以后的学习、工作、生活中要不断了解信息技术发展动态以及信息发展中出现的新的技术。

  除此之外,我还学到了如何与人相处,如何和人跟好的交流,我们组成一个团队大家一起开发一个项目,大家的交流沟通显得尤为重要,如何将自己的想法清楚明白的告诉队友,如何提出自己想法的同时又不伤害其他的队友的面子,这些在我的实训生活中都有一些体会。可是说,第一次亲身体会理论与实际相结合,让我大开眼界。也是对以前学习的一个初审吧,相信这次实训多我以后的学习、工作也将会有很很大的影响,在短短的二十几天里这些宝贵的经验将会成为我以后工作的基石。

  作为大二的学生,经过两年的在校学习,对程序设计有了一些基本的理性的认识和理解。在校期间一直忙于理论的学习,没有机会也没有经验来参与我们项目的开发,所以在实习之前软件按开发对我来说是非常抽象的,一个完整的项目要怎么来分工以及完成该项目所需要的基本步骤也不明确,经过这次实训让我明白一个完整项目的完成必须团队分工合作,并在每个阶段进行必要的总结和检查。在我们项目的开发过程中我们项目的步骤:详细设计、详细设计review、编码、编码review、单体测试。在项目开发过程中我也深刻的体会到详细设计对一个项目开发有明确的指引作用,它可以使开发人员对这个项目所要实现的功能在总体上有具体的认识,并能减少在开发过程中出现不必要的脱节。

  经过二十多天的obbligato信息安全管理的java开发,是我对java软件开发平台有了更深一步的了解,也对nec公司的obbligato平台有了一定的了解。

  这次实训是对我们两年学习的一个检验,虽然项目中很多知识我们在日常的学习中都没有遇到,这同时提醒我:要想成为一个合格的程序员就有具备一种自学能力,在工作中会遇到很多从未接触过的问题,当有了问题时要去解决,在你不断努力,寻找答案的过程中,自己的能力也在潜移默化的提升。有时遇到问题时可能有很多想法但却不知道那个正确,这就让我们不断地去探索,不断地尝试。

  这次实训也让我深刻的了解到,不管在工作中还是在生活中要和老师、同学保持良好的关系是很重要的。做事首先要先做人,要明白做人的道理,如何与人相处是现代社会的做认得一个最基本的问题,对已自己这样一个即将步入社会的人来说,需要学习的东西很多。从一起做项目的同学身上我看到了谦虚谨慎、细心努力的态度,在以后我的生活中我还会留意身边同学的优点,从他们身上找寻我所缺少的品质,不断学习。从老师那里我看到了企业人的生活面貌,没有事情可以不劳而获,今天老师们能够领导我们是他们之前努力的结果,虽然老师没有和我们讲很多公司里的事情,可是他们的言行中所表现出来的都是比我们要严谨的多的对工作的态度。

  在此次的实训中我感觉到我们最大的不足就是动手的能力太差,在项目组中山大的同学也给我提出一些建议,让我有机会自己多动手,不是我们缺乏知识,而是我们没有运用知识的能力,在二十多天的项目开发过程中,我自己也认识到虽然我们的理论知识没有山大同学那么全面,但是如果在学校认真学习了,我们的理论知识并不比他们差,所以以后的日子,如果自己还要继续从事软件开发相关工作,我会更加注重自己的动手能力。再者,我们要有更好的学习心态,看到山大的很多同学会在晚上项目结束后再去教室上自习,深深地意识到我们的学习态度有多大的差距,原来在学校的时候我们九点基本就要从教室回宿舍了,而他们还会再继续利用九点以后的时间努力学习,虽然在山大就短短不到一个月的时间,可是我所体会到的对我以后的学习将会有很大的影响,我想在大三专升本复习的过程中,在山大的经历会让我更加有动力,更能坚定信念:坚持、努力。学习山大学生刻苦、勤奋的学习态度。

  山大的实训已经成为过去,可是在山大学到的东西会一直影响我以后的发展,突然想起鲁迅先生的一句话:世上本没有路,走的人多了,便成路。生活的路也是人走出来的,每个人一生总要去很多陌生的地方,然后熟悉,然后再走向另一个陌生的地方。在不久的将来,就要踏上人生的另一段旅程,以后的路上有时不免会感到有些茫然、无助,但生活的路谁都无法预测,只能一步步摸索,但只要方向正确,只要我们向着目标不断努力,相信在不远的将来我们一定会有一片属于我们自己的天空。

  iOS项目总结【2】

  第一个正式的universal项目差不多快要结束,总结一下,分享给大家。因为可能我的比较具有代表性,如何从压根不懂开始做起。(分享的另外一个目的也是希望大家提提建议,毕竟只有互相交流中才能更快成长)

  做项目前:

  零面向对象实际项目经验,更不用说透彻理解design pattern

  零iOS实际项目经验

  只懂一点点的C和汇编代码,其它如java、ruby、php、HTML5一点不沾边,可以说是不属于互联网的业余玩家

  项目的情况:

  做项目过程中,客户需求变化极其频繁和巨大,对代码结构的robust是一大挑战。虽然本人特别讨厌需求变动,但是在外,身不由己

  Universal项目,即是iPhone + iPad 的一个项目

  基本上这个项目涉及到了iOS的方方面面,麻雀虽小,但是五脏俱全

  关于程序结构设计

  尝试用面向对象的方式去设计结构,但设计的时候流于形式,根据现有的一些best practice依葫芦画瓢,但实际上只有实践了才知道,比如:

  1. 属性: 什么时候用和为什么用属性、如何保持属性私有、self.的使用,属性的内存释放;

  2. 成员变量和属性的区别

  3. 方法:什么时候用类方法和对象方法

  4. 好的设计真的是“增之一分则太长,减之一分则太短”;好的设计关系到以后重构的方便性

  5. 解耦设计:对象之间如何通讯,如何传值,如何回传,如何用好notification、delegate、KVO;如何保持对象的纯洁(不受玷污)

  6. MVC中的M和C分离,一直觉得自己做的项目是小项目,而且一直认为过于注重结构,会增加代码量,但是实际上项目不分大小,好的设计:

  能随时应对客户的需求变化

  能自己看得懂自己写的代码(改的多了,都看不懂自己的代码了,这是最悲催)

  回归测试,一旦客户需求改变,乱糟糟的代码更加乱,这样回归基本上是需要全部。好的设计可以把客户需求改变带来的回归测试降低到最低

  关于面向对象设计

  之前从没有面向对象设计的经验,所以第一次从这种角度去解决问题。“实践出真理”,无论你平时看多少书,如果没有实践过,真的是无法体会面向对象设计的:

  一切从面向对象出发设计:类、对象、(私有)方法、(私有)属性

  所谓面向对象,就是根据现实世界中客观存在的事物(即对象)出发来构造软件系统

  只有真正从面向对象去设计,几个月甚至几年后,你才能复盘你的代码。以前一直觉得代码复盘如同围棋复盘绝对是天才才有的本领,现在才明白,其实关键是:你要清楚的知道你的代码用在了哪里,为什么用

  从面向对象出发,不要觉得一个功能很简单一个方法就搞定,尽量用面向对象去考虑。这是做项目过程中犯的最大的错误

  关于ARC

  我是项目做了1个月后,才决定把项目从MRC转到ARC,现在回头看看,当初真实明智,因为在第一个月,内存管理上的问题和处理让我很头疼也很花时间。关于ARC

  没有想象中的会比MRC性能差,ARC不是JAVA的垃圾回收,性能其实与MRC基本一致

  ARC中没有明确的release操作,这时更需要注意内存管理,比如在一个Controller中使用Gyro sensor的时候,这种操作是绝对不能赋值给局部变量的:[[CMMotionManager alloc]init]

  虽然ARC似乎能为你做很多事,但是有些事情自己解决还是自己解决,比如当不需要用Gyro sensor时,_motionManager = nil(此时如果不设置,则startDeviceMotionUpdatesToQueue中的更新会一直进行);

  总之,对于ARC,难得糊涂中要“时刻保持觉醒”

  关于Perfomrance设计

  Coding真的是一点都来不得马虎,以前一直觉得iOS性能强大,无须担心性能,但是项目做下来,一大痛苦之处就是性能不够:

  应用程序、UIViewController和UIView的生命周期的认识如果不十分清楚,就很容易造成性能瓶颈

  大量的UIView插入移除操作会导致性能问题

  UITableView和UIScrollView导致滑动不顺畅的best practice

  关于知识点

  成为一名优秀Programmer需要丰富的经验和知识面,但是知识永远是学习不完的,所以要抓核心和基本,个人觉得以下几个知识点是iOS开发必须的。至于有些比如CoreText、CoreImage等,其实等到需要用时再去学习也来得及。

  内存管理,MRC和ARC

  多线程,iOS下有多种多线程实现方式,什么都应该了解一下,但是除了dispatch需要精通,其它只需要看懂 (dispatch效率最高,使用最方便)

  数据库,无论是Core Data,FMDB还是基本的Sqlite,万事不离其中,掌握Sqlite和SQL基本语法是必须的

  UIViewController、UITableViewController 和应用程序的生命周期

  看似简单但是很有深度的View之间的转场处理,因为涉及到大量生命周期,如presentModalViewController, presentViewController, pushViewController, addSubview, removeFromSuperview, self.view....

  网络处理相关的,如何请求JSON数据,如何HTTP GET和POST

  旋转处理,特别是iOS4、iOS5、iOS6的不同处理

  Debug的能力

  基本的设计模式:MVC、delegate、notification、target-action

  面向对象的核心思想,例如:不要以用户无法使用或不感兴趣的东西扰乱类的公有接口、类之间应该零耦合、把不相关的信息放在另一个类中

  不重复造轮子

  这个也不例外,iOS下的开源framework都太多了,基本上你需要的都能在Github或者Stackoverflow上找得到,所以平时:

  不要做井底之蛙,平时多了解开源的框架

  框架适合就行,就像争论AFNetwork和ASIHttpNetwork更棒没有意义的。写程序的有两类人,一类人追求技术极致,一类人技术只是实现产品的一种手段,我就是后面这个

  关于开源框架的学习

  这世界好的开源框架太多了,给我10年都看不完,所以需要选择,就像读书不在于都多,而在于读精,个人推荐如下。

  Three20 (其实我是不推荐的,因为它过时了,但是因为淘宝客户端用到)

  AFNetwork

  MBProgressHUD

  SDWebImage

  关于Continuous Improvement

  Six sigma中提到了持续改进,我们的能力提高也是这样。通过读好的开源框架是最好的进步方式。如何读开源框架,我们读开源框架的目的:

  其中的花式写法我们只是了解,不是我们的目的

  了解作者写框架的思路

  对比自己现有的,求改进

相关推荐