
本网站不提供下载链接,喜欢看书的朋友请关注公众号:【lennylee的碎碎念】(lennyleede),首页回复:授人以渔,自动获取搜索资源的方法。
内容简介:
豆瓣
扫码直接下载
<![CDATA[
{{= title}}
{{if year}}
{{= year}}
{{/if}}
{{if type == “b”}}
{{= author_name}}
{{else type == “a” }}
{{if en_name}}
{{= en_name}}
{{/if}}
{{/if}}
]]>
Writing Solid Code
作者:
Steve Maguire
出版社: Microsoft Press
出版年: 1993-1-1
页数: 256
定价: USD 24.95
装帧: Paperback
ISBN: 9781556155512
豆瓣评分
8.3
5星
4星
3星
2星
1星
原文摘录
· · · · · ·
( 全部 )
-
暴露错误的关键是消除错误发生的随机性。 (查看原文)

凌空
2012-02-04 10:31:06—— 引自第47页
-
在原型中使用更精确类型的缺陷是常常必须进行参数的显式类型转换,以消除类型不匹配的错误,即使参数的次序正确。 (查看原文)

Felven
2012-07-03 12:12:56—— 引自第14页
> 全部原文摘录
喜欢读”Writing Solid Code”的人也喜欢的电子书
· · · · · ·
支持 Web、iPhone、iPad、Android 阅读器
喜欢读”Writing Solid Code”的人也喜欢
· · · · · ·
-
-
新机器的灵魂
8.4
-
-
程序设计语言
8.6
-
-
图形程序开发人员指南
9.5
-
-
Refactoring
9.1
短评
· · · · · ·
(
全部 13 条
)
-
1
有用
greatabel
2012-08-08 18:05:12
快20年过去了,steve的很多教诲至今生效,特别是对自己代码可靠性负责的态度今天敏捷迭代的时代更需要靠程序员自己的自律了。
-
0
有用
流星云
2016-03-01 22:29:33
Writing bug-free code!原书已经出版20多年了,但是书中对于如何写出bug-free的代码的很多原则依然有效,简单的诸如:1,永远不要寄希望于测试人员发现你的bug;2,慎用不好的编程idiom;3,减少不必要的if语句;4,不要贪图方便而背离语言特性的设计原意解决其他问题,比如将逻辑表达式结果用于算术计算等;
之后会写一篇比较详细的读书笔记。 -
0
有用
oken
2014-01-18 11:34:16
实习的时候开始读过这本书,后来读过两三次。虽然对于书本的内容忘记得差不多了,但是这本书的确影响了我,我已经把这本书的一些建议融入的日常编程之中了。
-
0
有用
Scan
2014-04-02 21:58:18
不错,bugfree指南;缺点是比较老了
-
0
有用
ZjU3MmVmYmZiO
2018-02-27 21:03:10
尽可能利用(编译器警告、LINT、UNIT TEST, ASSERT)等工具或者方法提早发现bug。同时代码实现过程遵循一些最佳实践(不要乱改内存、返回值要有意义、不要随便删代码除非收益明显)来减少bug的出现可能性。发现问题的时候,要找到问题原因,如果要修复就去修复最根本问题,否则可能修了一个问题带来了其他问题;即使不修复,也可以在以后避免类似的问题出现。里面还有一点比较重的是定好优先级,整个开…
我要写书评
Writing Solid Code的书评 · · · · · ·
( 全部 12 条 )
<![CDATA[
var cur_sort = '';
$('#reviews-wrapper .review_filter a').on('click', function () {
var sort = $(this).data('sort');
if(sort === cur_sort) return;
if(sort === 'follow' && true){
window.location.href = '//www.douban.com/accounts/login?source=movie';
return;
}
if($('#reviews-wrapper .review_filter').data('doing')) return;
$('#reviews-wrapper .review_filter').data('doing', true);
cur_sort = sort;
$('#reviews-wrapper .review_filter a').removeClass('cur');
$(this).addClass('cur');
$.getJSON('reviews', { sort: sort }, function(res) {
$('#reviews-wrapper .review-list').remove();
$('#reviews-wrapper [href="reviews?sort=follow"]').parent().remove();
$('#reviews-wrapper .review_filter').after(res.html);
$('#reviews-wrapper .review_filter').data('doing', false);
$('#reviews-wrapper .review_filter').removeData('doing');
if (res.count === 0) {
$('#reviews-wrapper .review-list').html('你关注的人还没写过长评’);
}
});
});
]]>
被人忽略的经典
原文出自 codedump.info. <<编程精粹:编写高质量C语言代码>> 是一本被很多中国程序员所忽视的好书. 阅读这本书的时候,我想起了另一本经典:<<程序设计实践>>., 它们有如下的共同点: 1) 短小精悍, 不像一些书洋洋洒洒数百页,篇幅小保证了可以在尽量短的时间内快速读完而不会觉…
(展开)
一本肝肠断
这篇书评可能有关键情节透露
一本谭浩强的《C语言程序设计》将一个少年引入了奇妙的C语言世界,从此为之疯狂。 之后接触的《C和指针》、《C陷阱与缺陷》、《C程序设计语言》。。。无一不是C语言世界里的巨作。但是,这本《Write Solid Code》实在是令人震撼,与《程序设计实践》一样,作为…
(展开)
从实践总结而来
原书写于1992年,内容基于作者在Microsoft工作期间编写C语言无错代码的经验之谈,这是一本从实践总结而来的编程书籍,章节不多,但很值得一读!可惜的是,本书出版于二十年前没能与时俱进推出后续更新版本。 看的是电子版,记录下读书笔记: 你必须养成经常询问怎样编写代码的…
(展开)
我读过的第一本原版技术类书籍
《代码大全》也在我的当前阅读列表中停留了三四年了。天幸最近两年的阅读速度有了很大的改进。终于把这本书先pass掉了——其实加起来可能就用了有30个小时? 这本书和《代码大全》的定位是一致的。但是感觉它并没有非常系统地写完美。比如前几章还能寻出脉络,但是后几章完全…
(展开)
【Markdown】笔记,大部分有价值的点
这篇书评可能有关键情节透露
避免低级错误 ————— 1. `if(flight == 063)`。这里程序员的本意是对63 号航班进行测试,但因为前面多了一个0 使063 成了八进制数。结果变成对51 号航班进行测试。 2. `If(pb != NULL & pb != 0xff)`。这里不小心把&&键入为&,结果即使pb 等于NULL 还会执行*pb != 0x…
(展开)
《Writing clean code》读书笔记
这篇书评可能有关键情节透露
写在前面的话: 这两天看了《Writing Clean Code》,很受启发,感觉值得再读,于是整理了一点笔记,作为checklist,以备速查。 原书共8章,每章都举一些例子,指出不足,再用通用的规则改写,每章结束时会总结一下要点,其中覆盖了比较重要的规则。附录A是作者整理的编码检查…
(展开)
用这些朴实的习惯写出易排错的代码。。。
都是一些比较实用的习惯,能让程序的健壮性更强。 1. 断言真的是很实用,能查出一些意外的bug。这点感触比较深,插入一些必要的断言,这样不至于在程序执行N久以后才恍然发现在前面N远处一个参数什么的传错了。,而且几乎不会影响性能。关于断言的使用也有一些注意事…
(展开)
看完后把写过的程序重写了一遍
97年在大学的时候在图书馆看到这本书,看了几页觉得没意思就扔掉了。 99年工作一年后有前辈推荐看这本书,就在地摊上花2块钱买来读了一遍,很薄的书,读完后把自己写过的程序重写了一遍才安心。有另一前辈借去读了后,也把自己写过的程序重写了一遍。不要好高骛远贪高贪多,从…
(展开)
原书应该是1993年出版的。对这样一本书,应该既批判又继承的加以消化。
写明是人民邮电出版社2009年出版的,但我怀疑原书应该是1993年的——差不多20多年前的一本书。我到www.amazon.com上搜索writing solid code,只找到一本,正是1993年的。 那么问题就来了,今天读这本书,是不是要用一些批判的眼光:毕竟经过近20年的发展,编程的方方面面也发…
(展开)
只是小部分程序设计tricks
刚买这本书的时候对他的期望还是很高的,看完之后,有了些失望。讲思想感觉这本书不如程序员修炼之道,讲具体的编码细节不如代码大全。豆瓣评分居然有9分,感觉还是有些过的,与前面两本书的层次还是有些差距的。 这本书中最独特的视角可能就是作者的那些错误代码的分析了,不…
(展开)
>
更多书评
12篇
论坛
· · · · · ·
这本书的其他版本
· · · · · ·
(
全部4
)
-
9.0分 187人读过
-
9.2分 22人读过
-
暂无评分 2人读过
以下书单推荐
· · · · · ·
(
全部
)
- Coders and Hackers
(Alex Vonduar) - C语言学习之路
(逆飞的鱼) - 软件调试
(虽不中不远矣) - 牛B程序员必读清单
(reLax) - 未来的书架-epsilon
(Stan)
谁读这本书?
· · · · · ·
![]()
Lonely Highway
2025年8月29日 想读
![]()
叶卡
2025年8月29日 想读
![]()
Keeling•Hsin
2025年7月11日 想读
> 24人在读
> 68人读过
> 438人想读
0 && asides.length > 0 && articles[0].offsetHeight >= asides[0].offsetHeight) {
(global.DoubanAdSlots = global.DoubanAdSlots || []).push(‘dale_book_subject_middle_right’);
}
})(this);
]]>
二手市场
· · · · · ·
· · · · · ·
-
在豆瓣转让
有438人想读,手里有一本闲着?
订阅关于Writing Solid Code的评论:
feed: rss 2.0
= 2000) {
(global.DoubanAdSlots = global.DoubanAdSlots || []).push(‘dale_book_subject_bottom_super_banner’);
}
})(this);
]]>
© 2005-2026 douban.com, all rights reserved 北京豆网科技有限公司
<![CDATA[
var setMethodWithNs = function(namespace) {
var ns = namespace ? namespace + '.' : ''
, fn = function(string) {
if(!ns) {return string}
return ns + string
}
return fn
}
var gaWithNamespace = function(fn, namespace) {
var method = setMethodWithNs(namespace)
fn.call(this, method)
}
var _gaq = _gaq || []
, accounts = [
{ id: 'UA-7019765-1', namespace: 'douban' }
, { id: 'UA-7019765-16', namespace: '' }
]
, gaInit = function(account) {
gaWithNamespace(function(method) {
gaInitFn.call(this, method, account)
}, account.namespace)
}
, gaInitFn = function(method, account) {
_gaq.push([method('_setAccount'), account.id])
_gaq.push([method('_addOrganic'), 'google', 'q'])
_gaq.push([method('_addOrganic'), 'baidu', 'wd'])
_gaq.push([method('_addOrganic'), 'soso', 'w'])
_gaq.push([method('_addOrganic'), 'youdao', 'q'])
_gaq.push([method('_addOrganic'), 'so.360.cn', 'q'])
_gaq.push([method('_addOrganic'), 'sogou', 'query'])
if (account.namespace) {
_gaq.push([method('_addIgnoredOrganic'), '豆瓣'])
_gaq.push([method('_addIgnoredOrganic'), 'douban'])
_gaq.push([method('_addIgnoredOrganic'), '豆瓣网'])
_gaq.push([method('_addIgnoredOrganic'), 'www.douban.com'])
}
if (account.namespace === 'douban') {
_gaq.push([method('_setDomainName'), '.douban.com'])
}
_gaq.push([method('_setCustomVar'), 1, 'responsive_view_mode', 'desktop', 3])
_gaq.push([method('_setCustomVar'), 2, 'login_status', '0', 2]);
_gaq.push([method('_trackPageview')])
}
for(var i = 0, l = accounts.length; i
作者简介:
原文摘录:










