继电器和晶体管作为开关功能上的对比.

如果你觉得晶体管的工作原理不太好理解, 则可以把晶体管的内部想象成一个继电器.

断开状态(控制端低电压)的一个对比:

继电器和晶体管在开关功能上的对比-断开状态

闭合状态(控制端高电压)的一个对比:

继电器和晶体管在开关功能上的对比-开启状态

一个在线可互动操作的演示(点击开关可以改变开闭状态) 继电器和晶体管作为开关功能上的对比

一个利用电磁感应形成的磁力来做间接控制, 一个则是利用了半导体的特性.

尽管底层的实现原理不同, 但从实现间接控制的功能层面去看则是一样的.

继电器还是偏"机械式"的控制, 而晶体管已经是彻底的"电子式"的形态了.

曾设计了 ALGOL 语言的团队得到了下面的建议: The best is the enemy of the good.(完美是优良之大敌). 愈是追求完美, 越有可能完不成任务.

--<<代码大全>> #读书笔记#

软件的内在质量特性有:

  • 可维护性(Maintainability);
  • 灵活性(Flexibility);
  • 可移植性(Portability);
  • 可重用性(Reusability);
  • 可读性(Readability);
  • 可测试性(Testability);
  • 可理解性(Understandability).

--<<代码大全>> #读书笔记#

世事漫随流水, 算来一梦浮生.

醉乡路稳宜频到, 此外不堪行.

--李煜 乌夜啼·昨夜风兼雨

#浮生若梦# #程序员有文化系列#

有了一个棋类的模板, 再造一个新棋就很快了. 下图是一个国际中国象棋的混合棋, 混合了两种棋类的棋子.

gzxq-国中象棋-国际中国象棋混合版

主要调整在于去掉各类限制, 去掉那些过于复杂不好理解的规则等, 基本规则如下:

  • 棋子在方格里下, 按国际象棋风格
  • 增加后, 走法同国际象棋
  • 增加"后"一列
  • 增加"兵"避免"后"直接相见
  • 马无撇马腿
  • 象无塞象眼
  • 象的走法按国际象棋, 可过河
  • 去掉九宫, 将(帅)可斜走一格, 可出宫, 可过河, 没有对脸将, 走法和吃法均按国际象棋,
  • 士可以出宫, 可以过河
  • 兵按中国象棋走法, 不支持一开始走两步
  • 兵过河后可横走, 相当于升变, 不支持国际象棋底线升变
  • 兵吃子亦按中国象棋, 不支持国际象棋斜吃和吃过路兵等
  • 没有王车易位规则

世事一场大梦, 人生几度秋凉?

夜来风叶已鸣廊. 看取眉头鬓上.

酒贱常愁客少, 月明多被云妨.

中秋谁与共孤光. 把盏凄然北望.

--宋 苏轼 西江月

#浮生若梦# #程序员有文化系列#

一个奇怪的样式问题, 想去掉 a 标签的下划线样式, 于是增加了以下样式

a {
    text-decoration: none;
}

也就是 text-decoration: none;, 可是却不生效, 链接的下划线还是存在, 网上找了一下原因, 最后在 Stack Overflow 一个帖子 上看到有人说如果是 wordpress 主题, 还要增加一个 box-shadow: none;, 如下:

a {
    text-decoration: none;
    box-shadow: none;
}

加完后果然行了, 也不清楚是为啥...

css 的一个问题就是, 很多特性不满足简单的可加性, 经常有各种限制或在某种条件下才生效的情况.

所以, 除非你比较系统地掌握了 css, 否则你还是会经常碰到一些问题...

为文章内容增加了目录, 从 heading 标签中自动抽取.

对于一个比较长的文章来说, 有了目录导航也更加方便, 也便于用户掌握文章整体结构.

对于写作者而言, 先有一个清晰的写作大纲也有助于写出更有条理的文章.

这一点对于写代码而言也是类似的, 也是抽象原则的体现, 低层次的目录类似于函数(方法), 高层次的目录类似于类(class)乃至模块(module).

一个目录示意图:

目录示意图

终日昏昏醉梦间, 忽闻春尽强登山.

因过竹院逢僧话, 又得浮生半日闲.

--唐 李涉 题鹤林寺僧舍

#浮生若梦# #程序员有文化系列#

凡中国产金之区,大约百余处,难以枚举。山石中所出,大者名马蹄金,中者名橄榄金、带胯金,小者名瓜子金。水沙中所出,大者名狗头金,小者名麸麦金、糠金。平地掘井得者,名面沙金,大者名豆粒金。皆待先淘洗后冶炼而成颗块。

<<天工开物·五金>>

软件的外在质量特性有:

  • 正确性(Correctness);
  • 可用性(Usability);
  • 效率(Efficiency);
  • 可靠性(Reliability);
  • 完整性(Integrity);
  • 适应性(Adaptability);
  • 精确性(Accuracy);
  • 健壮性(Robustness).

<<代码大全>> #读书笔记#

改造了一下网站, 作了如下调整:

  • 底层实现从 php+wordpress 改为 java+springboot+thymeleaf, 界面样式则继续尽量保持原貌(主要是我也不太擅长调整这些~~)
  • 去掉了 wordpress 的后台发布系统(太庞杂, 也不可能去迁移), 改为直接后台读取 markdownhtml 文件并呈现.
  • 增加了一个 推特/微博/动弹/Blink 发布系统, 终于可以在自己网站发推了(本条即是)...
  • 代码高亮插件改为 prism
  • 其它一些改动

另: 其它一些如评论, 搜索等也暂时去掉了, 后面看是否必要再实现.