you are better than you think

备忘

last update:

我们都期待一种生活,在这种生活里,每个人都安居乐业,相安无事,万事顺意。可是,这样的理想世界并不存在,世界上每分每秒都在发生意外。 我当然期望那不是我们,不是我们的家庭。可我无法保证。 我能保证的是,尽我的能力使家人不会在遭受内心痛苦的同时遭受金钱的打击。因为我知道,真正的爱不是我活多久就照顾你多久,而是你活多久我就照顾你多久  –《第一次买保险就买对》

七步搞定你的保障

第一步:明确保险需求

A 为了保障

B 为了理财

第二步:明确人身保险险种

被保险人的保险状态/年龄

  1. 儿童未参与工作的青年–非保障重点,适当配置意外险
  2. 参与工作的青壮年–保障重点,标准保险配置:意外险+寿险+重疾险
  3. 大于50岁或这即将/已经退休–非保障重点,适当配置意外险

第三步:明确保险额度

看了《敏捷软件开发(原则模式与实践)》,感受Java的设计原则和模式真的很棒,看了这本书收获很多。关于设计原则/模式的笔记记录如下。  

一 设计的臭味

1 僵化性

难以对软件进行改动。如果单一的改动会导致有依赖关系的模块中的连锁改动,那么设计就是僵化的。

2 脆弱性

进行一个改动时,程序的许多地方就可能出现问题。

3 牢固性

设计中包含有对其他系统有用的部分,但把这些部分从系统中分离出来所需要的努力和风险是巨大的。

4 粘滞性

软件的粘滞性 与环境的粘滞性(耦合关系很重的一些指标, 绝对路径,绝对依赖等)。

golang 官方为了解决对象重用问题提供了临时对象池:https://golang.org/src/sync/pool.go

对象池,是指提供了对象复用功能。临时是指对象池的没有引用的对象在每两分钟一次的GC中会被全部清理掉。有点坳口,下面我们来看一段代码。

package main

import (
    "log"
    "runtime"
    "sync"
)

func main() {
    p := &sync.Pool{
        New: func() interface{} {
            return 0
        },
    }
    a := p.Get().(int)
    p.Put(1)
    b := p.Get().(int)
    log.Println(a, b)
    p.Put(3)
    p.Put(4)
    p.Put(5)
    log.Println(p.Get()) //返回 3 4 5中的任意一个。
    //主动调用GC  pool中对象会被清理掉
    runtime.GC()
    p.Put(2)
    c := p.Get().(int)
    log.Println(c)
}