Browsed by
作者: 陈皓

芝兰生于深谷,不以无人而不芳 君子修身养德,不以穷困而改志
面试题:布尔变量

面试题:布尔变量

下面这篇文章是从StackOverflow来的。LZ面试的时候遇到了一道面试题:“如果有三个Bool型变量,请写出一程序得知其中有2个以上变量的值是true”,于是LZ做了下面的这样的程序:

boolean atLeastTwo(boolean a, boolean b, boolean c) {
    if ((a && b) || (b && c) || (a && c)) {
        return true;
    } else {
        return false;
    }
}

面试官接着问到,请对你的这个程序改进一下,但LZ不知道怎么改进,于是上StackOverflow上问了一下,下面是StackOverflow上的众网友的回答。再往下看的时候,希望你自己能先想一想怎么改进。

阅读全文 Read More

好烂啊有点差凑合看看还不错很精彩 (15 人打了分,平均分: 4.20 )
Loading...
伦敦地铁实时图

伦敦地铁实时图

下面这个网站是关于伦敦地铁实时的运行图:http://traintimes.org.uk:81/map/tube/

这是个很有意思的网站,其数据是通过伦敦政府发布的TfL API获得的,然后再加上Google Maps的API,于是就有了这样的一个页面。很不错哦。

伦敦地铁实时图

从这个事情,我们可以得到,英国的信息化的发达,首先地铁部门有实时监控的数据,然后以Web API的方式发布,从这点看来,我国的信息化水平还很差。主要是钱都投到G/F/W上去了。

好烂啊有点差凑合看看还不错很精彩 (14 人打了分,平均分: 3.57 )
Loading...
2000年的iMac和2010年的iPhone

2000年的iMac和2010年的iPhone

以前本站发过“1980年和2009年的1GB电脑内存的比较”,下面是2000年的iMac和2010年的iPhone的比较。

2000 – iMac

操作系统 – Mac OS 9.0.4
处理器 – 500 MHz PowerPC G3 CPU, 128MB Memory
显示卡 – ATI Rage 128 Pro, 8MB of memory (8 million triangles)
屏幕- 786K pixels
数据传输速度 – 1.3-12.5 MB/s (DVD-ROM-1/100 Ethernet)
存储设备 – 30GB Hard Drive
显示器 – 15.0 x 15.0 x 17.1 inches
重量 – 12.25公斤


2010 – iPhone 4
操作系统 – iOS 4.0
处理器 – 1 Ghz ARM A4 CPU, 512MB Memory
显示卡 – PowerVR SGX 535, uses system memory (28 million triangles)
屏幕 – 614K pixels
数据传输速度 – .04-20MB/s (3G-WiFi)
存储设备 – 32GB Flash Drive
显示器 – 4.5 x 2.31 x .31 inches
重量 – 136克

那么,2020年的产品会是怎么样的?

好烂啊有点差凑合看看还不错很精彩 (17 人打了分,平均分: 3.59 )
Loading...
信XML,得永生!

信XML,得永生!

在计算机的世界里,什么最牛?JavascriptC语言C++iPad?还是brainfuck?我个人觉得都不是,这个世界里,XML最NB,这世界到处都充斥着XML,正如在“十条不错的编程观点”文中所说,我们不用XML我们都不知道怎么编程了。下面,让我们来看一看XML的几个真实的示例,相信你会同意我的观点的。

一、如何用XML返回数据库SQL查询结果

<?xml version="1.0" encoding="iso-8859-1" ?>
<result>
  <fields>
    <field>NAME</field>
    <field>LAST NAME</field>
    <field>MOTHER MAIDEN NAME</field>
    <field>BIRTHDATE</field>
    ...
  </fields>
  <data>
    <row>
      <value>MARLENE</value>
      <value>RUTH</value>
      <value>DE MARCO</value>
      <value>1973-02-24 00:00:00</value>
      ...
    </row>
  </data>
</result>

