/IOS_dev_learning

record the self study path for IOS develop

Primary LanguageObjective-C

IOS_dev_learning

record the self study path for IOS develop

最近在自学开发IOS,记录一下学习路径

首先是OC语言学习,参考尼古拉斯赵四的博客,其目录结构已经很清晰。 https://blog.csdn.net/jiangwei0910410003/article/details/41928347

里面有代码示例说明,当然有一小点内容可能是有误的,这个读者可以自行在学习过程中解决修正,这也许是作者留下来的彩蛋,需要自己的寻找解决方法。

有C语言基础的话,学习起来更快,OC就是在C语言的基础上增加了面向对象的**,例如封装,继承,多态。

对协议的理解为:定义接口,由实现类去实现接口;

对于代理的理解为: 多态实现,在运行时可以用不同的子类去运行;

重要的基础类: 基类NSObject, 字符串, 数组,字典

存储方面的文件操作;

内存管理,这部分调试需要关闭ARC,当时在虚拟机中调试没有找到此功能,后来在Mac真机上完成;

其次是IOS组件学习,参考了《iOS开发指南 从Hello World到App Store上架 第4版 》这本书的目录,不过其中的一些示例有点描述不太适合操作, 所以会在网上临时搜索相关知识点来进行调试学习,下面罗列一下上传demo中的操作内容:

1、hello world,程序员都懂,显示字符串;

2、界面根视图组件UIView;

3、文本显示组件UITextView 和 UITextField;

4、开关组件;

5、HTML显示组件webview;

6、弹框组件;

7、进度显示组件;

8、导航组件;

9、选择器组件;

10、集合视图;

11、表视图;

12、自动布局;

13、三方库引用CocoaPod;

14、界面跳转之模态视图; https://www.cnblogs.com/XYQ-208910/p/4798875.html

15、数据持久化

https://www.cnblogs.com/XYQ-208910/p/7687512.html

https://www.jianshu.com/p/5b13960eefa2

16、iOS 开发调试方法

https://www.cnblogs.com/Leo_wl/p/4423922.html

17、IOS网络访问框架AFNetworking

https://www.jianshu.com/p/d94cb6b58573

18、wkwebview中 OC和 JS 互相调用

https://www.jianshu.com/p/0a06a90082d0

19、相机调用 https://blog.csdn.net/sifenkesi1/article/details/52621771

注意需要在info.plist中配置声明:

<key>NSCameraUsageDescription</key>
<string>cameraDesciption</string>
<key>NSPhotoLibraryUsageDescription</key>
<string>photoLibraryDesciption</string>
<key>NSPhotoLibraryAddUsageDescription</key>
<string>photoLibraryAddUsageDescription</string>
<key>NSMicrophoneUsageDescription</key>
<string>microphoneUsageDescription</string>

20、定位功能

https://www.jianshu.com/p/a8717e8bd397

注意需要在info.plist中配置声明:

<key>NSLocationWhenInUseUsageDescription</key>
<string>LocationWhenInUseUsageDescription</string>
<key>NSLocationAlwaysUsageDescription</key>
<string>LocationAlwaysUsageDescription</string>
<key>NSLocationAlwaysAndWhenInUseUsageDescription</key>
<string>LocationAlwaysAndWhenInUseUsageDescription</string>

21、获取手机唯一标识

https://www.jianshu.com/p/faa4854ce180

苹果已经将获取真正的IMEI接口屏蔽,这里采用的方案为应用自己生成uuid,然后存入系统keychain中,每次读取都能返回相同结果来标识手机,但是据说系统升级会改变,没有测试过。demo中将原作者的逻辑进行了部分修改,即只需要提供读取接口,在读取接口中做第一次存储的逻辑。

  1. 扫码功能

https://blog.csdn.net/yx1166/article/details/83117240

主要了解对于输入输出设备的调用流程,在cocoachina上直接找了份别人写好的demo, 很好用.