关于计算机认识的一点笔记

1.关于接口
一句话,接口使得对象之间彼此联系又彼此制约.如果你总是习惯考察单个类,你可能永远都理解不了接口,但如果你能从整体设计上去思考,接口的作用显而易见。接口(Interface)说明类该做什么而不指定如何去做,一个类可以实现一个或多个interface。接口不是一个类,而是对符合接口要求的类的一套规范。

2.关于控件与组件
控件就是拥有用户界面的组件.一般把Control翻译成控件,把Component翻译成组件。

3.关于linux与linux发行版
linux发行版(如RedHat红帽、ubuntu乌邦图等等)都是在linux内核上加上不同的东西(尤其是图形化的东西)。

4.js的作用:可以在网页上产生动态的显示效果和实现与用户交互的特效功能

5.ADO.NET就是一个类库,用来操作数据库的

6.关于32位和64位。
首先32位和64位有CPU和OS之分。可以用cpuz来检查CPU是使用x86指令集(32位)还是x64指令集(64位)。
32bit(32位)是x86指令集的CPU上建立的OS,可支持4G内存。64bit(64位)是在x64指令集的CPU上建立的OS,可支持128G内存。

7.对于32bit 64bitOS的选择问题
安装前问自己,自己的CPU支持不支持X64,内存是不是大于4G。
CPU 支持:
1,cpu X86 -> 只能安装32位系统
2,cpu X64 -> 内存 小于 4G ->推荐安装32位系统
内存 等于 4G ->集成显卡配置 -> 推荐安装32位系统
内存 等于 4G ->独立显卡配置 -> 可选择安装32位或64位系统
内存 大于 4G ->推荐安装64位系统
来源http://www.crifan.com/about_x86_x64_cpu_install_32bit_x64bit_win7/

8.DOS中的cd
在DOS中要是想要更换磁盘,比如说想要从c盘换到d盘,直接输入D: 而不需要输入cd命令

9.关于shell
shell是一个特殊的应用。很多用户将它称为命令行。shell是一个命令解释器(interpreter)。一个shell对应一个终端。
UNIX的一条哲学是让每个程序尽量独立的做好一个小的功能。而shell充当了这些小功能之间的"胶水",让不同程序能够以一个清晰的接口(文本流)协同工作,从而增强各个程序的功能。这也是Linux老鸟鼓励新手多用shell,少用图形化界面的原因之一。
shell的本质是调用命令。它并不是一个真正的语言。所以说shell是一个胶水。

10.关于Lisp
Lisp意为表处理(List Processing)。Lisp最明显的特征是它“古怪”的S表达式语法。S表达式是一个原子(atom),或者若干S表达式组成的列表(list),表达式之间用空格分开,放入一对括号中。真正的Lisp之门不在函数式编程,而在S表达式本身,Lisp最大的奥秘就藏在S表达式后面。“S表达式”是程序的一种形,正如“七言”是诗的一种形,“微博”是信息的一种形。正是形的不同,让微博与博客有了质的差异,同样的道理,正是S表达式让Lisp与C、Java、SQL等语言有了天壤之别。
XML是我们通向理解Lisp的桥梁。

11.关于函数式编程(比如说Python)
函数式编程的准则:不依赖于外部的数据,而且也不改变外部数据的值,而是返回一个新的值给你。
函数式编程的理念:把函数当成变量来用,关注于描述问题而不是怎么实现,这样可以让代码更易读。
http://coolshell.cn/articles/10822.html
函数式编程关注的是:describe what to do, rather than how to do it. 于是,我们把以前的过程式的编程范式叫做 Imperative Programming – 指令式编程,而把函数式的这种范式叫做 Declarative Programming – 声明式编程。

12.关于KISS原则
keep it simple, stupid. KISS原则 – 让每个功能就做一件事,并把这件事做到极致,软件或程序的拼装会变得更为简单和直观。这个设计理念影响非常深远

13.关于COM
COM 编程类似客户端和服务器端的两层结构,COM 所建立的是一个软件模块与另一个软件模块之间的链接, 当这种链接建立之后, 模块之间就可以通过被称之为 Interface“ 接口 ”的机制来进行通信。

