[杂七杂八-iOS]个人总结-3.16

最近一周一直没什么事,突然想到了可以把每天做的工作,学习过的事情都记录下来,一天下来也有几条.加了几个技术群,里面提出了不少问题,代码运行错误,效果与设计图有偏差等等,看到感兴趣的便开始查,一查发现又有些没见过的方法和技术.于是一天就这样过去了~

1. /Users/YoungForever/Library/Developer/Xcode/DerivedData 里面是Xcode运行时的数据.长时间不清理的话会越来越多占用硬盘数据,可以全部删除(可能会导致原有的程序会重新编译变得慢些).像我就一下删了20个G的东西,节约空间

2. plist中有两个字段 Bundle versions string,short和Bundle version,前一个是对外显示的,后一个是自己记录的版本

读取

NSString * str1 = [NSString stringWithFormat:@"%@",[[NSBundle mainBundle]objectForInfoDictionaryKey:@"CFBundleShortVersionString"]];
NSString * str2 = [NSString stringWithFormat:@"%@",[[NSBundle mainBundle]objectForInfoDictionaryKey:@"CFBundleVersion"]];
plist文件为xml类型的,可以用类似网页编辑工具打开,可以看到键和值

3.NSParameterAssert 断言

官方解释:评估一个条件,如果条件为 false ,调用当前线程的断点句柄。每一个线程有它自已的断点句柄,它是一个 NSAsserttionHandler 类的对象。当被调用时,断言句柄打印一个错误信息,该条信息中包含了方法名、类名或函数名。然后,它就抛出一个 NSInternalInconsistencyException 异常。

理解:可以把参数或不确定的式子写到断言里,如果正确则继续执行,如果错误抛出异常

例子:

NSString * str = @"YoungForever";
NSParameterAssert([str isKindOfClass:[NSArray class]]);

打印抛出异常

 *** Assertion failure in -[ViewController viewDidLoad], /Users/YoungForever/Documents/SingleDemo/断言/断言/ViewController.m:21
说明断言错误

4. Debug版本:调试版本,包含的程序更多,可以设置断点,增加调试信息

Release版本:发布版本,体积更小,不包含调试信息,运行更快

更换Debug和Release版本 菜单栏 Product-Scheme-Edit Scheme  Run Info下面的Build Configuration

可以自定义Log,在调试时输出信息,Release时候什么也不输出

#ifdef DEBUG
#   define YJLog(yjStr, ...) NSLog((@"%s [Line %d] " yjStr), __PRETTY_FUNCTION__, __LINE__, ## __VA_ARGS__);
#else
#   define YJLog(...)
#endif
5. webView可以预览本地文档,把路径做为URLString传进去

NSURL * url = [NSURL fileURLWithPath:LocalString];

6. 几个基础知识

(1)@interface 类扩展 @end
其一,定义类私有方法的地方。其二,实现public readonly,private readwrite的property(意思是在h头文件中定义一个属性对外是readonly的,但在类的内部希望是可读写的,所以可以在m源文件中的@interface部分重新定义此属性为readwrite,此时此属性对外是只读的,对内是读写的)。
此外,也可在此部分申明变量和属性,但申明的变量,属性和方法均为私有的,只能够被当前类访问,相当于private。
(2) @implementation 实现方法  @end

(3) @synthesize 自动生成get/set方法,在Xcode最新版本中省略,默认自动生成

7.几个HTTP状态码

200 成功
400 服务器不理解请求语法
401 要求身份验证
403 拒绝请求
404 未找到
500 服务器内部错误

8.介绍几个神器

sketch:绘制图形,官方解释:轻量,易用的矢量设计工具,让UI设计更简单,更高效,我们可以用它来绘制图形,保存为.svg文件(svg文件是一种类似xml语音的,用与web图像展示,可以用浏览器和网页编辑工具打开)

paintCode:可以把上面的.svg文件拖入这里,可以生产OC代码,自动生成路径代码

Coda:可以编写html,js,css等多种语言

(这上面三个软件都是人民币600多..)

前几天陪安卓的做了人生中第一次面试官,感觉技术面试时候应该拿出几个闪光点,让面试人员认为某一方面你比他强,如做过即时通讯,Https安全方面的,支付,动画,参加过什么开源项目更好,在github上有几百个star的就很厉害了吧.如果我下次自己面试的话会注意这些,突出优点,说出点细节方面的东西.人生第一份工作还是能干就干,不能随便辞职啊!




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值