杂想

谈谈最近的几件事,一个是央视诗词大会,武艺姝获得冠军,新闻标题是满足了对于一个古代才女的全部幻想,我虽然没有看她的比赛,但是我看了姜闻页的比赛,这个秀气的小女孩淡定和临危不乱的大将风范确实让人佩服,我很好奇这样的一个孩子,她的父母是怎么教育出来的。从小到大,对各种“神童”的生活经历和教育方法抱有各种幻想,最早看过的是关于哈佛女孩刘亦婷的书,里面介绍的就是各种的教育方法和学习方法,一个是天资聪颖,再一个给我启发最大的就是刘亦婷在3岁之前就已经展现出超群的智商,这个一方面跟父母基因有关,另一方面就是胎教和早教的重要性,我坚信科学合理的胎教和早教也会给孩子一个不一样的起点。

再就是关于工作的事情,这也是最近几个月想的最多事情。年前一个月一直在找工作,北京青岛潍坊都走遍了,但是往往是“有去无回”,也不知道问题是不符合人家的用人需求还是自己本身的问题,仔细分析原因,前者可能占大多数,自我感觉从毕业到现在一直从事培训工作,也掌握培训的各个方面,涉及到具体工作可以说是驾轻就熟。但是,因为行业的关系,所做的培训局限性也很大,培训经验围绕销售展开,对培训管理并不能给人以清晰的脉络。再一个就是面试发挥,谈话的姿态和语气可能不太符合面试官的口味,尽管自己已经调整地很好,但是,人家就是不给你过,大型公司基本不太理想。也有谈的比较好的,跟面试官谈的很融洽,气氛也不错,但是最后也是不了了之。总体效果不甚理想。

我觉得找工作这件事情,真的跟找对象差不多,你看上人家,人家不一定看上你,有看上你的,你却看不上人家。如果两边口味对上了,有可能因为别的各种原因凑不到一起,有些你可能并不抱期望的,最后却给了你一个offer。如果说,发挥愿力的作用是心之所向,那这个心向一定是潜意识的作用。拿我的工作需求来讲,因为要继续代码的学习,所以,时间宽松一定是摆在第一位的,第二才是薪酬,我觉得这个已经是我对于工作最基本的诉求了。而现在就职的这家公司,正好刚刚满足了这一基本诉求:时间宽松,薪酬可怜。想想也是醉了,如果心里的打算就是单纯找一份高薪的工作,现在或许是另外一副局面,有可能是工资高高的,时间闲闲的,也有可能是上班时间忙到死,下班加班累到死,学习就更不用说了。

但是也得用“一切都是最好的安排”来安慰自己,既然工作已成既定事实,就既来之则安之,按照自己的意愿继续推进代码的学习进程罢。

时间好快

时间过的好快,虽然我们总是嘴上说着心里想着,但是时间仍然快的让我们感到惊讶:时间都过去这么久了!今天早上打开电脑,发现16年奥运会都过去6个月了,跟老爸老妈边吃饭边看奥运的日子好像就在昨天。心里不免紧张了几分,还是自己太堕落了,年前年后几个月一直在找工作,虽说工作不难找,但是好工作不好找,也是费了很多心思和时间,学习也一直耽搁着。咳咳这么说也是给自己拖沓找借口罢。

新工作新开始,先把工作稳定下来,再抽时间学习代码,时间过得太快了,要不要把午休的时间匀给代码呢?

手机被偷前必做的两件事

月光博客(www.williamlong.info/)是我经常浏览的一个优秀博客,我会读他的几乎每一篇文章,去年开始学习做博客,月光博客是我学习的榜样,我觉得比较好的文章我会转过来。最近有家人的iPhone账号被盗,手机没法用了,网上也有很多丢手机之后损失巨大的案例,我把这篇文章转过来,算是一个防范措施。

很多“专家”都曾经发过《手机被偷后必做的N件事》这类教程,比如:致电运营商挂失手机号;致电银行冻结手机网银;手机解绑支付宝;微信冻结账号;修改微博、微信、QQ等密码;找手机运营商补手机卡;等等等等,实际上,这类教程所要求的事情都不是必要的,亡羊补牢不如未雨绸缪,真正要做到丢失后手机安全,只需要事前做两件事情:设置指纹密码和SIM卡密码。对于苹果用户来说,还需设置“查找我的iPhone”和iCloud两步验证。

以iPhone为例,一般都会设置“查找我的iPhone”功能,由于iPhone有GPS定位功能,小偷如果偷到手机不关机的话,会被GPS定位追踪,因此绝大多数小偷拿到手机后做的第一件事情往往是关机,这正好让指纹锁屏密码和SIM卡PIN码发挥最大作用:如果重新开机,必须要输入手机密码才能开机,同时,SIM卡处于锁定状态,需要输入PIN码才能正常通信,输错3次PIN码后就只能用PUK码来解锁,把SIM卡拔出来查到别的手机上,也需要输入SIM卡PIN码才能通讯,也就是说,不知道PIN码,这个SIM卡就无法接收短信和拨打电话,因此小偷就无法通过这个SIM卡来盗取用户的网银、支付宝、微信上的财产,甚至,小偷连这个手机的手机号码都无法获得,更不用说盗取微信和QQ密码了。