阅读全文 Read More

好烂啊有点差凑合看看还不错很精彩 (17 人打了分,平均分: 2.76 )
Loading...
把Flash转成Javascript/HTML5

把Flash转成Javascript/HTML5

SmokeScreen是这样一个开源软件,它可以把Flash的swf文件转成Javascript/HTML5,它的口号是:Flash without plugin。为什么要这样做呢?它说主要是因主Apple的iPhone/iPod/iPad不支持flash,而且看似Steve Jobs也不愿意在以后支持flash。所以,他们搞了这样一个玩意。目前,这个开源软件还在开发阶段,在其主页上,你可以看到一些Demo,在Chrome上看上去很不错,虽然还有一些小问题,不过已经很不错了。

HTML5几乎颠覆了原来的HTML,其可以让你用HTML不单单只是做网页布局,而且还让你可以开发更强的东西,比如:WebSockets,使用这项技术,已经有人在搞Web版的Quake 2了(http://code.google.com/p/quake2-gwt-port/),还有Google的3D Javascript API,所以,把swf完美地转成Javscript/HTML5可能也只是一个时间问题。

虽然,HTML5还在draft阶段,而且很多东西都和flash重复了。所以,加上iPhone的推波助澜,发生这样的事情也不奇怪,不知道adobe会怎么想?也许adobe目前对其AIR或是Actionscript还抱有希望,虽然有这样一篇文章力挺Flash,但未来真的不好说,adobe会使用HTML5/Javascript来作为其flash的引擎吗?如果不这样的话,我相信总有一天,会有人开发出HTML5/Javascript的IDE。而且,有理由相信,一旦在未来所有的浏览全面支持HTML5,那么我们可以想像,这个世界可能几乎所有的桌面应用都会被Web所取代,这个进程可能会越来越快。让我们拭目以待。

好烂啊有点差凑合看看还不错很精彩 (11 人打了分,平均分: 3.45 )
Loading...
WTF Javascript

WTF Javascript

请先看一下下面的这段Javascript程序以及其结果。

[javascript]
1 + + 1              // => 2
1 + – + 1            // => 0
1 + – + – + 1        // => 2
1 + – + – + – + 1    // => 0
1 + – + + + – + 1    // => 2
1 + / + + + / + 1    // => 1/ + + + /1
[/javascript]

提示一下,1++1等价于1 + (+1),也就是1加上一个正数1,如果你能搞懂其它的表达式的话,请看看下面的这段程序,你能说出其结果吗?

[javascript]
1 + / + / + / + 1 // => ?
[/javascript]

如果不知道的话,你可以到这个网页上去讨论讨论。当然,如果你不懂也没有什么关系,因为Javascript本身就是一个很怪异的语言,再加上浏览器的种种不是,所以,Javascript程序员也是很郁闷的。在以前的“最为奇怪的程序语言的特性”中也说过一些。Javascript最怪异的特性导致了wtfjs.com这样的一个网站,还有一个WTF JS的开源站点。呵呵。

好烂啊有点差凑合看看还不错很精彩 (8 人打了分,平均分: 3.25 )
Loading...
四个流行的Java连接池

四个流行的Java连接池

C3P0是一个开放源代码的JDBC连接池,它在lib目录中与Hibernate一起发布,包括了实现jdbc3和jdbc2扩展规范说明的Connection 和Statement 池的DataSources 对象。(主页:http://sourceforge.net/projects/c3p0/

BoneCP 是一个开源的快速的 JDBC 连接池。BoneCP很小,只有四十几K(运行时需要log4jGoogle Collections的支持,这二者加起来就不小了),而相比之下 C3P0 要六百多K。另外个人觉得 BoneCP 有个缺点是,JDBC驱动的加载是在连接池之外的,这样在一些应用服务器的配置上就不够灵活。当然,体积小并不是 BoneCP 优秀的原因,BoneCP 到底有什么突出的地方呢,请看看性能测试报告。(主页:http://jolbox.com/

DBCPDatabase Connection Pool)是一个依赖Jakarta commons-pool对象池机制的数据库连接池,Tomcat的数据源使用的就是DBCP。目前 DBCP 有两个版本分别是 1.3 和 1.4。1.3 版本对应的是 JDK 1.4-1.5 和 JDBC 3,而1.4 版本对应 JDK 1.6 和 JDBC 4。因此在选择版本的时候要看看你用的是什么 JDK 版本了,功能上倒是没有什么区别。(主页:http://commons.apache.org/dbcp/

Proxool是一个Java SQL Driver驱动程序,提供了对你选择的其它类型的驱动程序的连接池封装。可以非常简单的移植到现存的代码中。完全可配置。快速,成熟,健壮。可以透明地为你现存的JDBC驱动程序增加连接池功能。(主页:http://proxool.sourceforge.net/

好烂啊有点差凑合看看还不错很精彩 (9 人打了分,平均分: 3.44 )
Loading...
Twitter的禁用口令

Twitter的禁用口令

打开Twitter的注册页面,https://twitter.com/signup,查看一下源码,你会看到一个很长的禁用口令列表(见本文最下面),其中的某些口令的确很雷人。你可以参看本站的《如何管理并设计你的口令》来设计和管理你的口令。其中的某些口令需要向你解释一下:

  • ncc1701 这是星际迷航中的战舰号。
  • thx1138 这是乔治卢卡斯的第一个电影,1971年,其学生时代的作品。
  • qazwsx 这是键盘的布局顺序键。
  • 666666 这是6个6
  • 7777777 这是7个7
  • ou812 这是1988范 海伦Van Halen 专辑
  • 8675309 这是 1982 Tommy Tutone song歌中提到的数字。这首歌导致人们开始播打电话867- 5309 寻找 “Jenny”

经过统计,9个人里就有1个人会使用下面这个列表中的一个口令,而50个人就会有1个人使用top 20里的一个口令。你可能会问,top20是怎么来的?而twitter这个列表又是哪里来的?请看下面的表格。这是top 500最烂的口令列表。其来源是这里

阅读全文 Read More

好烂啊有点差凑合看看还不错很精彩 (15 人打了分,平均分: 3.40 )
Loading...
黑客的价值观

黑客的价值观

黑客,可能在大家的眼里是那些入侵别人计算机搞破坏的人,其实并不是那样的。如果你这样认为了,只能说明你对计算机文化并不了解,真正的黑客是一种自由的象征,他们挑战权威,追求自由,并和很多非人类的行为作斗争。如果你想了解黑客文化,你一定要去看看我写的《Unix传奇,上篇下篇》。你会对正宗的计算机文化以及黑客文化有所了解的。而那些只懂得入侵别人计算机搞破坏活动的“黑客”只能称为是街头的小混混,他们根本就不配称黑客。

下面有四篇关于“Hacker’s Code”文章,我觉得相当的不错,可以让你明白什么是黑客的行为规范,道德准则,以及黑客的历史使命,希望能对你有启发。但是翻译水平有限,所以我请Mailper同学帮忙翻译了一下,但还是觉得原文更为传神,尤其是原文中的押韵,双意以及朗朗上口,所以,下面提供了中英文对照。如果有翻译得不好的还请大家指正。

The Hacker’s Code

http://muq.org/~cynbe/hackers-code.html

“A hacker of the Old Code.”

  • Hackers come and go, but a great hack is forever.
    黑客们来来往往,但是只有黑客的壮举是永存的
  • Public goods belong to the public.*
    公众的东西是属于大众的
  • Software hoarding is evil.
    Software does the greatest good given to the greatest number.
    圈养软件是邪恶的,最好的软件是有最多人使用的

阅读全文 Read More

好烂啊有点差凑合看看还不错很精彩 (16 人打了分,平均分: 4.06 )
Loading...