Cube Life

My journey of life


  • Home

  • Tags

  • Categories

  • Archives

  • About

  • Search

Niu Year

Posted on 2021-02-21 | In note |

新年新气象,今年一开始就有很多新挑战,工作、生活皆有之。

牛年,希望一切顺利吧。 额~~2020我一年啥也没写,忙糊涂了,哈哈

Read more »

Go

Posted on 2019-12-27 | Edited on 2021-02-21 | In tech |

简单说,又好久没有更新了,貌似”死”了一般,2019眼瞅就要过去了,不出意外的发现自己貌似什么都没干。

言归正传,最近再次放假,利用一些时间把Go语言学习一下,这个flag已经立了一年了,才开始初见行动,惭愧。

学习方法

极客时间 Go语言教程 和 Go官方tour教程
个人感觉快速学习基础只是还是官方教程更有效一些,如同当年学习Python一样,官方教程还是直接一些。

我的发现

列出几个个人认为的Go语言特点,也是总结,帮助自己和他人更好的理解Go语言

  • 类型位置后移,例如变量,方法返回值类型,与常见语言相比,类型的位置都后移了

    1
    var i int
  • 切片(slice)需要认真理解,它是一个特殊的结构,底层直接操控不可变的数组。目前来看,大多情况应该使用slice而非array
    切片的快速生命和python的数组截取很想,但是本质完全不一样,python是生成了新的数组对象空间,可以说是新的副本,修改不会印象原始数据
    Go的切片不是,他是一个array的抽象引用结构,对切片的操作直接会影响原始数据

  • Go有指针,但不能像C++那样做指针操作,他只能用于传递调用

  • Go没有类,只有结构体。我们可以给结构体类型或自定义类型添加方法,其便利性在于,Go语言会自动做指针和对象的转换,比起普通方法更加灵活。

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    package main

    import "fmt"

    type Vertex struct {
    X, Y float64
    }

    // 类方法
    func (v *Vertex) Scale(f float64) {
    v.X = v.X * f
    v.Y = v.Y * f
    }

    // 普通方法
    func ScaleFunc(v *Vertex, f float64) {
    v.X = v.X * f
    v.Y = v.Y * f
    }

    func main() {
    v := Vertex{3, 4}
    v.Scale(2)
    ScaleFunc(&v, 10)

    p := &Vertex{4, 3}
    p.Scale(3)
    ScaleFunc(p, 8)

    fmt.Println(v, p)
    }

结束语

这个文章烂尾了,其实是没有开始就结束了。😛

错误(Wrong)

Posted on 2019-10-19 | In note |

错误,今天算是犯了一个错误,影响评估不大不小,中等水平,耽误了全家人一天的时间,路上开始反思,趁现在感觉还在记录下来,引以为戒吧
错误的具体内容不再细说了,说出来有点丢人😛,只说说分析结果吧

Read more »

放假(Block Leave)

Posted on 2019-08-02 | In note |

放假结束~第一次放block leave,现所在的公司很有意思,规定必须休block leave,不休年底会认为你违规,因此我终于休了我工作以来第三次连休年假(三天以上)。

Block Leave本周结束,过的还算充实。带孩子去周边自驾玩了一圈,孩子很开心,而我的精神迟迟没有完全放松下来,担心放假前正在执行的项目,还有安排了缺没有进展的代办任务。
这种感觉让人很矛盾,也不舒服。虽然这几天同事找了我几次,询问几个问题,感觉到项目还是问题不少,但也只能回去再处理,工作永远也做不完的(公司规定,block leave期间不可以访问公司系统)

Read more »

从单元测试到近期总结(Unit Test)

Posted on 2019-05-16 | Edited on 2019-05-18 | In tech |

一周一周过的真快,感觉没做什么,一周时间就这么流荡过去了。本周主要任务有两项,其中一项就是单元测试。
写过单元测试的朋友们请举手,哈哈,虽然看不到,估计不是很多。写过有效单元测试的请举手,估计又少了一些。
那么今天就从单元测试说起,最后聊聊最近的一些想法

Read more »

重构(Refactoring)

Posted on 2019-04-28 | In tech |

近期正在做一个升级项目,将公司原有的老系统升级,在升级过程中遇到很多有意思的问题,正好近期有参加代码重构课程的培训特写此文章记录一些内容。

项目重构

关于项目重构,主要升级项目整体搭建架构,依赖包升级,基础框架升级等,为了保证项目顺利阶段性上线,项目需要分阶段升级,现在为第一阶段

Read more »

假日随笔

Posted on 2019-04-06 | Edited on 2019-04-28 | In note |

假期和家人一起度过,尤其是和孩子一起,陪他们玩耍,陪他们成长是令人开心的事情。

周五一早去祭奠了逝去的亲人,我一直在想离世的人是不是去了四维空间(或者更高维的空间),人世间的轮回可能真的存在,做为三维空间的我们无法证实罢了。

Read more »

Java Skill Tree

Posted on 2019-03-24 | In tech |

让我梳理一下,作为Java工程师我们应该掌握的知识点和技能。作为整理总结也好提醒自己你还差什么,如有补充欢迎提醒

Java 基础

Java基础当然是围绕JDK展开,JDK的不断也在提醒我们需要与时俱进不断更新相关技能,Java基本语法规则除外,应该掌握熟知以下内容

Read more »

Hello Full Stack, Bye ~

Posted on 2019-03-11 | Edited on 2019-03-16 | In note |

最近和同事聊起全栈开发,让我想写此随笔记录一下,也分享一下我的理解。欢迎交流指正

何为全栈 What is full stack?

网上的概念解释很多,大家不妨自己搜搜。我说说的直观感觉,就是前后端都写,啥都可以开发。

其实全栈可以说是一个概念,是一种技术实现方式,但不应该是个职位或者个人要成为的目标。

Read more »

All You Need To Know For Migrating To Java 11

Posted on 2019-01-06 | In tech |

前言

首先声明,此文内容大多为译文,并非原创
原文地址:All You Need To Know For Migrating To Java 11
并非逐句对应翻译,只对关键内容进行翻译,如有问题请指正,感谢!

翻译此文章的初衷源于我刚刚第一次搭建了基于Java 11的spring boot工程,遇到了一些包的缺失导致的问题,当然这些问题在Java 8时是不会出现的
另外,Java 8的生命周期已经进入尾声,开发者必然面临切换到Java 11的局面,所以在搜索相关信息看到了这个文章。我将尝试翻译此文章,也让自己有更为深入的理解

正文

Java 11 早在2018年9月25日发布(原文在当日发表)它标志着Java生态系统重大转变的结束(Java 9 & 10都是这个过程的中间态)Java 11是LTS(Long Term Support)版本,伴随着从Java 8迁移到模块化灵活的JDK和6个月release迭代周期
在作者看来,我们进入了新纪元,我们需要遵循新的Java规则,很多项目需要考虑从Java 8 迁移到Java 11。此文章将告诉你所有你需要知道的关于从Java 8迁移到Java 11

Read more »
<i class="fa fa-angle-left" aria-label="Previous page"></i>1…3456<i class="fa fa-angle-right" aria-label="Next page"></i>
Gino Zhao

Gino Zhao

Stay Hungry, Stay Foolish.

57 posts
6 categories
30 tags
GitHub E-Mail
Links
  • Zhixing
  • Terran
  • 28Code
  • cuisongliu
© 2016 – 2025 Gino Zhao
Powered by Hexo v7.3.0
|
Theme – NexT.Mist v6.4.1