新入职公司,记录几个点。。。
1、Homebrew 下载慢
原本的想法是科学上网后慢慢搞定的,但是后来小伙伴推荐我下面的方法,确实超快。
/bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)"
只需要把这段脚本内容复制到「终端」中即可。
来自:https://www.bilibili.com/read/cv6307306/
2、For 循环性能点 的忽略
在看代码规范的时候,发现之前一直没有注意到这个点:
- 推荐使用for-in遍历,效率最快, for循环次之, enumerateObjectsUsingBlock效率最差。详细可参考这篇博客https://www.jianshu.com/p/66f8410c6bbc
3、文档和规范流程真的很重要
- 任何小的文档对于新入职的小伙伴,不仅有指导作用,同时有着规范作用,很推荐
- 分享文档和知识点,可以很好看出一个团队的储备
- 同时也能减少入职小伙伴的适应时间。
4、RAC 的实际用法
之前没有实际操作过 RAC,新项目中刚好用到了,好奇兴奋的了解下,发现项目中主要是以下几个用法。
- 4-1、最基本的监听某个属性,主动发送
// New
- (RACSubject *)loadingSubject {
if (!_loadingSubject) {
_loadingSubject = [RACSubject new];
}
return _loadingSubject;
}
// addObsever
@weakify(self);
[self.loadingSubject subscribeNext:^(NSNumber *loading) {
@strongify(self);
// 相关业务
}];
// 具体发送
[self.loadingSubject sendNext:@(YES)];
- 4-2、监听某个对象的某个属性, 在属性的值发生改变的时候,收到通知
@weakify(self);
[RACObserve(self.recordVM, recordModel.list) subscribeNext:^(id x) {
@strongify(self);
[self.tableView reloadData];
}];
- 4-3、对
TextField
监听时,注意merge
, 注意distinctUntilChanged
, 这是一个注意点的
RACSignal *signal = [RACSignal merge:@[self.textField.rac_textSignal, RACObserve(self.textField, text)]];
@weakify(self);
[[signal distinctUntilChanged] subscribeNext:^(NSString *text) {
@strongify(self);
self.model.content = self.textField.text;
}];
特别是 4-2,承担了本项目中,ViewModel 监听的主要职责
回顾了下以前的笔记感觉还不错,ReactiveCocoa 初探。
5、公司细节
- 一个超规格的本子,黑色皮质,公司 Logo, 超大
- 一份详细的入职流程,无需专门的入职培训
- 一个专门的自我介绍
- 准备资料的同时,加入感兴趣的群,第一天就可以打篮球了,高兴
谈下感受,以前觉的流程规范和文档很重要,但实施的很小。这次自我体会对比后,再次理解有些领导喜欢抓流程,抓文档,果然适当的换工作好处多多的。
网友评论