项目开发感言

来源:互联网 发布:手机怎么ping网络 编辑:程序博客网 时间:2024/04/30 05:05

           这是我在第一个公司接手的第一个项目,2014.11.3接手,2014.12.8完成(现在还没上线,项目名称微铺宝),算是说把我的处给献给我现在所在的这个公司吧(哈哈~开个玩笑了),这个项目是一个人独立开发完成的(我们iOS部门目前5个人),为什么是我独立完成的呢,下文再解释

           我现在所在的公司是搞ERP(我在这公司呆了1个多月了,我也不知道啥是ERP)的,具体的公司名就不说了(一下就叫ZSXJ),北京的一个公司,什么是ERP自己查去, 我刚来这个公司面试的时候,面试官(也就是我现在的头)面试我,问的问题也不是太难,问了一个推送、单元格复用、SDWebImage的内部实现还有一个手动管理内存,让我震惊的是,这个面试我的人问我的问题竟然全部都是手写代码,一个单元格那么长的协议方法唰唰就写出来了,反正我是看呆了,然后我感觉回答的还不错,然后面试官就开始给我说公司怎么好怎么好啊,是搞什么的,就开始说了起来,当时我就知道基本上妥妥了,果不其然一会人事就开始来谈工资啊,福利啊等等一系列问题了,他们人事其实人也不错,还给我说了说在这边哪里的房子多,并且离公司也近(确实挺近的,走路十分钟到公司,公交车1站,2分钟),不过最让我蛋疼的就是,他们人事也给我说让我什么时候入职了,入职带什么东西也说了,但是他们人事就是没给我发offer,让我心里很没底,并且我给人事说了3遍说让给我发offer,到最后他也没发(我估计他是忘了,因为这个人事真心还可以),我感觉他们人事好像不知道网络公司的规矩一样。

            还好周一(2014.11.3)顺利入职,入职之后先发一台pro,什么型号的我也不知道,反正是一台新电脑(包装都是我自己拆的),入职之后就开始让我看代码,看他们以前写的项目,只是感觉那界面UI真是水,看着真戳,刚开始我还不知道,呆了两三周我才知道他们iOS部门也是才成立不久,呆得最长的也就是从成立到现在才两个多月,然后就是开始熟悉他们写的代码,天天看的困死了,看着看着都差点睡着(没找到工作之前,一直在石景山那边住,每天早上六点就得起床),就这么颓废了三天,然后周三的时候,我们头把我们几个iOS叫到会议室还是探讨一些问题探讨的问题竟然是单元格的复用,并且他们一直用的是最古老的复用方式

    staticNSString *identify = @"cell-tag1";

    //查询闲置池中是否有闲置的单元格对象

   UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:identify];

   if (cell == nil) {

        cell = [[UITableViewCellalloc] initWithStyle:UITableViewCellStyleDefaultreuseIdentifier:identify]; 

    }

然后我们头领着我们讨论的是这种方法创建单元格

cell = [tableViewdequeueReusableCellWithIdentifier:@"reuseIdentifier2"forIndexPath:indexPath];

当时我也是看醉了,因为我一直再用的都是这种方法,那种老方法代码太繁琐了,然后我就给他们大概说了一下这个方法什么意思

紧接着他们又讨论的一个问题关于响应者链的问题,正好这个我也会,我又给他们解释了一下,

         可能我表现的有点突出了吧,果然我果断中枪了,我们这个工作的房间很大,但是人也不少,其实是两个公司,但是这两个公司我们都是我们BOSS的,然后他们另一个公司的一个好像是项目经理一样的一个人过来给我头说他们公司需要iOS做一个项目,但是他们公司没有iOS部门,说让我们帮帮他们,然后我们头就看到我了,那个项目经理一样的人吧这个项目的大概需求说了说,让我们头问我有问题没,其实当时我心里非常没底,硬着头皮说还可以吧,然后他们接着问我说大概多长时间,这个时间才没底呢,我说尽量吧,然后那个人就把需求、图片、接口文档都给我了,说这些你先看看,什么东西用到了问我要就行,当时我就有点蒙了,刚来公司三天就给任务,给任务你就算了还让我自己完成,让我自己完成也不说了,要个文档接口图片需求什么的还得跑到别人公司要(虽然说两个公司之间只有三四步的距离),当时我心中千万头草泥马呼啸而过,心想:头啊,你怎么能这样啊(其实后来相处时间长了发现我们头其实也可不错的),但是现在想想看,其实自己单挑一个项目其实也不难最主要看是什么项目,现在想想看估计也就是我们头想看看我的水平吧。

