css中的浮动和BFC 发表于 2017-11-15 字数统计 1,773 | 阅读时长 6 写了两篇,发现自己给自己挖了好多坑,现在得一点点慢慢填了。这次还是继续写一篇css的内容,来看一下浮动和BFC这两个概念。 浮动float float 属性定义元素在哪个方向浮动。以往这个属性总应用于图像,使文本围绕在图像周围,不过在 CSS 中,任何元素都可以浮动。浮动元素会生成一个块级框,而不论 ... 阅读全文 »
css两边固定中间自适应布局 发表于 2017-11-15 字数统计 2,545 | 阅读时长 11 三栏布局是一种常见的网页布局方案,最常见的需求就是两边固定,中间自适应效果,而这种布局有很多种不同的实现方案,在不同的需求和兼容性要求下适用性各不相同,下面来看一下常见的几种实现方式和它们的特点。 普通浮动布局流体布局非常简单,就是利用元素浮动的特性来实现布局,实现起来其实并不难 123456789 ... 阅读全文 »
JavaScript闭包及相关 发表于 2017-10-26 字数统计 1,753 | 阅读时长 6 这是在前端领域的第一篇文章,按照常理我应该写点html和css的相关内容,但是我想放在后面来写,第一篇文章还是说一说曾经觉得很魔幻的JavaScript,就从js中最神秘的闭包开始说起吧。 什么是闭包对于初接触js的人,闭包是一个很难懂的概念,甚至是有很长时间开发经验的人,往往也不一定能说的清楚透彻 ... 阅读全文 »
设计模式之解释器模式 发表于 2017-09-24 字数统计 749 | 阅读时长 3 解释器模式的概念 给定一个语言,定义它的文法的一种表示,并定义一个解释器,这个解释器使用该表示来解释语言中的句子。 这是23种设计模式中最后一种了,它是一种不太常用的设计模式,不过还是要学习的。 举个栗子解释器模式的模型图 解释器模式里面有四种角色:抽象解释器,终结符表达式,非终结符表达式,环境角 ... 阅读全文 »
设计模式之状态模式 发表于 2017-09-24 字数统计 594 | 阅读时长 3 什么是状态模式 允许一个对象在其内部状态改变时改变它的行为,对象看起来似乎修改了它的类。 状态模式处理的问题就是复杂的状态变更问题,它做了核心的封装,是状态的改变看起来像是类发生变化一样。 举个栗子状态模式的模型图 下面是状态模式三种角色的实现 抽象状态 1234567891011public ... 阅读全文 »
设计模式之访问者模式 发表于 2017-09-23 字数统计 760 | 阅读时长 3 访问者模式的概念 封装某些作用于某种数据结构中各元素的操作,它可以在不改变数据结构的前提下定义作用于这些元素的新的操作。 访问者模式据说是最复杂的一种行为类模式了,所以要慢慢理解。 举个栗子访问者模式的模型图 这个图也很复杂,里面有五种角色:抽象访问者、具体访问者、抽象元素、具体元素、结构对象,还 ... 阅读全文 »
设计模式之备忘录模式 发表于 2017-09-23 字数统计 1,574 | 阅读时长 8 备忘录模式的定义 在不破坏封闭的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态。这样以后就可将该对象恢复到原先保存的状态。 备忘录模式也叫快照模式,提供了一种类似后悔药的机制。 举个栗子备忘录模式的模型图 备忘录模式有三种角色 发起人 123456789101112131415pu ... 阅读全文 »
设计模式之观察者模式 发表于 2017-09-22 字数统计 693 | 阅读时长 3 什么是观察者模式 定义对象间一中一对多的依赖关系,使得每当一个对象改变状态,则所有依赖于它的对象都会得到通知并被自动更新。 观察者模式也叫做发布订阅模式,也是一种很常用的设计模式。 举个栗子观察者模式的模型图 观察者模式有四种角色,下面是具体编码 被观察者 123456789101112131 ... 阅读全文 »
设计模式之迭代器模式 发表于 2017-09-22 字数统计 625 | 阅读时长 3 什么是迭代器模式 提供一种方法访问容器对象中各个元素,而又不需要暴露该对象的内部细节。 迭代器模式提供的是遍历容器的一种方法,它单独管理容器的遍历任务,使遍历与容器自身任务分离开。然而,这种模式现在已经深入到jdk内部了,我们早已经不需要自己手动实现迭代器模式了,不过为了学习还是试着写一下。 举个 ... 阅读全文 »
设计模式之策略模式 发表于 2017-09-21 字数统计 666 | 阅读时长 3 什么是策略模式 定义一组算法,将每个算法都封装起来,并且使它们之间可以互换。 策略模式也叫政策模式,它很好的应用了面向对象思想,下面来感受一下。 举个栗子策略模式的模型图 策略模式有三种角色:上下文、抽象策略、具体策略,下面来看实例编码 抽象策略 123public interface Str ... 阅读全文 »