免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12345下一页
最近访问板块 发新帖
查看: 9421 | 回复: 48
打印 上一主题 下一主题

[C++] OwnWaterloo此人是何方神圣? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2013-12-19 22:00 |只看该作者 |倒序浏览
本帖最后由 sqfasd 于 2013-12-19 22:01 编辑

做过哪些牛B的产品,或者贡献过哪些牛B的代码?
我想知道是什么让他有如此的自信,看到不同观点的人就要拼命的说服别人。。。。。。
我觉得在某一方面特别自卑的人,才会在另一方面显得盛气凌人。。。。。。

http://www.cppblog.com/converse/archive/2010/05/29/116689.html

这是几年前的一个博文,在评论里一堆人讨论编程规范里的异常
如果我是在抄冷饭了,请原谅这次,我就是想吐槽下,我们真的是从那个代码规范获益良多。

理想往往要跟现实妥协的,就拿异常来说,相对于错误值返回,它确实是先进的
先不拿程序员能力高低说事,就说这种先进的特性,真的是哪一种场合都需要吗?它真的能带来百利而无一害?就算有百利,只要有一害,我就有理由不用它,更何况在我们看来它的害处远大于利处。
我觉得最让我不爽的不是它改变了控制流,难以调试神马的,而是它带来性能上的开销和它的传染性。
这也不是过早优化的问题,异常一旦在代码里传染开了,想一下子去掉,恐怕不可能吧, 特别是在上百万行的大型目中。

我不想代表所有人,我是做搜索引擎和服务器的,我们真的不需要异常。这也不是因噎废食(请记住,你能想到的,我们早就讨论了无数次。。。)
在上百人协作的团队里,一致的规范和习惯比神马哲学和先进技术都要重要的多。
什么是技术,什么是管理,一定要分得清,否则就只能一辈子做码农,做码农也挺好的,你好好写自己的代码就好了,就别插手管理上的事了。

论坛徽章:
2
酉鸡
日期:2014-01-09 13:24:252015年亚洲杯之阿曼
日期:2015-02-13 00:43:51
2 [报告]
发表于 2013-12-19 22:30 |只看该作者
只要是一个正常的人,看到自己的原则被违反,就会这样的。

论坛徽章:
0
3 [报告]
发表于 2013-12-19 22:50 |只看该作者
Fomalhaut2 发表于 2013-12-19 22:30
只要是一个正常的人,看到自己的原则被违反,就会这样的。


我非常同意你的看法,所以我才发这篇帖子。我非常不喜欢一种人,就是喜欢站在一个角度片面的并且用藐视的态度去对评论别人。

论坛徽章:
89
水瓶座
日期:2014-04-01 08:53:31天蝎座
日期:2014-04-01 08:53:53天秤座
日期:2014-04-01 08:54:02射手座
日期:2014-04-01 08:54:15子鼠
日期:2014-04-01 08:55:35辰龙
日期:2014-04-01 08:56:36未羊
日期:2014-04-01 08:56:27戌狗
日期:2014-04-01 08:56:13亥猪
日期:2014-04-01 08:56:02亥猪
日期:2014-04-08 08:38:58程序设计版块每日发帖之星
日期:2016-01-05 06:20:00程序设计版块每日发帖之星
日期:2016-01-07 06:20:00
4 [报告]
发表于 2013-12-19 23:01 |只看该作者
CU第一凶器,水平比较高,人品也还可以,没事别惹他,一般来说,他说的都是比较靠谱的。

注:此人性别不详。

论坛徽章:
89
水瓶座
日期:2014-04-01 08:53:31天蝎座
日期:2014-04-01 08:53:53天秤座
日期:2014-04-01 08:54:02射手座
日期:2014-04-01 08:54:15子鼠
日期:2014-04-01 08:55:35辰龙
日期:2014-04-01 08:56:36未羊
日期:2014-04-01 08:56:27戌狗
日期:2014-04-01 08:56:13亥猪
日期:2014-04-01 08:56:02亥猪
日期:2014-04-08 08:38:58程序设计版块每日发帖之星
日期:2016-01-05 06:20:00程序设计版块每日发帖之星
日期:2016-01-07 06:20:00
5 [报告]
发表于 2013-12-19 23:02 |只看该作者
仔细观察了一下凶器的ID,发现是万恶的骆驼命名法。。。

论坛徽章:
0
6 [报告]
发表于 2013-12-19 23:52 |只看该作者
本帖最后由 sqfasd 于 2013-12-19 23:52 编辑