当然,丢失iPhone手机的用户还需要补SIM卡和设置远程抹除iPhone内容最安全,千万不要关闭“查找我的iPhone”功能,忽略那些以苹果名义发来的钓鱼邮件和短信。

以下是iPhone指纹解锁功能设置方法和iPhone的修改SIM卡密码的方法:

指纹密码

指纹天生就是一种个人认证工具,虽然人人都有指纹,但各不相同,据说,现在还没有发现两个指纹完全相同的人。随着年龄的增长,指纹的纹样不会发生变化。因此,使用指纹做为身份验证是非常理想的。

iPhone指纹解锁功能设置

iPhone设置指纹密码的具体方法是:

第一步:依次进入iPhone的“设置”,然后再找到,并点击进入“Touch ID与密码”设置。

第二步:接下来需要输入一次六位数字的iPhone手机密码,这个密码就是手机解锁密码,这个密码设置为一个复杂密码(千万不要用123456或888888),输入密码后,就可以进入iPhone指纹识别设置界面了。然后我们就可以开始录入指纹了,点击下方的“添加指纹”开始添加。

第三步:接下来我们按照提示开始录入指纹,请将需要设置指纹的手指放置在iPhone屏幕底部的指纹识别Home键上,按照提示放置上去,再移开手指,反复几次,等待指纹录入完成。

第四步:以上操作完成就,就可以成功完成一个手指的指纹录入,在返回的指纹设置中,已经可以看到有一个“指纹1”的记录了,如果还想录入多个指纹信息,继续点击下方的“添加指纹”,按照上面的步骤完成其他指纹信息录入即可。

iPhone最多支持设置5个指纹,可以同时录入自己的和自己亲人的,另外录入成功的指纹1和指纹2名称,还可以自行修改名称。指纹信息录入成功后,在iTunes Stor与App Store安装应用开启指纹识别即可。

SIM卡密码

SIM卡(Subscriber Identity Module 客户识别模块)即用户身份识别卡,是手机的一张个人资料卡。SIM卡通常用来存储用户的电话号码、安全数据、通讯费用以及能让运营商判定用户是否是其公司客户的数据。当用户更换新的手机,可以直接插入旧手机原有的SIM卡,即可继续享受之前的各项手机服务。

SIM卡的PIN码(Personal Identification Number 个人识别码)主要用于保护SIM卡的安全性和隐私性,当手机重启、或者插拔SIM卡后,需要输入最正确的SIM卡PIN码才能使用SIM卡的通讯功能(拨打电话、收发短信等操作),当输入三次失败后,SIM卡则会被锁定,而需要输入PUK码(Personal Unlock Key 个人解锁码)进行解锁,PUK码共有10次输入机会,输错10次后,SIM卡会自动启动自毁程序,使SIM卡失效。

修改设置SIM卡PIN码的步骤是:设置 – 电话 – SIM卡PIN码,将其启用。修改PIN码要先输入原有PIN码,SIM卡的默认PIN码为0000或1234,如果都不对的话,可以输错3次,使用PUK码强制修改PIN码。

修改SIM卡PIN码

修改SIM卡PIN码

PUK码由8位数字组成,这是用户无法更改的。一些SIM卡的PUK码是用户在购卡时随卡附带的,通常在卡套背后附有PUK码,也可以登录运营商的网上营业厅,在自助服务里通常会提供查询PUK码的功能。实在找不到的话,也可以致电SIM卡所属运营商的服务热线,客服人员也可以提供查询PUK码的服务。

SIM卡的PIN码有效地防止了盗用SIM卡的情况发生,使用户的正常通信得到了可靠保障。设置了PIN码之后,当用户手机丢失后,别人无法通过取出SIM卡插入另一部手机,来进行原SIM卡的通讯功能(拨打电话、收发短信等)。因此,建议所有手机用户都立刻启用SIM卡的PIN码。

iPhone被偷

iPhone丢失前后的处理流程

1、手机的指纹锁屏(密码锁屏)和SIM卡PIN码应该同时启用,缺一不可。如果手机的SIM卡设置了PIN码,那么这个SIM卡插入另一个手机就需要PIN码解锁,重启手机也要PIN码解锁,不解锁无法进行通讯,这从一定程度上保证了手机通讯的安全性,SIM卡默认的PIN码通常是1234,建议手机用户都修改一下这个PIN码。锁屏密码不要使用简单密码,使用数字字母组合长密码,有条件的话建议选择支持指纹密码的iPhone,其使用体验远远优于普通的密码解锁。

2、开启“查找我的iPhone”功能。iCloud设置强密码。iCloud开通二次验证。

3、支付宝等应用启用指纹密码。

4、发现手机丢失后,立即打电话给移动运营商,挂失SIM卡。登录iCloud的“查找我的iPhone”功能,启用“丢失模式”。

5、登录AppleID网站,将该手机从“受信任设备”中移除。

