上一篇介绍`简单工厂模式`的时候提到它对`开闭原则`支持的不够,因为如果有新的产品加入到系统中去,就需要修改工厂类,就违反了`开闭原则`了,这次介绍的工厂方法模式在保持简单工厂模式优点的前提下,还满足了开闭原则,关键在于它的多态性。
面对设计模式这个高大上的敌人,如何找到一个脆弱可以下手的地方尤其重要,经过参考《JAVA与模式》后发现最容易下手但又及其重要的模式,那就是`简单工厂模式`
入行`java`几年,一直不敢尝试学习设计模式,总感觉自己能力不行,不敢接触这么高深的东西。这次难得的机会,参加了一场公司的培训,接触到设计模式,听过后发现其实设计模式也不是那样高深和难以理解,实际开发中其实都不由自主用到了
因为`gitHub`上的项目是公开的,不适合公司内部项目放在上面,而私人的需要收费,这绝非是我们愿意的。所以找了个跟`gitHub`很相似,但是又免费的`gitLab`。现在将搭建`gitLab`过程记录一下留作参考。
分支就是科幻电影里面的平行宇宙,当你正在电脑前努力学习`Git`的时候,另一个你正在另一个平行宇宙里努力学习`SVN`。如果两个平行宇宙互不干扰,那对现在的你也没啥影响。不过,在某个时间点,两个平行宇宙合并了,结果,你既学会了`Git`又学会了`SVN`!
`Git`本地操作的熟练了后,就可以尝试连接远程仓库了,目前国内外比较出名的提供`Git`仓库远程托管的有国外的`github`,国内的`开源中国`以及`coding`。这里我以`coding`为例子介绍如何操作远程仓库。
前面给大家普及了暂存区的概念以及展示的工作区、版本库中的暂存区和版本库之间的关系,如果大家都理解的话,那么今天的课程就很简单了。
暂存区`(stage, index)`是` Git`最重要的概念之一,理解了这个概念很多 `Git` 命令就不再那么神秘了。下面几个验证例子一开始看不懂没关系,工作区、版本库中的暂存区和版本库之间的关系图先理解先。
最近我认识了一个小伙伴,奇妙清单,使用起来感觉萌萌哒。良心推荐,提高效率的神器。
咳,小白你好,我是老白。比你早那么一段时间接触`git`,不知道你之前是否跟我一样是使用`SVN`来进行版本管理的,在这里,我不会告诉你`git`的历史,发展以及优势,既然你想学`git`,我就当你已经懂了这些。我只能告诉你我为什么要学`git`,因为我觉得它十分的高大上,外加可以装逼~~