14.关于函数式编程与面向对象编程
函数式风格重点是增强类型系统:一些编程语言提供的基础数据类型仅有数值型和字符串型,函数式风格要求函数也是基础数据类型,即代码也是一种数据;
面向对象风格侧重代码的组织形式:要求把数据和操作这些数据的函数组织在同一个类中,提高内聚;对象之间通过调用开放的接口通讯,降低耦合。
http://zzp.me/2013-08-17/let-over-lambda/

15.将图片换成文字
ocr 或者用 debugbar

16.bash
Bash(GNU Bourne-Again Shell)是许多Linux平台的内定Shell,事实上,还有许多传统UNIX上用的Shell,像tcsh、csh、ash、bsh、ksh等等,Shell Script大致都类同。

17.关于类与接口与COM
一个类提供了很多的属性方法,如果不加区别的堆积在类中,开发人员在要使用一个方法的时候就不得不遍历它们,这样不方便。COM组件技术(接口)的出现解决了上面的问题,它将类的内部属性和方法进行分类,即将功能相近的属性方法组织到同一个接口中,通过接口来管理类中的属性、方法。但是,COM也存在一个致命的缺陷——“DLL灾难”。

18.“DLL灾难”
是指多个应用程序可以共享相同的COM组件,如果某个应用程序升级了共享的COM组件,就很可能导致其他的某个应用程序不能使用新的组件,进而导致应用程序不能运行的情况。.NET技术的出现解决了这个问题。

19.重构(refactoring)
重新组织程序,以改善函数的接口,提高代码复用。修改代码并改善函数的接口以及代码质量的过程。

20.一个开发计划(development plan)
步骤:
最开始写一些小程序,而不需要函数定义;
一旦程序成功运行,将他封装到一个函数中,并加以命名;
泛化这个函数,添加合适的形参;
重复步骤1到步骤3,直到你得到一组可行的函数。复制粘贴代码,以避免重复输入(以及重复调试);
寻找可以使用重构来改善程序的机会。例如,如果发现程序中能够基础地方有相似的代码,可以考虑将它们抽取出来做一个合适的通用函数。

21.递归(recursive)的分析方法
分析递归用栈图来分析。Python在一个函数每次被调用的时候会新建一个函数帧(function frame),内含函数的局部变量和参数。

22.关于服务器框架(framework)
在当今Python服务器框架 (framework, 比如Django, Twisted, web.py等等) 横行的时代,从底层的socket开始写服务器似乎是一个出力不讨好的笨方法。框架的意义在于掩盖底层的细节,提供一套对于开发人员更加友好的API,并处理诸如MVC(Model-View-Control)的布局问题。

23.关于socket
socket接口是实际上是操作系统提供的系统调用。socket是进程间通信的一种方法 (参考Linux进程间通信),它是基于网络传输协议的上层接口。socket有许多种类型,比如基于TCP协议或者UDP协议(两种网络传输协议)。其中又以TCP socket最为常用。TCP socket与双向管道(duplex PIPE)有些类似,一个进程向socket的一端写入或读取文本流,而另一个进程可以从socket的另一端读取或写入,比较特别是,这两个建立socket通信的进程可以分别属于两台不同的计算机。

24.关于socket
一个socket包含四个地址信息: 两台计算机的IP地址和两个进程所使用的端口(port)。IP地址用于定位计算机,而port用于定位进程 (一台计算机上可以有多个进程分别使用不同的端口)。

25.关于TCP socket的HTTP服务器
socket传输自由度太高,从而带来很多安全和兼容的问题。我们往往利用一些应用层的协议(比如HTTP协议)来规定socket使用规则,以及所传输信息的格式。