6、忽略那些以苹果名义发来的钓鱼邮件和短信。

7、如果手机确认无法找回,在“查找我的iPhone”里,使用“抹掉iPhone”功能。

8、申请一个新的SIM卡并启用。

总结:iPhone丢失后应该做什么?丢失前:设置指纹锁屏和SIM卡PIN码;开启“查找我的iPhone”功能。iCloud设置强密码和两步验证。丢失后:打电话给移动运营商,挂失SIM卡。登录iCloud,启用“丢失模式”(无法找回的话就用“抹掉iPhone”)。申请一个新的SIM卡并启用。

经过这些设置,如果你的iPhone被偷了,只要你设置了指纹锁屏,设置了SIM卡密码,拨打电话发现小偷把手机关机了,那么即使你什么都不做,也不会再有额外的损失。很多人不喜欢设置SIM卡PIN码,等你丢失手机后,就会发现这个PIN码有多好用了。

对于安卓手机来说,重要的安全设置包括:选购带有指纹解锁功能手机,SIM卡启用PIN码,不要将应用和敏感个人数据、照片等放在SD卡等外部存储,最好不要使用SD卡。启用设备加密功能。

本文地址:http://www.williamlong.info/archives/4765.html

《Objective-C基础》笔记

之前直接学习课程,总是对一些概念摸不到头脑,这些vip课程对新手理解概念有一定帮助。

1.OC简介:
Objective-C是一种面向对象的计算机语言(c语言是面向过程),1980年初布莱德-考克斯(Brad Cox)在Stepstone公司发明,基于SmallTalk-80.
1988年NeXT公司发布OC,开发环境和类库叫“NEXTSTEP”,1994年NeXT与sun公司发布标准NEXTSTEP系统,取名“openStep”。
1996年苹果公司吧nextstep/openstep用于Mac os X开发,版本和开发环境较Cocoa,用objective-c作为基础语言,开发工具为xcode何inerfaeBuilder。
2007年苹果推出Objective-C2.0,自此Objective-C是Macos和ios的开发基础语言。

2.OC特点
字符串:OC通常不适用C语言风格的字符串。大多数情况下是使用Foundation框架的NSString类型的字符串。NSString类提供了字符串的类包装,支持Unicode、printf风格的格式化工具等。他是在普通的双引号字符串前放置一个@符号。
兼容性:Objective-C是在C语言基础上增加了一层最小的面向对象语法,oc完全兼容C语言,可以在oc代码中混入C语言代码,甚至是c++代码。
类:定义类是Objective-C的基本能力。OC的类生声明和实现包括两个部分:借口部分和实现部分。
方法:定义方法也是OC的基本能力。OC中方法不是采用“.”运算符,而是“[]”运算符。有时候方法调用也成为消息发送。
属性:属性是OC2.0提出的概念,是替代对成员变量访问的“读取方法(getter)”和“设定方法(setter)”的手段。为了对类进行封装,一般情况下不直接访问成员变量,而是通过属性访问。
协议:OC中的协议类似于Java中的接口或C++的纯虚类,只有接口部分定义没有实现部分,即只有h文件没有m文件。
分类:OC中的分类是类似于继承机制的,通过分类能够扩展弗雷的功能。
3.OC文件扩展名
文件扩展名
说明
备注
.c
C语言源程序文件
.cc或.cpp
C++语言源程序文件
.h
头文件
.m
OC源程序文件
代码含有OC和C的语句
.mm
OC++源程序文件
代码含有OC和C++的语句
.o
编译之后的文件
4.OC程序的执行过程
  1. 编写源文件 .m
  2. 编译:(1)检查程序是否有错,(2)将OC源程序翻译成0和1,生成一个.o的目标文件  cc-c Myproject.m
  3. 链接:链接是将项目中所有相关联的目标文件和OC函数库组合在一起,生成一个可执行文件 .a
5.NSLog与Printf的区别
  • NSLog是Foundation框架提供的Objective-C日志输出函数,与标准C中的printf函数类似,并可以格式化输出
  • @“Hello,World”,是代表NSString字符串对象,它是Objective-C常用的字符串对象
  • 最后是return 0语句,他表示要终止main的执行,一般情况下0代表正常结束,非零代表异常情况,这是沿用了C语言的习惯
  • NSLog接受OC字符串作为参数,printf接受C语言字符串作为参数
  • NSLog输出后会自动换行,printf输出后不会自动换行
  • 使用NSLog需要#import<Foundation/Foundation.h>
  • 使用printf需要#include<stido.h>

6.#import作用

  • 更#include一样,用来拷贝某个文件的内容
  • 可以自动防止文件内容被拷贝多次
7.#Foundation框架的作用
  • 开发OC、iOS、mac程序必备的框架
  • 此框架中包含了很多常用的API(应用编程接口)
  • 框架中包含了很多头文件,若想使用整个框架的内容,包含他的主头文件即可
8.BOOL的使用
  • BOOL类型的变量有2种取值:YES、NO
  • NSLog(@“%d %d”,YES,NO)