[周回顾] 2017 11 05
这周朋友圈内很多人分享一个机器学习相关的课程,接着就不了了之了。让我想到iPhoneX首发当天的一个段子:
【iOS使用技巧分享】
今天拿到iPhoneX的朋友注意了,iPhoneX在开机后不需要发朋友圈也是可以正常使用的,大家多试试。
1.Annotation
- 几个定义注解的元注解:
1.@Target表示该注解修饰的对象范围,比如FIELD用于表示该注解用于修饰成员变量,TYPE用于表示该注解用于描述类,接口,METHOD用于表示该注解用于描述方法等等。
2.@Retention表示注解的声明周期,SOURCE表示尽在源文件有效;CLASS表示在字节码文件中有效;RUNTIME表示该注解运行时有效。
2.AnnotationProcessor
- AnnotationProcessor用于自定义针对注解的处理逻辑,我们实现的Processor需要继承AnnotationProcessor并重写4个方法:
init(ProcessingEnvironment processingEnv) 参数ProcessingEnvironment 提供了Element,Filer,Messager等工具。
getSupportedAnnotationTypes() 指定注解处理器是注册给那一个注解的,返回一个字符串的集合。
getSupportedSourceVersion() 指定Java版本。
process(Set<? extends TypeElement> annotations, RoundEnvironment roundEnv) 在这里扫描和处理你的注解并完成自己的processor的逻辑,信息都在参数RoundEnvironment 里了。 - 打包注解处理器的时候需要一个特殊的文件 javax.annotation.processing.Processor 在 META-INF/services 路径下,其内容是处理器的合法全称,多个处理器之间用换行符隔开。
3.网络通讯相关知识
- https利用非对称加密来传输秘钥(防窥探)。
- https利用CA证书来确认身份(防篡改)。
- CA证书链,只要信任证书链中的一个证书结点,其链上后续的证书都被信任。
- 发现了编程随想这头大牛的博客,对他的博文非常感兴趣(当且仅当博文类型==IT),写的很直白易懂。值得关注(需要科学上网)。
- Tor的小白理解:洋葱路由通过三重代理模型实现了匿名访问网络资源,同时利用p2p搭建了一套互联网无法直接搜索到的“暗网资源”
4.Kotlin持续深入学习中