其实我们公司也很多人不赞同异常的完全禁止
不过我们尊重程序员的不同意见,做了一个妥协
基础库和公共模块,特别是base和util下的,严禁使用异常
上层应用,可以随意使用

论坛徽章:
5
狮子座
日期:2013-08-20 10:12:24午马
日期:2013-11-23 18:04:102015年辞旧岁徽章
日期:2015-03-03 16:54:152015亚冠之德黑兰石油
日期:2015-06-29 18:11:1115-16赛季CBA联赛之新疆
日期:2024-02-21 10:00:53
7 [报告]
发表于 2013-12-19 23:57 |只看该作者
异常的话,我的想法是这样的:

内部可以用,但是如果:
1. 有回调函数或者虚函数(换言之,会导致任何控制流的不可控制的变化的)
2. 对外提供接口的

就不使用,主要的原因是想提供C-style的接口……而C接口没法处理异常……

说白了,如果你的代码是完全封闭的,异常是内部实现,那么OK,否则,那还是别用了……

恩,也就是“异常不要跨模块”这个观点了……

PS:最近做一个模板库,其Array模板就用到了异常,但是我们可以保证这个异常会在最高层被捕获,另外,写异常比setjmp/longjmp+runprotected写法上的确是简单多了= =

论坛徽章:
2
青铜圣斗士
日期:2015-11-26 06:15:59数据库技术版块每日发帖之星
日期:2016-07-24 06:20:00
8 [报告]
发表于 2013-12-20 00:12 |只看该作者
fender0107401 发表于 2013-12-19 23:01
注:此人性别不详。

用女性角色 —— 而且还是二次元的 —— 做头像到底有什么错。。。
有人怀疑过 http://bbs.chinaunix.net/space-uid-17280135.html 的性别么。。。

论坛徽章:
44
15-16赛季CBA联赛之浙江
日期:2021-10-11 02:03:59程序设计版块每日发帖之星
日期:2016-07-02 06:20:0015-16赛季CBA联赛之新疆
日期:2016-04-25 10:55:452016科比退役纪念章
日期:2016-04-23 00:51:2315-16赛季CBA联赛之山东
日期:2016-04-17 12:00:2815-16赛季CBA联赛之福建
日期:2016-04-12 15:21:2915-16赛季CBA联赛之辽宁
日期:2016-03-24 21:38:2715-16赛季CBA联赛之福建
日期:2016-03-18 12:13:4015-16赛季CBA联赛之佛山
日期:2016-02-05 00:55:2015-16赛季CBA联赛之佛山
日期:2016-02-04 21:11:3615-16赛季CBA联赛之天津
日期:2016-11-02 00:33:1215-16赛季CBA联赛之浙江
日期:2017-01-13 01:31:49
9 [报告]
发表于 2013-12-20 00:17 |只看该作者
回复 1# sqfasd

不考虑具体情况直接“禁止”,这是天朝有关部门的作风。
如果这样一个“规范”让你“学会如何正确的做事情”,我建议你还是别和OW争了,差距还是挺明显的。

论坛徽章:
44
15-16赛季CBA联赛之浙江
日期:2021-10-11 02:03:59程序设计版块每日发帖之星
日期:2016-07-02 06:20:0015-16赛季CBA联赛之新疆
日期:2016-04-25 10:55:452016科比退役纪念章
日期:2016-04-23 00:51:2315-16赛季CBA联赛之山东
日期:2016-04-17 12:00:2815-16赛季CBA联赛之福建
日期:2016-04-12 15:21:2915-16赛季CBA联赛之辽宁
日期:2016-03-24 21:38:2715-16赛季CBA联赛之福建
日期:2016-03-18 12:13:4015-16赛季CBA联赛之佛山
日期:2016-02-05 00:55:2015-16赛季CBA联赛之佛山
日期:2016-02-04 21:11:3615-16赛季CBA联赛之天津
日期:2016-11-02 00:33:1215-16赛季CBA联赛之浙江
日期:2017-01-13 01:31:49
10 [报告]
发表于 2013-12-20 00:19 |只看该作者
本帖最后由 windoze 于 2013-12-20 00:19 编辑

回复 7# starwing83

模板库就表搞得那么复杂了

  1. template<typename T>
  2. void f(T t) noexcept(is_nothrow_default_constructible<T>::value)
  3. {...}
复制代码
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP