请选择 进入手机版 | 继续访问电脑版

讨论IOS开发以及自己的经验

[复制链接]
蝶蝶已蝶已蝶蝶 发表于 2021-1-3 12:03:32 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题
讨论IOS开发以及自己的履历
1. 根本知识
根本知识有时在开发中不怎常用,来由是现在有许多三方工具,好比网络AFN,数据库FMDB(固然有直接存储模子model的工具)等等。快速开发中根本不怎么常用。
但是在一些大公司根本知识比力重要,不消这些三方工具,都是分装自己的轮子上传到git上,然后用cocoapod管理,这样的话就很重要了,对根本知识要求很严格,好比:网络底层累NSUrlSession, GCD多线程,Runtime运行时,离屏渲染,刷帧,CPU优化等等
口试找工作时也很重要,因为口试官一般都是根本不问你履历,不看你写的代码质量和稳定性,拓展性;只知道问一些根本,而且看你的外表形象,看你顺眼就登科;
2.开发注意事项
一般刚入行,或则开发了3,4年的iOS,虽然功能都能实现,但是照旧做不到特别细心,代码特别稳定的开发,偶尔由于背景数据厘革,或则自己的代码不敷严谨出现奔溃,在这里发起写代码是一定要思量全面,好比写一行代码时试着假象一下,如果这个数据厘革了我iOS端会不会出现奔溃,会的话就多添加一个if(){}else{}判定在异常里边弹个提示或则不弹提示,记取思量越全面判定越多代码越稳定。固然我们一般都会写几个工具类一行代码搞定。这个写出来的代码绝对不会因为啥么因素导致奔溃情况发生,因为奔溃是我们最严重的bug.
当做到代码稳定性特别好的时候,奔溃不再发生,用户可以正常使用的时候,接下来我们就要想办法优化代码,优化内存,优化界面。在这里我简单的说几点:耗时的任务一定要开发一条子线程,执行完任务回调到主线程,或则同时放置一个加载框也可以。 内存优化的话平常自己注意点一般不会发生,Xcode也有自己的查抄工具。我相信各人都会用也会看, 我在这里说一个最笨的方法分享一下做一个nsobject父类,重写dealloc方法,项目所有类都继承它,当你切换界面时如果一个界面没有走这个log日志那么一定是内存没有释放,在这个界面找问题就好!尚有一个就是内存泄露,当有大量图片或则一个多次循环等情况家就会造成内存泄露,这里我简单形貌下这两个问题的内存泄露,大量图片是一定要用collectionView,或则tableView,而且一定要做成cell共用,如果不能共用刷的多了一定奔溃,这个问题需要注意;另一个就是循环导致的内存泄露了,针对这种情况需要手动添加释放池加快内存释放!尚有就是界面优化在app稳定运行用户体验根本没问题的根本上,我们接下来需要优化界面:首先就是制止离屏渲染因为这个很容易导致掉帧,也就是界面卡顿,特别消耗GPU。也大概是滑动界面过程中大量开发内存创建新的对象这样的话特别消耗cpu, 也大概是耗时任务没有放在子线程处理处罚这样的话也会导致界面卡顿,出现界面不流通的话希望找个专门优化界面的文档一步步认证排查!
如果写出的代码特别稳定,内存也优化的没问题,而且界面也特别流通。我以为一个比力完美的app就开发完成了!

3. 项目结构
这个问题是最重要的,也是最具有技能含量的。但也是许多人包罗口试官最容易忽略的一个问题。一个结构好的app项目,可拓展性,可维护性特别高。就算添加了许多新的功能和需求,代码逻辑依然那么清晰,调试bug只需要到自己开发的固定模块里边修改就好!而且想做一个功能特别多,用户体验好,代码稳定的app,项目结构是重中之重!
我以为许多干的年限不长的iOS开发,最后导致去职的原因是“TMD,一直改代码一直加需求功能”,实在我们不妨想一想是不是自己的开发思想缺少进步,导致代码一坨坨的,最后自己都分不清绿豆几颗黄豆几颗了!而且只要一动代码许多奇诡的bug都会向你拥抱,最后维护都困难别说继承开发了,只能闪人了!固然我也烦无来由的,没须要的新需求,但是做了这一行我们也许能做的就是把自己的代码模块化,代码清晰,可拓展性特别好!这样的话你就可以再也不怕新需求了,哈哈
来源:https://blog.csdn.net/gewanping1/article/details/112060840
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则


专注素材教程免费分享
全国免费热线电话

18768367769

周一至周日9:00-23:00

反馈建议

27428564@qq.com 在线QQ咨询

扫描二维码关注我们

Powered by Discuz! X3.4© 2001-2013 Comsenz Inc.( 蜀ICP备2021001884号-1 )