
HTML5设计原理
HTML5已不再遥远,不必等到规范成熟后才去使用,各个主流浏览器均已纷纷支持HTML5中的一些特性,大家可以从现在开始,拥抱HTML5。与Jeremy Keith一起回顾HTML的发展历程,领略HTML5的设计原则。

HTML5已不再遥远,不必等到规范成熟后才去使用,各个主流浏览器均已纷纷支持HTML5中的一些特性,大家可以从现在开始,拥抱HTML5。与Jeremy Keith一起回顾HTML的发展历程,领略HTML5的设计原则。

在这篇文章里,Jim Webber、Savas Parastatidis和Ian Robinson展示了如何在REST式应用里运用超媒体来推动应用的工作流。他们通过Gregor Hohpe的经典案例“星巴克不采用两阶段提交”举例说明了怎样运用Web的思想进行集成。
软件架构是软件工程的重要主题之一,因为很多软件开发项目的失败都是由于架构设计不好而导致的。因此,在理论上和实践上学习更多关于架构的知识就显得至关重要了。最近有几本很不错的书已经出版,或许在将来它们会给大家带来帮助。
在过去的一段时间里,“软件工艺”在不断地被热议。 针对软件工艺运动所强烈崇尚的“代码必须时刻保持干净”的信仰,Joshua Kerievsky提出了另一种可能从反方向审视的视角,他称之为“足够用的设计”。在此我们将探究Joshua的想法,并听一听Bob Martin和Ron Jeffries对此的评价。
很多评论人士一直在讨论:人们认为,在敏捷技巧和架构思维之间存在对立关系。本文研究了“大规模预先设计(Big Design Up Front,缩写为BDUF)"与“你不会需要它(YAGNI)”两种思维之间的冲突,着眼于找出这两种方法在实际中如何能够以互补的方式共同工作。
软件设计需要解决一系列相互矛盾的需求,这也是为什么会有很多人拥有不同的设计思路,而这些思路在某些场景下又都好用的原因。没有什么能让这些矛盾消失,设计风格的好坏依赖于如何化解矛盾,哪些约束在早期满足,哪些放到后期处理。想要让设计考虑周全,第一步就得先承认世上不存在完美的设计。
Bruce Eckel、Michael Feathers、Niclas Nilsson、Keith Braithwaite,还有其他人谈论了对如下问题的看法:语言应该完全灵活、允许开发人员随心所欲地进行调整、并相信他们会对自己的工作负责呢,还是应该从设计阶段就在语言中设置明确的约束集,以避免出现生成糟糕代码、难以维护或阅读的错误呢?