《代码之美》是一本书,由38位大师级的程序员,一步步讲解他们的项目架构,开发时的种种折中考虑(tradeoffs)以及何时必须打破常规,寻求突破。但本文不是介绍这本书,而是写本人每一个博客主题代码的一些基本要求。
本人不是程序猿,只是略懂PHP的简单代码,技术仅仅用于日常代码修改,但不会编程,这一切的知识来自于互联网或是亲朋好友的帮忙。对于主题,本人的基本要求是:通过HTML5的标准验证、通过Google微数据的认证、代码排版尽量美观简洁、少用插件。
1、HTML5标准
为什么达到该标准,很简单,HTML5对移动终端带来更多好处,原因是,现在的移动终端网页浏览已成一种主流浏览方式,HTML5会让各个平台的移动浏览器有更快的网页加载速度与显示标准。另一个好处是 SEO,Google早已宣布,将页面加载速度作为搜索排名的一个因素,因此,基于HTML5的页面也会因加载速度更快而受益。
HTML5标准让你在各个浏览器之间兼容性量更好,代码更简洁。
HTML5标准检查:http://validator.w3.org/
2、微数据认证
微数据其实是HTML5的扩展。一个页面的内容,例如人物、事件或评论不仅要给用户看,还要让机器可识别。而目前机器智能程度有限,要让其知会特定内容含义,我们需要使用规定的标签、属性名以及特定用法等。举个简单例子,我们使用<h1>
标签包裹页面标题信息就是为了让机器识别(搜索引擎 – SEO)。
而微数据是什么呢?在我看来,微数据也是为了方便机器识别而产生的东西。其有特定的规范,有特定的格式。可以丰富搜索引擎的网页摘要。HTML5 微数据规范是一种标记内容以描述特定类型的信息,例如评论、人物信息或事件。每种信息都描述特定类型的项,例如人物、事件或评论。例如,事件可以包含 venue、starting time、name 和 category 属性。
微数据词汇表有三:schema.org词汇表,Google丰富摘要词汇表(www.data-vocabulary.org),WHATWG/microformats.org词汇表。
我一般用Google结构化数据测试工具进行测试。
3、代码排版
代码排版,又名代码格式化。
这个就好比喻一本书,如果一本书内容精彩,但是排版非常差,那文章段落之间,语句之外很会引起很多异意,同时将会失去很多读者,代码也是一样。有统计表明,缩进良好的代码可以提高代码阅读效率40%以上,70%开发工作是维护前任工程师所编写的代码,因此代码的格式美化往往是系统重构的第一步。文档齐全、易读的源代码是每一个合作开发项目所必备的,逻辑结构清晰的、组织良好的、格式标准的代码能够更快地发现bug,精简代码而不失功能性。
当然,我所说的代码排版不像上面说的那么高要求,但最起码过一段时间再次去阅读这一段代码知道具体那段代码是什么意思。所以我一般会使用注释分段,无论是PHP代码还是CSS代码。大家可以在本博客右键查看本站输出源代码,查看一下输出的代码整体美观性。
给大家介绍几个代码格式化工具:
Quick Highlighter
Quick Highlighter 支持的语言超过85种,如:C++, PHP, Ruby, HTML, JavaScript, Perl, Python, Smarty, XML等等,它能格式化源码以及高亮内建的关键字和数据类型等。
PrettyPrinter
PrettyPrinter适用于 PHP, Java, C++, C, Perl, JavaScript, CSS。提供了大量格式化选项,可以按照你喜欢的方式来展示代码。
PHP Code Beautifier旨在美化PHP代码,它运用了大量PHP延伸及扩充程式库(PEAR),甚至可以准确地处理杂乱的脚本,例如:所有代码在一行中,它能够把代码转换成可读性更好的格式。设置缺省的换行而不会移除任何额外的换行符,那样你可以把相关的东西聚拢在一起,根据嵌套的花括弧来修正错误的缩进。
<?php
if($code == BAD){$action = REWRITE;}else{$action = KEEP;}
for($i=0; $i<10;$i++){while($j>0){$j++;doCall($i+$j);if($k){$k/=10;}}}
?>
转换后:
<?php
if ($code == BAD) {
$action = REWRITE;
} else {
$action = KEEP;
}
for($i = 0; $i < 10;$i++) {
while ($j > 0) {
$j++;
doCall($i + $j);
if ($k) {
$k /= 10;
}
}
}
?>
Ruby Script Beautifier
Ruby 美化工具以命令行的形式接受文件名列表,为每一个指定的文件创建一个副本然后对源文件进行美化。如果有缩进错误,脚本程序会打印错误消息,但总会对其修改的结果进行保存。
任何事情,追求简洁是一种挺好的态度。代码如此,生活如此,工作更是如此。慢慢要求自已,你会发现一切将是条条有理。
代码之美。刚从我们图书馆找出来。很喜欢 。谢谢推荐
努力,养成一种好习惯就是好的开始。
这本书适合什么程度的人读呢?
该书适合程序员与框架师所看。
这个跟我的观点是一样的。简洁就是美,Less is more.
为人处事,总得有个要求。共勉…