iOS进阶路线以及进阶书籍
第一,熟悉ARC机制:首先要了解ARC的前世今生。假设了解不清楚会导致两种可能,1,一个对象的引用莫名奇异为空。或失效了。这个一般都能在开发阶段及时发现,由于会导致应用异常。2。导致内存溢出;不了解ARC机制非常easy导致内存不能被正确释放,这类问题会非常隐蔽。
若非特意去做内存測试,那么都会在用户使用的阶段才会被暴露出来,由于内存消耗是个累积的过程。用户不断使用APP,至到内存耗尽。异常退出。
第二,了解Block的使用方法:我使用后的感受是,能够把一个操作的不同结果的处理放在一起,而不用分散到各处。逻辑看起来更加清晰。
第三,GCD的用户:很好用的多线程。再加上block的,能够不再使用selector了。
以上三点内容能够看这本书《Objective-C高级编程:iOS与OS X多线程和内存管理》
第四,灵活使用auto layout:auto layout 出现有非常长时间了。自从ios7 xcode5開始又有了重大改进。假设你还是使用autosizing,然后自己计算位置的话,那你就是老古董。
-第一阶段:Auto layout的入门能够看岁寒的的三篇博文。从入门開始,到做几个有难度的页面:http://lvwenhan.com/ios/430.html
-第二阶段:然后就在实际中多多操作。当有些感悟的时候。能够看看这篇总结帖:http://vit0.com/blog/2013/12/07/iosxue-xi-zhi-autolayout
-第三阶段:实际上auto layout是基于一套理论基础。功能很强大。要做真真的高手的话。请看这本书《iOS Auto Layout开发秘籍(第2版) 》
第五。看看人家是怎么做:非常多事情自己在做的时候会以为这就是最优方法了。这样的状态非常危急,陷入到了闭门造车的状态。
改变这样的状态的方法
-方法1:和外界多交流;
-方法2:看这本书《iOS开发进阶》。这本书实际上记录作者工作中的一些技能和技巧;内容不能说非常全面,可是翻一翻。或许就能发现其它人做的好的地方。
第六。Swift,这个就不多说了。语言本身我没看出特别高明的地方。
效率,模式?事实上就是个oc的翻版。苹果不会无缘无故推出这个语言。近期轰动的举动就是宣布开源了。
费这么大力,一定有原因的,程序猿们,跟上吧。
再补充三个
第七,coredata:曾经我也用sqlite来保存数据,事实上通过coredata来保存数据更加简单,非常类似hibernate。深入讲coredata的书不多。有一本叫《CoreData应用开发实践指南》 ,并不推荐用于学习,能够作为參考。
并不非常难,关键是实际中操作。
第八。设计模式:严格来讲OC是个面向对象的语言。23种设计模式还是能够适用的。
推荐 《Objective-C编程之道:iOS设计模式解析》
第九,《iOS应用逆向project》,剑走偏锋就是破解,用在正途就是学习。
iOS进阶路线以及进阶书籍的更多相关文章
- iOS原生地图开发进阶——使用导航和附近兴趣点检索
iOS原生地图开发进阶——使用导航和附近兴趣点检索 iOS中的mapKit框架对国际化的支持非常出色.在前些篇博客中,对这个地图框架的基础用法和标注与覆盖物的添加进行了详细的介绍,这篇博客将介绍两个更 ...
- CI Weekly #8 | CI/CD 技能进阶路线
在使用 flow.ci 进行持续集成的过程中,也许你会遇到一些小麻烦.最近我们整理了一些常见问题在 flow.ci 文档之 FAQ,希望对你有用.如果你遇到其他问题,也可以通过「在线消息」或去 Git ...
- vue3.0新特性以及进阶路线
Vue3.0新特性/改动 新手学习路线 ===> 起步 1. 扎实的 JavaScript / HTML / CSS 基本功.这是前置条件. 2. 通读官方教程 (guide) 的基础篇.不要 ...
- iOS开发路线简述
1 iOS开发环境1.1 开发环境标准的配置是MacOSX+Xcode.MacOSX的话首选用苹果电脑,Macmini最便宜只要4000多就好了然后自己配一个显示器,MacBookPro 也可以,不推 ...
- ios 学习路线总结
学习方法 面对有难度的功能,不要忙着拒绝,而是挑战一下,学习更多知识. 尽量独立解决问题,而不是在遇到问题的第一想法是找人. 多学习别人开源的第三方库,能够开源的库一定有值得学习的地方,多去看别的大神 ...
- Python:什么是进阶,如何进阶?
目录 Python:什么是进阶,如何进阶? 1. 什么是进阶? 2. 如何进阶? 3. 除此之外呢? Python:什么是进阶,如何进阶? 1. 什么是进阶? 一门编程语言的基础部分,往往非常简单.如 ...
- iOS开发——iOS学习路线
iOS学习路线 版权声明:欢迎转载,请贴上源地址:http://www.cnblogs.com/iCocos/(iOS梦工厂) 一:自学初步学习路线 二:高级完整学习路线 三:完整知识与能力体系 思维 ...
- 架构师素养及从小菜进阶架构(CTO)的书籍【转】
CTO要了解无线技术/搜索/大数据/数据库等. -- 通常定义架构有几个层次,这包括业务架构.产品架构.应用架构和技术架构: 1.业务架构:描述一个企业围绕一个行业做了哪些业务,例如支付行业的收单.退 ...
- php自学提升进阶路线
为了自己对php的系统全面深入的掌握,我通过个人经验,以及搜索网上高手经验,汇总了一份php自我学习路线规划,包括实战演练.学习建议.高手进阶.常见问题和测试总结五块.算是一个系统的学习计划和目标吧. ...
随机推荐
- 移动GPU全解读(二)
[编者按]:本文作者为爱搞机特约作者.技术达人"炮神"@ioncannon. 在上一篇移动GPU解读中,对移动GPU的架构.相关參数进行了介绍,本部分介绍的则是移动GPU的Shad ...
- Qt 5.11的QChar、QString、QTextBoundaryFinder和双向文本算法现在完全兼容Unicode 10
本文翻译自:Qt 5.11 released 原文作者: Qt公司CTO兼Qt开源项目维护官Lars Knoll翻译校审:Richard.Hongfei.Haipeng 5月22日,我们提发布了Qt ...
- weblogic虚拟路径配置
首发地址 https://blog.leapmie.com/archives/344/ 前言 weblogic的虚拟路径配置有两种: 一种是在项目下配置,即在weblogic.xml中配置,该方法配置 ...
- JS/CSS 各种操作信息提示效果
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...
- Node中的JavaScript和浏览器中的JavaScript的区别
浏览器中的JavaScript: 1.基于ECMAscript规范,这个规范规定了语法 2.添加了dom:用来处理文档 document object model 3.添加了BOM:用于操作浏览器 w ...
- JS实践与写博客-序
大二的时候,就开始接触JavaScript了. 当时学了1年多,主要是认真看了一本JavaScript的入门书籍,了解了JavaScript大致怎么回事.在独自做Web项目的时候,用的都是JavaSc ...
- ASM(四) 利用Method 组件动态注入方法逻辑
这篇继续结合样例来深入了解下Method组件动态变更方法字节码的实现.通过前面一篇,知道ClassVisitor 的visitMethod()方法能够返回一个MethodVisitor的实例. 那么我 ...
- AndroidStudio MAT LeakCanary 内存分析之 LeakCanary
现在我们换一种更清晰方便的方式:LeakCanary https://github.com/square/leakcanary 首先将LeakCanary绑在我们的app上 build.gradle ...
- 【Educational Codeforces Round 33 B】Beautiful Divisors
[链接] 我是链接,点我呀:) [题意] 在这里输入题意 [题解] 把所有的那些数字打表出来. 逆序枚举就好 [代码] /* 1.Shoud it use long long ? 2.Have you ...
- 人工智能计算器AI Calculator 3.3.0 具体破解思路&教程
人工智能计算器AI Calculator 3.3.0 具体破解思路&教程 [文章标题]:人工智能计算器AI Calculator 3.3.0 具体破解思路&教程 [文章作者]: Eri ...