最近听人说 iOS 没什么技术含量, 不就是画画 View 写写业务吗?
其实写下面的随笔也是对自己内心的回答。对于一般的程序员以及一般的公司也没错,因为他们从来没把自己作为一个工程师。
我也算这样的程序员抱有得过且过的心态,但心底始终有一个工程师的梦想。
关于技术含量的问题,其实掌握一门语言不过是像汉语掌握了一点词汇量,离成为一个合格的编辑乃至作家很有很多要学的。
* 会使用 CoreFoundation 吗、CoreText、CoreImage、Metal 等等又有多少了解。
* 比如架构 RN延伸的动态化、TargetAction 延伸的组件化、OpenGLES延伸的音视频、ASDK延伸的异步渲染等等技术。
* 还有类似 Jenkins flowci 等工具的使用以及脚本语言的编写。
* 基础知识如数据结构、算法、git的掌握。
* 编程思想如设计模式的掌握,面向协议、切面编程,函数式编程等等。
* iOS+区块链, iOS+AI 等等无限可能性
当然技术主要是用来解决问题的,我们主要80%的任务还是解决实际的业务问题。
就说简单的写业务,很多人都做不到高内聚低耦合,其实原因很简单,大部分是懒,小部分是技术不足。
加入一家新的公司一段时间了,也做了几个大需求,原有项目接手的人没有10个也有8个,带来了各种代码风格以及项目的臃肿。
所以想要整理整理项目工程,同时谈谈项目工程。
首先是收集资料
因为业务代码是耦合度最高的文件。所以先从基础组件重构。
我理解的基础结构
先拆分 Tools . 分为
ToolsKit 通用的工具类
BussinessKit 自定义视图 / 业务视图
FoundationKit NS 相关扩展与基础工具
UIKit UI 相关扩展与基础工具
To Be Continue....
-
Reference:
[程序员如何在技术浪潮的更迭中保持较高的成长速度](https://www.jianshu.com/p/d5ec6150e4ed)








网友评论