一个不爱加班iOS程序员的自我修养

本秂侑毒 提交于 2020-02-06 01:25:02

时间 * 效率 =  需求量。

作为一个程序员不加班是不可能的,但避免身体超负荷运转还是能想想办法的。
想要节省点时间,首先如果能劝的动产品经理的话,那👍。不然就得从代码效率入手了。

下面讲讲本人的成长经历。大神就不用在这浪费时间了。

第一阶段:入门阶段

反正用代码堆出来就行了。回头看代码还不如重写一遍来的快。

第二阶段:整理阶段

代码写完后一团乱麻理不出头绪,开始有意识的整理代码。加上前辈指导,代码变得规范。

func不再乱写,一个功能提供一个明确入口,如非必要不增加func。

当然这时候一个controller几千行代码的困扰还没解决~

#pragma mark - 共有方法 -

#pragma mark - 视图加载 -

#pragma mark - 事件 -

#pragma mark - 工具方法 -

#pragma mark - xxx功能 -
/*
    这是xxx功能
*/
- (void)xxx功能
{
    [self 辅助方法1];
    [self 辅助方法2];
}
- (void)辅助方法1
{

}
- (void)辅助方法2
{

}

#pragma mark - 私有方法 -

第三阶段:拆分代码阶段

排列与组合
举例:一个视图拆分多个后组装,一个controller拆成多个后,一个.m里的代码少多了!

第四阶段:设计模式阶段

拆分完代码后开始学会规划代码结构了。良好的设计,可以省掉很多额外工作量。

以最简单的工厂模式举例:

很多页面有分享

哎,又要改文案,头疼,一个一个找吧

用一个工厂专门生产文案呢


这个版本我们的文案要都换一下啊。我:好的,改完了。

第五阶段:模块化阶段

考虑代码结构的范围由小变大,开始总结抽离出独立部分。

分成模块后代码可复用性高了很多,相应的维护成本也会下降

第六阶段:进一步解耦合-面向接口

模块后的代码,无意间会携带一些耦合代码,拿到别的地方没法复用,要进一步解耦合。

人人都要有做SDK的思想,面向接口。这样对团队分工合作也是有利的,通过接口提供给别人完整稳定的功能,不需要对方操心内部实现。SDK也同时对外部封闭,是不可以从外部把手伸进来牵线搭桥乱改动的。

xxx: 这个要怎么设置。 我:调这个的这个接口就行了。

xxx: 那个数据要怎么拿到。 我:调那个的那个接口就行了。

 

第七阶段:再高级一点的封装-组件

原始资本积累。站在自己沉淀的代码财富上。

相信很多人见过这样的事情:非常多的页面在使用同一个功能,每个页面都在其中写了一遍类似的代码。天天加班忙来忙去,却没有人想去整理一下代码搞一下复用。

用这么多昂贵的劳动力做复制粘贴的事情,只能说:财大气粗。

做互联网行业的需要技术底蕴,养成途径之一:组件。

它是脱离业务的稳定代码,测试验证的时间成本就省下来了,只需专注于业务层。

团队人数越来越多,有不同的app和业务线,有了这些财富,新开业务线底层搭建的时间成本也省下了。

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!