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,欢迎订阅:)

::...
免责声明:
当前网页内容, 由 大妈 ZoomQuiet 使用工具: ScrapBook :: Firefox Extension 人工从互联网中收集并分享;
内容版权归原作者所有;
本人对内容的有效性/合法性不承担任何强制性责任.
若有不妥, 欢迎评注提醒:

或是邮件反馈可也:
askdama[AT]googlegroups.com


点击注册~> 获得 100$ 体验券: DigitalOcean Referral Badge

订阅 substack 体验古早写作:


关注公众号, 持续获得相关各种嗯哼:
zoomquiet


自怼圈/年度番新

DU22.4
关于 ~ DebugUself with DAMA ;-)
粤ICP备18025058号-1
公安备案号: 44049002000656 ...::