• 近期的总结 - [原创]2012-02-18

    Tag:ios git gerrit

    很久没写博客了,虽然成天的瞎忙,但是也不能成为理由,还是要坚持写.

    由于近期工作中开始了iOS方面的业务,我也投入了更多的时间在iOS开发的学习上.

    自从组里来了一个iOS大拿,学习的进度快了很多,有问题也可以请教了. 最让我吃惊的是我们在开始做第一个App项目的时候,他设计的架构完全没有使用Interface Builder开发UI,全部的UI都使用代码完成,完全颠覆了我从书上看到的,收获很大,感谢之.

    最近完成了一个iOS数据收集SDK,因为要同时提供给Flash应用使用,所以进行了ANE的封装,在封装ANE时遇到的问题,分享一下:

     

    1. 如果.a 需要和ANE连编,在Objective-c的代码里最好不要使用@try @catch 代码,否则会在链接的时候会出现下面的错误.

    Undefined symbols:

      "_objc_terminate", referenced from:

    发现这个原因是偶然间想到_objc_terminate很可能是@finally 代码块里的,就修改了SDK里所有的@try @finally写法,结果接连接成功了.

    而具体的原因,我还不清楚,在stackoverflow和adobe 的官网上都提这个问题,目前还没有回复.

    2. 最好同时编译armv6和armv7两个版本

    ANE对armv6的支持较好,一般的代码编译不会出问题;而ANE目前对armv7的支持仿佛有问题,在链接的过程中可能会出现各种警告,如果有警告,那即使打包成功了,但是在运行时也可能会崩溃. 

     

    目前团队的人马渐渐多了起来,我们也尝试了Gerrit的Code Review,在所有的Java工程开始启用了Code Review,目前看效果还不错,但是更重的开发任务还在后边,可能会有更复杂的情况发生,需要持续地关注和投入.

    对基于Git的开发流程,我以前很喜欢git flow这个工具,但是在使用Gerrit的时候,我们全面倒向了repo这个简单又强大的工具.

    Git flow稍显复杂,以前多次在团队内部推进也没效果,而repo一推动,大家就自然地接受了,正应了最近看完的<软件框架设计的艺术>中提到的"无绪",我很赞同作者提出的这个词,在今后的产品设计,开发方面要多下功夫了.

     


    收藏到:Del.icio.us