不谈汇编,不谈到二进制,让我们停留在byte,字节,谈我们现在这些高级编程语言所操纵的东西。
对于网络程序而言,对于存储到数据库的格式而言,对于存储到本地的文件而言,规根到底,都是一些Encoding,再规根到底,只不过都是 字节 byte[] 而已;
做网络程序如果不领会到这一步,而被大堆的表象类迷惑,就会云里雾里,最后一头雾水,可能功能都实现了,就是不知道怎么实现的.
建议做网络程序的程序员们先 把存储在本地的文件 摸透,不管是什么格式的,把它拆成N个部分,然后再组合——这样你会更加清楚怎样操作这些让人头疼的“文件”,不要被各种各样的图标所迷惑了,什么Zip,PSD,exe,都只是一些字节,把他们看作一样的东西;
本地的玩透了,那就玩网络吧,不管是 Udp数据,Icmp数据,Tcp数据等等,传输的,都只是一些字节而已,自己做一个Sniffer,然后来截获这些 字节,然后把里面的数据信息提取出来,这样,你就会进步很快的。了解所有的名词都是对字节的排列规则的描叙,就会跟学化学一样,知道了最基本的元素,万千世界只不过是各种元素的组合而已。
还有数据库的数据存储,图像格式,音频格式,视频格式,呵呵,不要头晕,还是把它元素化,抓住它的识别符号,就明白它只不过还是一堆字节而已,要操纵他们,先要知根知本。
如果有了这些基础,再来看 网络音频传输,视频传输,文件传输等等,多线程下载,断点续传,呵呵,万变不离其踪而已!