随笔分类 - 极客谈
摘要:你已经使用过Go语言编写了小命令(或者说微型程序)吗? 当你在编写“Hello, world”的时候,一个源码文件就足够了,虽然这种小玩意儿没什么用,最多能给你一点点莫名的成就感。如果你对这一点点并不满足,别着急,跟着学,我肯定你也可以写出很厉害的程序。 我们在上一篇的文章中学到了命令源码文件的相关
阅读全文
摘要:我已经为你打开了Go语言编程之门,并向你展示了“程序从初建到拆分,再到模块化”的基本演化路径。 一个编程老手让程序完成基本演化,可能也就需要几十分钟甚至十几分钟,因为他们一开始就会把车开到模块化编程的道路上。我相信,等你真正理解了这个过程之后,也会驾轻就熟的。 上述套路是通用的,不是只适用于Go语言
阅读全文
摘要:【Go语言代码较多,建议配合文章收听音频。】 你好,我是郝林。从今天开始,我将和你一起梳理Go语言的整个知识体系。 在过去的几年里,我与广大爱好者一起见证了Go语言的崛起。 从Go 1.5版本的自举(即用Go语言编写程序来实现Go语言自身),到Go 1.7版本的极速GC(也称垃圾回收器),再到201
阅读全文
摘要:我们已经知道,环境变量GOPATH指向的是一个或多个工作区,每个工作区中都会有以代码包为基本组织形式的源码文件。 这里的源码文件又分为三种,即:命令源码文件、库源码文件和测试源码文件,它们都有着不同的用途和编写规则。( 我在“预习篇”的基础知识图介绍过这三种文件的基本情况。) (长按保存大图查看)
阅读全文
摘要:你好,我是郝林,今天我分享的主题是,学习专栏的正确姿势。 到了这里,专栏的全部内容已经都推送到你的面前了。如果你已经同步学习完了,那么我要给你点一个大大的赞! 还没有看完的同学也不要着急,因为推送的速度肯定要比你们的学习速度快上不少。如果是我的话,我肯定无法用很快的速度,去认真地学习和理解专栏内容的
阅读全文
摘要:你好,我是郝林,今天我分享的内容是:0基础的你,如何开始入门学习Go语言。 1. 你需要遵循怎样的学习路径来学习Go语言? 我们发现,订阅本专栏的同学们都在非常积极的学习和讨论,这让我们非常欣慰,并且和你一样干劲十足。不过,我在留言中发现,大家的基础好像都不太一样,大致可以分为这么几类。 零基础的同
阅读全文
摘要:你好,我是郝林。今天想跟你聊聊我和Go语言的故事。 Go语言是由Google出品的一门通用型计算机编程语言。作为在近年来快速崛起的编程语言,Go已经成功跻身主流编程语言的行列。 它的种种亮点都受到了广大编程爱好者的追捧。特别是一些对团队协作有较高要求的公司和技术团队,已经在有意识地大量使用Go语言编
阅读全文
摘要:领域驱动设计 1.DDD 2.领域模型统一沟通 3.基于此领域接口设计出来的软件也就天然满足用户需求 测试驱动开发 1.测试驱动开发从简单驱动入手,在逐步升入到复杂设计的思路 head first 设计模式 1.引导大家主动思考常用设计模式 2.设计模式之道 分析模式可复用的对象模型 1.社区少有讲
阅读全文
摘要:分享一些故事,希望有一些启发 1.扎实的基本功是成为软件高手的第一步(重复练习,刻意练习) 2.所学必有所获-stl 3.广泛的能力积累是成为软件高手的必经之路 4.从零开始做一个软件系统 5.强大内心的驱动力,扎实的基本功,广泛的能力积累 6.多看开源项目,c-x
阅读全文
摘要:终于读完了《大话设计模式》,收到书的时间是2011-01-21,那时候,还在双安的数码大厦,现在公司已经搬到盘古大观了,转眼之间,已经一年的时间了。 趁着这段时间,工作比较清闲,两个星期的时间,看了接近一多半,也就是说从买到书有大段时间,是暂停状态。其实开篇计算器的例子,是给了我很大震动的,结合一年
阅读全文
摘要:不知道大家有没有想过,为什么入睡容易,起床很难,吃胖容易,减肥很难 代码腐化容易,重构很难,诸如此内的问题,让大家感觉很烦恼? 这些看似不相干的问题,有什么内在的原因?我也不绕弯子了, 直接给出我分析的结论,那就是熵增定律 什么是熵增定律呢?大家中学的时候都学过能量守恒定律 但是这个定律有一个问题,
阅读全文
摘要:先来看一下我司程序员的日常: 每天忙于这些事情毫无体验可言,要想获得好的开发体验最关键是要建立起自己的“快速反馈机制” 打游戏之所以容易上瘾是因为鼠标点下去敌人就应声倒地,追剧上瘾是因为自己讨厌的反派活不到下一集就领了盒饭。 归根结底是因为这种反馈来的太快,在心理上满足了人的天性。 如果我们能在日常
阅读全文
摘要:1第一天 上帝看到人类发明了计算机,但一直在用汇编语言艰难地写程序,很是伤心,就把编译器的秘密告诉了约翰·巴科斯,让他带领大家写出了编译器,从此人类可以用高级语言写程序,然后编译成机器语言去运行了。 上帝还教会了人类使用顺序、循环、分支这三种基本的程序结构来编写程序。 人类很高兴,写的代码越来越长。
阅读全文
摘要:简介: 总时间限制: 100ms 内存限制: 65536kB描述将正整数n 表示成一系列正整数之和,n=n1+n2+…+nk, 其中n1>=n2>=…>=nk>=1 ,k>=1 。正整数n 的这种表示称为正整数n 的划分。 总时间限制: 100ms 内存限制: 65536kB描述将正整数n 表示成一
阅读全文
摘要:1、概念 闭包函数:声明在一个函数中的函数,叫做闭包函数。 闭包:内部函数总是可以访问其所在的外部函数中声明的参数和变量,即使在其外部函数被返回(寿命终结)了之后。 2、特点 让外部访问函数内部变量成为可能; 局部变量会常驻在内存中; 可以避免使用全局变量,防止全局变量污染; 会造成内存泄漏(有一块
阅读全文
摘要:今天我们用大众听得懂的语言,好好说一说低代码。 这两年,无论是资本层面,还是企业 IT 部门的关注,“低代码”都是绝对的热点。互联网圈也似在一夜之间冒出了各种各样的低代码公司。 到底什么是低代码?低代码是新技术么?低代码开发能给企业带来什么价值?企业如何使用低代码?哪些平台是真的低代码哪些是浑水摸鱼
阅读全文
摘要:1.Refactoring: 对软件内部结构的一种调整,目的是不该被软件的可观察行为的前提上,提高其可理解性,降低其修改成本。 2.代码坏味道 2.1.不易复用 2.2.不易理解 2.3.存在冗余 3. 重构目标 3.1 不破坏测试 3.2 易于复用 3.3 易于理解 3.4 消除冗余 4. 一系列
阅读全文
摘要:1.软件重构,大量swich语句如何重构 2.使用 ide 使用 快捷键ctrl+alt+shift+T调出重构菜单,选择method对之前的for循环重构一个method 3.得到一个新的方法,使用新的单元测试用例对新的方法进行覆盖,(重构是对原有代码的修改,所有一定要加单元测试用例,保证准确性,
阅读全文