刚开始做的时候感觉还是得心应手,界面什么的全部都是stoaryboard和xib相结合画的(到最后适配的时候才发现这玩意都是坑,估计是自己的水平不够吧),然后就是测试接口,网络请求什么的全是用的开源框架AFNetWorking,各种开源框架各种用。然后测试接口的时候我茫然了,这接口怎么搞,我连知道传什么参数都不知道,接口文档中的所有接口全部POST请求,平常用的POST都是简单的POST请求,但是他们的接口文档全都是POST,我看有些本应该就是GET请求的,他们也全部都是POST,各种参数各种请求,参数各种加密,一下茫然,然后我就去问他们后台,这参数怎么传,他说就按照接口文档上那样传不就得了,我只能呵呵了。。。没办法,只好求救我们头了,测试了一个登录接口基本上快搞2-3个小时,也是拉着他们后台一起测试,最终总算是测试出来了,我也算是知道怎么传参数了。

往后边做的时候就还可以了,一些不懂的东西不会的东西,自己先琢磨,网上查,实在是找不到了就先问我们同事,同事也搞不出来了,就问我们头,并且每次问我们头的时候他都讲的很耐心,就是这段时间我发现我们头其实真心不错的,整个项目做下来问我们头大概有4-5个问题吧,自己解决的小问题就不计其数了。现在我感觉问我们头4-5个问题已经很多了,我感觉如果像其他公司的,问这么多问题,他们也早烦了。我感觉以后有什么问题就自己解决,各种百度各种博客各种网站,搞不出来了就趁中午和同事一起吃饭的时候讨论讨论,最好别占用上班的时间讨论问题,因为你的同事也有自己的任务要做,推荐一个外国的网站http://stackoverflow.com,基本上什么问题都可以查到,但是都是鸟文(各种词典各种用吧)

整体界面和请求数据都搞完了,最后就是一些分享,推送,以前只听说这些东西都是用的第三方的,他们都说用起来很简单,呵呵~说的都像喝水一样那么随意,真是用起来了,我发现这些玩意,真心麻烦;推送,集成的是极光的,一个推送我差不多搞了5天左右(大神勿喷),各种配置,各种设置,真是麻烦,其中也走了不少弯路(过几天整理整理写一个推送和分享的博客)。然后就是分享,也是用的第三方的,刚开始用的是ShareSDK,都集成好了,然后我给他们公司的人看看,他们说不行,不符合需求,呵呵~(心中再次。。。你们懂得。),他说他们Android版本用的是友盟的又让我换成友盟的,还好这种分享基本上都差不多,友盟的和ShareSDK基本上都大差不差,集成友盟搞了一天就搞出来了,虽然都是分享,但是个人感觉ShareSDK比友盟的好用,并不是说代码少,而是ShareSDK的客服真心不错,问什么他都给我解决,中间测试分享和推送一直用的都是同事的手机(本人穷b一个),人家新买的5s还给人家用死机了。

然后这写东西都搞完了,就是最后让我最蛋疼的适配了,xib和stoaryboard用这简单,确实代码简洁不少,但是到后边的适配我才发现这是蛋疼,本来是往stoaryboard和xib上加约束条件,发现约束不了他们,主要是我学艺不精吧,还好需要适配的界面上都没多少控件,我就果断把那几个需要适配的几个页面的stoaryboard和xib全部删了,直接又重新手写了一边,这些东西看起来以后还得好好研究研究。

代码写完了,发现可多代码写的都是重复的,本可以抽出好几个基类出来,代码写的太臃肿,这都是以后需要注意的吧,做程序员千万不能眼高手低,我感觉这是忌讳,不要看简单就不写了,想到什么敲出来运行出来。最后给大家来一张我做完一个程序之后桌面的样子,原谅我这一生不羁放纵爱自由,强迫症处女座还是别看了。。


    



0 0
原创粉丝点击