zoukankan      html  css  js  c++  java
  • 把“hello”打印10次

    原文:VAL

    今天上网看到一篇老博文《Coder or Clown?》,文章作者主要想表达的意思是他作为面试官,面试了很多程序员,他发现很多程序员就是小丑,并把他们分类列举。这篇去年发表的文章被很多人转载翻译,作为茶余饭后调侃程序员的佳品。我看了也是一笑而过,但是其中作者说的第一个事例却引起了我的兴趣,虽然很搞笑,但是这其中似乎隐藏着一些coder的情怀。

    这个故事是这样的,作者面试了一个叫做Ada的毕业生,她是一位程序新手。作者给他出了一道题目,让她在纸上写下一段程序,目的是打印“hello”10次,无论用什么语言写都可以。于是这位可爱的学生在纸上写下了10句print “hello”。

    VAL:把“hello”打印10次

    作者给出的评语是:“无论如何,拼写都是正确的”。这本身是一件很搞笑的事情,我当时也很欢乐,虽然不知道是不是真有其人。我也就开开心心的把整片文章看完,作者的语言很幽默。评论很多,我稍稍看了一下发现许多人对Ada这件事耿耿于怀,甚至还有人说那是最佳答案。

    Ada的做法很好, 但更好的做法应该是如下:

    print “hello hello hello hello hello hello hello hello hello hello”

    优点:

    1. 代码清晰易读

    2. 避免了循环,不会破坏CPU流水线,提升了效率

    3. 改多次I/O函数调用为一次调用,提升了效率

    看到这个评论的时候我笑了半天^ ^,不过这位朋友说的挺有道理。我仔细想了一下,觉得打印这个单词10次,也许这真是一个比循环更好的办法。我记得还在上学的时候,老师曾今说到在什么情 况下使用循环,好像是说某一个操作要重复执行大于3次,那么就应该用循环结构。当然,现在看来这个说法也很搞笑,为什么要3次以上,为什么不是4次?我们 再回来看这个问题,首先要写10次hello并不费力,而且他人也一眼就能看条语句的目的是输出10个hello这串文字,而用循环的话就没有这么直观 了。

    其实作为程序员最忌讳的就是死板,一成不变循规蹈矩的编程首先就会让自己厌倦。多思考,多实践才是最好的提高手段。那么大家能说说写10次 print “hello”与使用for循环相比有什么不妥吗?难道影响程序可读性?影响执行效率?不会是说占用了更多的磁盘空间吧(笑)。我还看到一个更有意思的评 论:

    我相信任何编程语言的for循环都不会简单过vim的yy9p的。

  • 相关阅读:
    FEniCS 1.1.0 发布,计算算术模型
    Piwik 1.10 发布,增加社交网站统计
    淘宝褚霸谈做技术的心态
    CyanogenMod 10.1 M1 发布
    Druid 发布 0.2.11 版本,数据库连接池
    GNU Gatekeeper 3.2 发布
    Phalcon 0.9.0 BETA版本发布,新增大量功能
    EUGene 2.6.1 发布,UML 模型操作工具
    CVSps 3.10 发布,CVS 资料库更改收集
    Opera 移动版将采用 WebKit 引擎
  • 原文地址:https://www.cnblogs.com/loonggg/p/2859350.html
Copyright © 2011-2022 走看看