DevilKing's blog

冷灯看剑,剑上几分功名?炉香无需计苍生,纵一穿烟逝,万丈云埋,孤阳还照古陵

0%

repo地址

提交的信息写错了

1
$git commit --amend --only -m 'xxxxxxx'

我想要暂存一个新文件的一部分,而不是这个文件的全部

一般来说, 如果你想暂存一个文件的一部分, 你可这样做:

1
$ git add --patch filename.x

-p 简写。这会打开交互模式, 你将能够用 s 选项来分隔提交(commit); 然而, 如果这个文件是新的, 会没有这个选择, 添加一个新文件时, 这样做:

1
$ git add -N filename.x

然后, 你需要用 e 选项来手动选择需要添加的行,执行 git diff --cached 将会显示哪些行暂存了哪些行只是保存在本地了。

更多的tips

我也一直 都不会是特别的

虽然如此 但对我来说或许足够了

虽然知道不能继续如此 但对我来说或许已经满足了

耳边传来了别人正在唱歌的动听的歌声

虽然感到了有些沮丧

明天到来就用这样的态度

生活下去吧


本周工作:

  • 修复dag合并的问题,同时将node部分进行整合,提升相关效率
  • 人工特征流程部分完成
  • 整体流程串联成功

下周工作:

  • 一些边界条件部分的修复
  • 另起一个实验数据部分
  • 准备提测的相关事宜

本周所得:

  • 关于进度的一些把控方面
  • 同他人的协同方面正在恢复

时间安排上,尽快地安排一下,合理地安排学习和游戏的时间部分,总感觉自己的学习新知识部分,有点拉下来了。。。早日把jenkins部分的源码部分进行阅读,按里面有没有可以借鉴部分

身体锻炼上,起码恢复了每周一跑,继续坚持,同时在周中的时候,看有没有机会加入5km的跑步环节,节食部分,也要坚持下去,晚上不要吃太多,以水果啥的为主

目标是架构的设计一些方面,之前做的可能更轻量级,更小众,现在要涉及一些企业级的框架部分,希望自己能够慢慢转向这个方向,去设计一些东西,能够将之前的一些设计完善起来,同时加入自己的理解部分

正如歌词里提到的,已经知道不能继续如此,应该感到很满足才对,有过这段很珍贵的经历,就已经很足够了。虽然会有些沮丧,但明天还是会继续,就用这样的态度,生活下去吧

如果可以像野兽一样自由生活就好

就算是社畜,就算是被人遗弃的zombie,但只要心中有一点点的光亮,也要努力地活下去 —佐贺传奇


本周工作:

  • dag转换部分的工作
  • 流程的完善,加入default template的构造
  • 整个流程的串联

下周工作:

  • 整合node到一个节点上去,提升效率,跟进银行的试验部分
  • 人工选择特征部分的加入
  • 关于整体流程的运行能够成功

本周所得:

  • 关于python脚本的集成部分
  • 对dag的理解更深了

这周的时间安排,慢慢在恢复,晚上也能抽点时间来做一些东西,后面就是定一下,每天晚上抽10分钟或者半个小时,学习一下新的知识部分?

关于身体锻炼部分,还是要加强,不管是跑步还是keep部分,都要保持,现在才知道32是180穿的。。。目标是30才行

新知识的梳理部分,以及新知识的学习部分,感觉有点缓慢,不妨以深度学习为例,来做一些新知识的入门,在业务的基础上,深入技术去学习一些东西

感觉刚刚摸到一些头绪,哎。。。尽力去做吧。。。哎,感觉还是有差距,效率上的方式,无法提升,很多的东西就无法把控。。。哎。。。

关于一些时间管理上的想法

原文链接

关于流式编程的一些说明,Stream API

1
2
3
4
5
6
7
8
// JavaScript
let r = [1,2,3,4,5,6,7,8,9].filter(i=>i>5).map(i=>i*10).reduce((a,b)=>a+b, 0)

// Ruby
r = [1,2,3,4,5,6,7,8,9].select {|i| i>5}.map {|i| i*10}.reduce(0) {|a,b| a+b}

// Swift
var r = [1,2,3,4,5,6,7,8,9].filter {$0>5}.map {$0*10}.reduce(0) {$0+$1}
1
2
3
4
5
6
Integer[] numbers = new Integer[]{1, 2, 3, 4, 5, 6, 7, 8, 9};
Observable.from(numbers)
.filter(integer) -> { return integer > 5; })
.map((integer) -> { return integer * 10; })
.reduce(0, (int1, int2) -> { return int1 + int2; })
.subscribe((integer) -> { Log.i(TAG, "result: " + integer); });
  1. 流式编程法,每一个单独的步骤,在内部都重新对整体数据进行一次循环,因此它要做很多次小循环,但整体的流程只走一遍。
  2. Rx,只在数据最源头,对整体数据进行一次循环,取出每一个单独的数据,让它去走一遍整体流程,因此,它只做一次循环,但整个的流程会走很多遍。

对于 Rx 来说,如果数据源不是固定的,那么它可以监听这个数据来源,当有数据到来时,它就可以把它发射出去把整个流程走一遍。这就是我用来理解 Rx 的观察者模式和响应式编程的方法。

Rx 比常见流式编程的抽象程度更高,它不光抽象了对数据的操作,还抽象了线程切换操作。

Rx的Promise和Observable对象:

  • Promise 对象,当它被 new 出来后,其中的方法体是立即执行的,不管后面有没有用 .then() 加上回调,执行的结果被存储在对象之中,如果后面再用 .then() 加上回调,之前的结果会马上传递给新的回调。
  • Rx 的 Observable 对象,当它被 new 出来后,其中的方法体,只有 .subscribe() 方法被执行的那一刻才会执行,否则,只要没有调用 .subscribe(),其中的变换就永远不会执行,这和 Promise 是完全不一样的。

只要是 T -> Observable 的变换,就应该用 flatMap