代码改变世界

代码之谜(四)- 浮点数(从惊讶到思考)

2012-11-16 11:30 by justjavac, 1024 阅读, 4 推荐, 收藏, 编辑
摘要:在『代码之谜』系列的前几篇文章中,很多次出现了浮点数。 浮点数在很多编程语言中被称为简单数据类型,其实,浮点数比起那些复杂数据类型(比如字符串)来说, 一点都不简单。单单是说明 IEEE浮点数 就可以写一本书了,我将用几篇博文来简单的说说我所理解的浮点数,算是抛砖引玉吧。一次面试记得多年前我招聘 Java 程序员时的一次关于浮点数、二分法、编码的面试, 多年以后,他已经称为了一名很出色的程序员。 每次聚会他都会告诉我,“那次面试彻底改变了我的过去的学习方式, 我以前只是盲目接受知识,根本就没有自己思考过, 那次对话,比我大学四年学到的知识都多”。我看他简历上写到读过《信息论》才谈了很多关于二分 阅读全文

代码之谜(三)- 运算符

2012-11-16 08:22 by justjavac, 1905 阅读, 9 推荐, 收藏, 编辑
摘要:从最简单的运算符加号(+)说起,加号(+)是个二元运算符——也就是说,加号只把两个数联接起来,从来不把第三个或者更多的联接起来。因此,“1加2加3” 在计算机中被表述为:(1 + 2) + 3 // a或者1 + (2 + 3) // b虽然我们通常写做1 + 2 + 3,但是并不意味这它和我们数学中的 1+2+3 是等价的。那么数学中的 1+2+3 到底表示的是 a 呢,还是 b 呢?如果计算机的求值是左结合的,那么此表达式等价于第一种a; 如果是右结合的,那么此表达式等价于第二种b。1 + 2 + 3简单的理解就是 “把1、2、3加在一起”, 确实,在我们接触到的数学里... 阅读全文

代码之谜(二)- 语句与表达式

2012-11-15 14:59 by justjavac, 1223 阅读, 3 推荐, 收藏, 编辑
摘要:虽然文章标题是『语句与表达式』,在这篇文章中,我将陈述一个观点每个表达式都有一个值。 在此之外,也会继续表述这个『代码之谜』系列的主题——数学与计算机之间被经常忽略的矛盾。简单的讲“表达式”(expression)是一个单纯的运算过程,总是有返回值;“语句”(statement)是执行某种操作,没有返回值。使用表达式也是函数式编程语言所提倡的,而传统命令式编程语言都是语句的堆砌。表达式和语句如何区分呢? 最简单最直观的鉴别方法就是,后面有分号的是语句, 这是一个充分条件而不是必要条件。 有分号,就是语句;没有分号,就不一定了,也可能是语句,也可能是表达式。在动态语言——比如javascript 阅读全文

代码之谜(一)- 有限与无限(从整数的绝对值说起)

2012-11-15 11:55 by justjavac, 1770 阅读, 7 推荐, 收藏, 编辑
摘要:一、引子开始本章之前我先提个问题:“如果一个整数的绝对值等于它自己,那么这个数是几?”如果你回答是 0 和 所有正数,那么请你耐心读完这篇文章吧。本章是我『代码之谜』系列的第二篇,前一篇『代码之谜 - 开篇/前言/序』简单介绍了计算机与数学的不同。数学中有许多复杂深刻的矛盾,数学家的工作就是解释或者反驳这些矛盾, 例如有限与无限、连续与离散、存在与构造、逻辑与直观、具体与抽象、概念与计算等等。在本章中,我们把目标缩小,主要讨论内容概念: 有限与无限对象: 8bit整数二、绝对值之谜终于到主题了,也许你很想知道“负数的绝对值可能等于自己吗?”,也就是 “如果x等于-x,那么x有几个解?”按照我一 阅读全文

自己动手设计 PHP MVC 框架(一)——URL

2012-11-09 12:49 by justjavac, 611 阅读, 5 推荐, 收藏, 编辑
摘要:在框架盛行的今天,MVC 也不再是神话。 经常听到很多程序员讨论哪个框架好,哪个框架不好, 其实框架只是工具,没有好与不好,只有适合与不适合,适合自己的就是最好的。每次我面试应届生时都会问他使用过什么框架,并谈谈对这些框架的理解。 当面试有经验的程序员时,会让他自己写一个框架出来。 其实也不是让他编码,只要有思路就 OK 了。 我觉得,如果一个有一年经验的程序员连一个 Framework v0.0.1 都开发不出来的话,肯定是没有深入理解一个框架。前几天 @phoenixg 说要自己写个 MVC 框架。 而且他也确实不仅仅是说说而已,短短一个周末,这个框架雏形就神奇的出现在了github上。这 阅读全文

