其他
Erorr
Erorr
展开
-
动手写了一个乒乓球积分排名表
事情的起因还是我加入了一个乒乓球QQ群说起,由于长期缺乏锻炼,肚子上的肥肉已经太明显了,于是想找人打打乒乓球,运动一下,毕竟是自己的一项特长嘛。加入群不久就有人问计算机的问题,于是奋勇报名,接下来自然是需要出力气的活了。需求是要搞一个乒乓球比赛纪录并计算等级分的工具,类似世界排名之类的了。最初要求是用数据库实现。可是考虑到这些业余选手对数据库的熟悉程度,我还是放弃了这个设计,因为不论是Web方原创 2009-07-12 22:47:00 · 1340 阅读 · 0 评论 -
分布式开发的几点基础知识
开发人员要多思考,才能把知识融会贯通。关于分布式的一些概念虽然知道,但都比较零散,今天看《面向模式的软件架构(卷4)》才清楚了一些,总结如下。 技术总是演进的,按照时间顺序来说吧。 20世纪80年代后期和90年代初期,CORBA是典型的“分布式对象计算”中间件,其中“对象”是关键。也许那个时候C++等面向对象编程正火。 20世纪90年代中后期,EJB出现了,被称为“组件”中间件。其中“组件”和“容器”是重要的概念。 后来,又出现了JMS这样的面向“消息”的中间件,但这应该只是同步和异步上的设计问题,原创 2011-05-11 23:36:00 · 932 阅读 · 0 评论 -
RTSP服务器端实现的一个问题
网络编程总是伴随有各种协议,IP、TCP/UDP、应用层都有各自的协议栈。《TCP/IP 详解》第一卷就是“协议”,这些协议大都写在RFC里面。但是有时协议描述的并不是很准确,不同的厂商可以有自己的实现。 以RTSP协议为例,分为Client和Server两个部分的实现,由于两部分的实现可能不是同一个公司,所以有时配合起来就会发生问题。首先,即使都是Google Android的系统,版本不同,表现出来的行为也不太一样。例如2.3.2版本中,PLAY request里面没有带Range信息,而这在其他Cl原创 2011-03-13 00:46:00 · 928 阅读 · 0 评论 -
学习《UNIX网络编程 卷1:套接字联网API》
自己号称是做网络编程的,但之前都没有学过socket,拿ACE来充数的。今天终于可以开始好好学习一下UNP这本经典著作了。 万事开头难,介绍一下如何准备。 1. 网上书店,买书。 2. turingbooks上下载源代码 3. 安装cygwin或者虚拟机装linux 4. README,编译代码,运行 5. 修改代码原创 2010-12-08 23:54:00 · 724 阅读 · 0 评论 -
2010年9月5日
Preparing the environment for the study of writing an OS (2008-01-06) There is a book (《自己动手写操作系统》) introduces how to write an OS by ASM and C programming language. Before testing the examples in the book, it need to build an environment first. My laptop原创 2010-09-05 14:19:00 · 849 阅读 · 0 评论 -
2010年8月25日
继续备份一下其他Blog的内容。 1. SSH TUNNELING 使用Putty的时候,有事可以设置一下SSH Tunnels穿越防火墙的设置,只要有权限访问防火墙内某台机器的SSH服务,就可以访问防火墙内其他Server的端口了。原理图如下: Putty本地设置为L29492 + 10.170.30.161:29492,这样访问127.0.0.1:29492就可以连接到防火墙内部的10.170.30.161:29492端口了。 2. A Shell Programming Error L原创 2010-08-25 09:40:00 · 625 阅读 · 0 评论 -
Java从语言向平台发展
对Java不是很熟悉,不过最近看到一些流行的语言如Scala,Groovy,以及以J开头的很多东西。感觉Java越来越庞大,什么都和Java有关系,也难怪原来Sun想把股票名都改成Java。 下面是Java的一个架构图,虽然是5.0版本的,但也足够复杂了,很多技术都成了JDK的一部分。程序员需要关注的东西越来越靠近应用。以前看MFC的时候就觉得这个框架把自己和WindowsAPI隔离了,以后的发展趋势应该也是一样。一部分程序员负责这种包装工作,另一部分程序员只是把组建组合起来而已,而我们大部分都是属于第二原创 2010-08-12 14:58:00 · 728 阅读 · 0 评论 -
2010年8月10日
备份一下公司一个过期的blog,只有两篇,写在一起吧。 第一篇,关于RTSP协议里面用来同步音频和视频的一个字段。原文如下: RTSP RTP-Info is used to synchronize audio and video after a seek A mapping from RTP timestamps to NTP timestamps (wall clock) is available via RTCP. However, this information is not suffici原创 2010-08-10 10:29:00 · 898 阅读 · 2 评论 -
有感于那些厚此薄彼的程序员
<br />今天上来看看,发现有人讨论C++好坏的问题,进而引申到人品的问题,加上最近公司同事的一些讨论,发现很多程序员太容易走极端。<br />喜欢C++的就鄙视Java,用惯Java的就说C++垃圾,而Java里面也有EJB、Spring框架之间的选择,操作系统也是一团乱麻,Unix,Windows,Mac OS和Linux之间的选择,就连Linux不同版本也一样,有些人就是力挺Ubuntu,无视其他版本,还有用SVN和Clear Case之间的优劣等等。<br />从中也可以归纳出两派,保守派和革新派原创 2010-06-12 22:23:00 · 532 阅读 · 0 评论 -
2010年7月18日
最近在做一些Linux上面的事情,虽然上大学的时候,就自己装过Red Hat玩,可真正用起来发现自己又是个Linux文盲了。直到最近才把这些事情搞清楚。1. LAMP是什么?安装Server的时候看到这个选项,没选,因为我想装的是Apache,原来LAMP是Linux、Apache、MySQL和PHP的应用架构简称。2. Ubuntu发音?乌邦图3. Ubuntu哪里冒出来的?我认为是Debian的基础上冒出来的现在清楚一些了,这个Ubuntu也不是凭空产生的,和Debian有渊源,似乎也有一些矛盾。基本上原创 2010-07-18 16:31:00 · 537 阅读 · 0 评论 -
记得要站在别人的肩膀上
<br />还是Git,最近在研究Git和SVN的交互,感觉有点乱。虽然Git感觉上比较牛,但毕竟是分布式的,和SVN有差别,要想迅速取代SVN不太可能。<br />也许Git并没有想取代SVN,如果Git当初多考虑这个问题,将来的前景会更好。<br />反观SVN取代CVS就很容易,这就是因为SVN是建立在CVS基础之上的。同样的例子,如Linux比Unix更流行,C++比C更强大。如果我们有一天搞新东西,一定要问我们的对手是谁,记得要站在对手的肩膀上,虽然另起炉灶也许没有那么多条条框框限制,但商业就是商原创 2010-07-20 17:10:00 · 669 阅读 · 1 评论 -
TOIBE编程语言排名
工作几年了,不光要会编程,跟软件有关的各种信息都要懂一点。今天看了一个编程语言排名,TOIBE公司搞的,今年Java、C、C++分列前三名,目前C语言用了一年,C++两年、Java一年,今后还要在Java上多下工夫才行。原创 2010-06-30 22:25:00 · 2761 阅读 · 0 评论 -
Effective C++ Third Edition 读书笔记 37
Item 37: Never redefine a function's inherited default parameter value好久没写读书笔记了,今天先跳到37条吧,这条印象比较深,在C++ Primer、C++编程思想、C++ Programming Language这三本书里居然一时没找到答案,也需是英文版的缘故吧,以后买书没有特殊情况再不能买英文的了,太痛苦了。言归正传,这条的主要思想是,如果在重载虚函数的时候使用了默认的参数,当使用多态的时候,函数体是动态绑定的,而这个输入参数是静态绑原创 2010-06-26 17:16:00 · 745 阅读 · 0 评论