26.关于网关与路由器
在传统TCP/IP术语中,网络设备只分成两种,一种为网关(gateway),另一种为主机(host)。在现代网络术语中,网关(gateway)与路由器(router)的定义不同。网关(gateway)能在不同协议间移动数据,而路由器(router)是在不同网络间移动数据,相当于传统所说的IP网关(IP gateway)。
网关顾名思义就是连接两个网络的设备,对于语音网关来说,他可以连接PSTN网络和以太网,这就相当于VOIP,把不同电话中的模拟信号通过网关而转换成数字信号,而且加入协议再去传输。在到了接收端的时候再通过网关还原成模拟的电话信号,最后才能在电话机上听到。
对于以太网中的网关只能转发三层以上数据包,这一点和路由是一样的。而不同的是网关中并没有路由表,他只能按照预先设定的不同网段来进行转发。网关最重要的一点就是端口映射,子网内用户在外网看来只是外网的IP地址对应着不同的端口,这样看来就会保护子网内的用户。

27.CIDR(无类型域间选路,Classless Inter-Domain Routing)

28.关于linux在/dev下面的硬盘的命名
前两位是hd表示这是一块IDE硬盘;如果是sd,表示是SATA硬盘,或者闪存等外设。

29.NTFS与ext4
windows中,盘符既用于表示硬件(硬盘上的分区),又用于表示系统中的路径。而在linux中,硬件就是硬件,路径就是路径,不会混肴在一起,简单直接。

30. apt
ubuntu中的apt是指Advanced Packing Tool
在hedhat等中要的是yum

31.dpkg
Debian Package Management System.
dpkg常用命令: dpkg -i packagename.deb 安装软件;dpkg -r packagename卸载软件;

 

32.网卡与IP

并不是说一个网卡只能有一个IP的。一个网卡可以有多个IP。在windows下面:本地连接属性-->Internet协议版本4(TCP/IPv4)属性-->高级,可以添加多个IP

 

33.代理服务器(proxy server)

代理服务器是一种网络实体,他又称为万维网高速缓存(Web cache)。代理服务器把最近的一些请求和响应暂存在本地磁盘中。当请求到达时,若代理服务器发现这个请求与暂存的请求相同,就返回暂存的响应,而不需要按照URL的地址再次去因特网方位钒资源。代理服务器可以再客户端或度武器端工作,也可在中间系统上工作。

 ?所以这样理解:代理服务器上存储的是http对象,而DNS缓存是存储在本地的。

 

-------------------------------------英文对照----------------------------------------------------
ADSL(Asymmetric Digital Subscriber Line,非对称数字用户线路)
attribute属性
annotation 批注,注释
array数组
archive 归档
bottom底部
buddy 伙伴
clip裁剪
cluster 丛,簇
concunrrency 并发
convex凸的
config(configure)配置,设置
cursor光标,游标
default 默认的,缺省的
DOM文档对象模型,DOM就是把html页面模拟成一个对象,就像Xdocument把XML模拟成一个对象
export输出→→→→→→→→→→→→→→→→→→→→→→→→import输入
ellipse 椭圆
gradient 渐变的
hint暗示
heap堆→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→ stack栈
href(hypertext reference)超文本引用,超链接
hull外壳
Horizontal水平的
icon图标

import导入
immutable不可改变的
intersect相交,交集
interval 间隔
IPC (interprocess communication)进程间通信
Iteration 反复,[计算机]循环 →→→→→→→→→→→→→→→→→→→→→→→→→→ iterator迭代器
lazy evaluation 惰性求值

mozilla摩斯拉(浏览器的名称)
multi-paradigm 多范式语言
node节点(在html中包括标签、属性、文本)element元素(在html中指的是标签)
navigate导向到,驾驶
ocr 图文识别(将图片转换成文字)
opacity透明度
orphand 孤儿
parallelization 并行
proximity接近,临近
propotype 原型,雏形,蓝本
paradigm 范例,样式
parse从语法上分析[pɑ:rs]
precision 精度
QI QueryInterface 互相调用
Renderer 渲染
routine[计算机]程序
sector 磁区
stack堆,堆栈
semaphore 信号量
symbol符号,标记
Saturation 饱和度
syntax句法,语法
symetric

tag标签
topological拓扑的
vertical垂直的 virtual[计算机]虚拟的
wrapper 封装
wild card, 也叫filename pattern matching,文件名通配表达式

.bat批处理文件

fork() [计算机]系统调用

 relay 中继器

posted @ 2014-07-14 21:13  陈不二  阅读(660)  评论(0编辑  收藏  举报
yes, javascript 拯救世界