日历

June 2017
M T W T F S S
« Jul    
 1234
567891011
12131415161718
19202122232425
2627282930  

冒号课堂§3.4:事件驱动

事件驱动——有事我叫你,没事别烦我(事件驱动式编程简谈
• 它们(同步回调和异步回调)都使调用者不再依赖被调者,将二者从代码上解耦,异步调用更将二者从时间上解耦
• 它们(控制反转、依赖反转和依赖注射)的主题是控制与依赖,目的是解耦,方法是反转,而实现这一切的关键是抽象接口
• “回调”强调的是行为方式——低层反调高层,而“抽象接口”强调的是实现方式——正是由于接口具有抽象性,低层才能在调用它时无需虑及高层的具体细节,从而实现控制反转
• 控制反转导致了事件驱动式编程的被动性
• 事件驱动式还具有异步性的特征,这是由事件的不可预测性与随机性决定的
• 独立是异步的前提,耗时是异步的理由
• 发行/订阅模式正是观察者模式的别名,一方面可看作简化或退化的事件驱动式,另一方面可看作事件驱动式的核心思想 […]

冒号课堂§1.5:开发技术

开发技术——实用还是时髦?(关于框架、设计模式、架构和编程范式等开发技术的讨论
• 任何概念和技术都不是孤立的,如果不能在纵向的时间和横向的联系中找准坐标,便似那群摸象的盲人,各执一端却又自以为是
• 库和工具包是为程序员带来自由的,框架是为程序员带来约束的
• 设计模式是软件的战术思想,架构是软件的战略决策
• 知识的学习有几种方式:一种靠记忆,一种靠练习,一种靠培养
• 学习编程范式能增强编程语言的语感 […]