代码之谜(零)- 其实,你不懂代码

2012-11-08 13:45 by justjavac, 960 阅读, 6 推荐, 收藏, 编辑
摘要:2012年9月28日 13时32分 新增最近看本文评论,争议很多,我先说说这篇文章的前世今生吧。我原文标题是『代码之谜 - 开篇/前言/序』,副标题是『其实,你不懂代码』,本来打算用“其实,代码中的运算符不等价于数学符号”。原文我写于2010年底,当时写在 evernote 中,用了”群“、”域“、”集合“、”关系“的概念解释了计算机中用二进制表示的离散的数和现实中连续的数之间的关系和区别。前几天QQ群里有人问道,遂打算写一个系列,用比较”贫“的语言把他们讲述出来。原文首发在我的博客:http://justjavac.com/codepuzzle/2012/09/25/codepuzzle-i 阅读全文

程序员之路——一个老程序员对刚上大学的学弟学妹的忠告

2012-09-20 09:56 by justjavac, 871 阅读, 7 推荐, 收藏, 编辑
摘要:始终认为,对一个初学者来说,IT界的技术风潮是不可追赶。 我时常看见自己的DDMM们把课本扔了,去买些价格不菲的诸如C#, VB.Net 这样的大部头,这让我感到非常痛心。 而许多搞不清指针是咋回事的BBS站友眉飞色舞的讨论C#里面可以不用指针等等则让我觉得好笑。C#就象当年的ASP 一样,“忽如一夜春风来,千树万树梨花开”,结果许多学校的信息学院成了“Web 学院”。 96, 97级的不少大学生都去做Web了。当然我没有任何歧视某一行业的意识。 我只是觉得如果他们把追赶这些时髦技术的时间多花一点在基础的课程上应该是可以走得更远的。几个误区初学者对C#风潮的追赶其实也只是学习过程中经常遇到的几 阅读全文

避免常见的六种HTML5错误用法

2012-08-23 13:13 by justjavac, 160 阅读, 0 推荐, 收藏, 编辑
摘要:原文链接请点击此处, 作者为Richard Clark.本文为原创翻译,同时对原文做了一些简化处理。 本文遵循署名-非商业性使用协议。一、不要使用section作为div的替代品人们在标签使用中最常见到的错误之一就是随意将HTML5的<section>等价于<div>——具体地说, 就是直接用作替代品(用于样式)。在XHTML或者HTML4中,我们常看到这样的代码:<!-- HTML 4-style code --><div id="wrapper"> <div id="header"> < 阅读全文

关于html5的7个传说

2012-08-23 13:12 by justjavac, 142 阅读, 0 推荐, 收藏, 编辑
摘要:正如 Opera 的布道者 Bruce Lawson 讲的那样,“每个人都在谈论 HTML5”,它被传的很神、很玄。但简单地说,HTML5 就是以新的标准、语法和规则来创建网页,可以利用一些新的浏览器的“本地”功能,例如离线存储、多媒体播放和其他的交互等等。我们看到的很多很酷的 HTML5 网站实际上跟 HTML5 无关,它们大多是由 CSS3 和 jQuery 生成的。CSS3 和 jQuery 是和 HTML5 一样的新技术,它们和 HTML5 是平行的概念。可以说,HTML5 实际上只是古老的 DHTML 或者 Ajax,但是各种关于它的信息混在一起,就出现了一些错误的说法。这篇文章讲了 阅读全文

现在就使用HTML5的十大原因

2012-08-23 13:11 by justjavac, 381 阅读, 0 推荐, 收藏, 编辑
摘要:你难道还没有考虑使用HTML5? 当然我猜想你可能有自己的原因; 它现在还没有被广泛的支持,在IE中不好使,或者你就是喜欢写比较严格的XHTML代码。HTML5是Web开发世界的一次重大的改变,事实上不管你是否喜欢,它都是代表着未来趋势。 其实HTML5并不难理解和使用。我们这里能列出许多原因为什么现在要开始使用HTML5。目前有很多的文章介绍使用HTML5并且介绍了使用它的优势和好处,没错,我们这篇文章也类似。 随着更多这样的文章,以及Apple的支持,Adobe围绕HTML5的产品开发,以及移动flash的死亡, 如此多网站的支持,我想对那些仍旧没有或者不想接受它的人说一些话。 我认为主要 阅读全文
上一页 1 ··· 4 5 6 7 8 9 下一页
无觅相关文章插件,快速提升流量