您的位置:首页 > 运维架构

TopLanguage小组讨论精选[四](2007.12-2008.1)

2007-12-26 12:29 246 查看
TopLanguage小组讨论精选[四](2007.12-2008.1)  
By 刘未鹏(pongba) C++的罗浮宫(http://blog.csdn.net/pongba)  
也来说说并发,使用状态机或轻量级线程
并发这东西接触时间并不长,不过几乎让我完全推倒过去的编程方法。 并发系统的典型特点是大量同时存在的无规律活动,最具代表性的是网络应用,同时保持大量网络连接。过去我们常使用多进程、多线程方式来处理类似任务,优点是编程容易,对多CPU的应用比较充分(虽然不一定最高效),缺点是并发能力有限,线程不是个可无限分配的资源。在过去相当长时间内多线程方式(主要指每连接一线程方式)没有出现问题,我想原因是过去网络应用主要是以WEB为主,都是短连接,应用也不像今天这么广泛。... more »
有兴趣的看一下Jaakko Jarvi的这篇paper吧(关于运行时的泛型编程的)
有趣的是,这篇paper刚好极好地说明了为什么接口应该永远消失(为什么接口跟模板应该统一起来——实际上ruby这样新进的语言已经这么做了),取而代以真正first-class的运行时泛型。 已上传到文件区了。 [link]... more »
Bjarne说:以降低抽象惩罚来获得性能的语言设计思路仍然不会消失
以下是Bjarne的回复部分文字: I think we need quite general and generic interfaces between concurrent tasks, *but the individual processors are not getting any faster - in fact they are getting slower, being optimized for chip space and power consumption - so that low abstraction penalty could become *more*... more »
轻量级线程为什么轻
今天看到了关于并发的大讨论,还有关于用C++/D实现轻量级线程。 我觉得在讨论具体的实现方法之前,必须要讨论一下轻量级线程是因为少了哪些功能才变轻的。 OS线程之所以重,显然并不是因为OS的开发者愚蠢造成的。也就是说轻量级线程必定是应为少了某些重要的东西后,才变轻的。少了这些之后,对我们的编程有什么不利的影响。如何来消除不利的影响。... more »
无处不在的抽象惩罚
抽象惩罚不光语言里有,在业务开发的时候也有。 我以前做过一个面向对象的数据库中间层,把数据库的数据包装成对象,并且在对象上建立关联。差不多是这样: 班级信息里包括班主任、学生列表、班长等等属性,可以直接取出所需的对象,或者对象集合。这种抽象最好,业务层的开发不必跟数据库死缠烂打。... more »
学习C++:实践者的方法(Beta)
旨在分析并总结学习C++的误区和正确的学习方法,为初学者或者学习了一段时间迷惘的中级学者提供一个可操作的guideline。 猛击这里 <[link]> 浏览全文,欢迎砖头(尤其是,如果你是初学者或学习了一段时间比较迷惘的话,请一定找出你觉得不好的地方),这也许是我写的C++学习方法的最后一篇文章,我觉得我要说的全都说完了:)... more »
转鲍志云同学的一篇好文章(关于实际项目开发中的代码复用)
来源:[link] 写太多腐败话题了,要平衡一下。今天我们继续讨论技术话题,本期内容——亘古不变的话题:复用。 为了提高engineering organization的效率,复用(或者说don't reinvent the wheel,不要重新发明轮子)是很重要的。... more »
我最近的 C++ 编码风格
本文最早是在 Linus 炮轰 C++ 事件以后写下的。当时痛定思痛,对 C++ 一下子有了一个不同的认识。当时写出来这些文字但没有公开,这两个月对这种务实编码风格有了一些实践经验,可以把这篇文章修改修改公布出来了。 自从我接触 boost 以来,我的编码习惯就模仿 boost ,其实那样并不是最好的。 boost 对 C++... more »
老版本的 C 真不好用
前一段时间调试程序主要用log, 现在一个程序, 设计到好些数据结构, 还是需要一个调试器会好一些. 由于这个数据结构程序windows 下面也可以调试, 于是找出自己做的 vc6 安装版本来, 执行setup 就将 vc6, sp6, visual assist 等一起装了.... more »
C里实现Lambda……
reddit上最近发出来的一个方法,我只能说……太不靠谱了…… 不过,有没有让这个Lambda的编译一部分在编译期完成呢?运行时传参数进去就可以。 ...typedef int(returns_int_f)(); static returns_int_f* returns_int_lambda(char *source) { FILE *fp = popen("gcc -Wall -Werror -c -x c - -o ./wee", "w");... more »
讨论讨论g9的好文:《JavaScript这浓眉大眼的也背叛革命了》
来源:[link] 严重推荐:-)不过估计这个讨论组里面不订阅g9 blog人也不多吧,如果看过了,请忽视我... 讨论之一: 昨天还听SpitFire说,用Ruby时,发现设计模式里面那些瓶瓶罐罐都用不着了;这不,就出现了一个绝好的例子,新版Javascript中native支持的multi-method。我想大吼一声的是,设计模式那不叫优雅,真正的原生支持才叫优雅!... more »
在C++中使用IoC及DSM框架
在C++中使用IoC及DSM框架自Web和Java诞生以来,软件开发技术,概念以及架构的演变翻新有点让人眼花缭乱,甚至应接不暇。然而,恪守技术含量至上遗风的C++铁杆精英们似乎是其中的另类,与标新立异摈弃繁文褥节的Java,Ruby新生代之间俨如隔世。不用说DSM,就连IoC这个起源于C++年代甚至C++土壤的概念... more »
你最想问Bjarne的关于C++的什么问题?(为Bjarne答应的访谈征集问题)
最近和Bjarne的通信中,他答应接受一次访谈。 为了让访谈能够代表更多人的意见而不是我个人的感觉,在这里邀请大家提出自己最想问的问题。 你最想问什么? BTW. 由于我会对问题进行筛选,然后再公布给大家投票。所以大家的问题最好是深思熟虑的,重要的,有理有据的:-)... more »
 
最后当然是我们的TopLanguage小组博客计划,我们的小组博客在这里。欢迎任何人加入,帖子在下面:
TopLanguage小组博客计划(草)
TopLanguage建立至今,太多精彩的讨论了。我觉得埋没在googlegroups的archive里面非常可惜(尽管我每隔一个月都精选出一些,但一来那只代表我的个人偏好,而来我的blog访问量还是太小了,三来,每个月才贴一个精选...交互太少)。... more »
BTW. 由于不想在这个blog贴一些短文(一旦文章多了就会造成杂音太多),所以一些短文就会发到TopLanguage小组Blog,欢迎订阅:)

Related Posts

from tag programming
Beautiful Code, Beautiful Team ——《美丽的代码》译序(个人)
Joel Spolsky在耶鲁的演讲无责任导读
TopLanguage小组讨论精选[三](2007.11-2007.12)
TopLanguage讨论精选二(2007.10-2007-11)
错误处理(Error-Handling):为何、何时、如何
TopLanguage讨论精选(2007.8-2007.10)
(more..)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: