我所住的城中村1

刚来深圳的时候就住在这个城中村,现在仍然住在这里。
这是属于罗湖清水河。倚着一座山,同样倚着这座山的还有泥岗村,银湖等地方,还有山的另一面是一个巨大的垃圾填埋中心,它的大小在google地图图中看也是巨大的一片。我每天清晨下山去挤公交车的时候各个垃圾中心的垃圾车都满载垃圾经过我下山的路,边走边洒出恶臭的污水。
村子叫玉龙新村,位于这座山的一片较平缓的上坡上,这片上坡并非都是村子,共存的还有一个高尔夫球练习场,和村子中间用墙隔开,每逢周末可以看到很多人在那里练球,在住的楼上视线越过那道墙可以看到,仿佛在看另外一个世界。
我住在村子的最上面,几乎每天下公交车后还要爬十几分钟的山才能到家,上山的路就是紧贴那面墙的这侧。山下的房子较密,人也很多,很是拥挤,从自己家的窗户伸出手去,几乎就可以碰到隔壁的楼。山上的房子较疏,晚上比较安静,代价就是要爬山。实际上村子下面到村子的最上面也是有一条直线巴士路线的。但是这个村子住的人太多而且山路不能超载,所以很少有机会能够乘上这班车。除非去终点站排队。最上面有一个文体中心,里面有篮球场,足球场,早上六点到九点免费,所以我一次也没进去玩过球。
……………..待续………….

ios开发:file ower ,IBoutlet 的理解

xib文件本身可以看做是一个xml,app启动的时候会根据xml构造xib对应的界面及其控件,
file’s owner 可以看做是 xib对应的类,比如 view对应的xib文件的file’owner对应的就是 viewcontrol的类,
outlet是针对xib文件中希望能够在外部引用的控件成员,
First Responder:每个程序都会有一个第一响应者,比如鼠标事件,键盘事件等,它就是对应的那个对象。比如多文档程序中,你的 menu的响应事件一般都是连接到FirstResponder中去的,因为你的主界面一般都在别的nib里面,此时的FirstResponder就是你的那个主nib的FileOwne

那么为什么要做outlet与file’s owner 之间的连线呢?

这里file’s owner 看做我们定义的类,即我们的代码,里面写了哪些需要outlet的控件,
但是,具体它对应与界面上哪个控件呢,这个对应关系是没有的,于是我们通过
file’s owner 和 label之间的连线,确定了 我们代码中的outlet控件与 xib中的控件的
对应。类似与 mfc中,我们定义了一个成员,这个成员与界面上的某个控件对应。
同样的道理,我们虽然在 viewcontrol中 定义了 ibaction,即 事件响应的代码,却未将其与
实际的 ui的事件相关联,于是我们通过连线,将事件与代码中的响应处理对应起来。
outlet连线:control点击file’s owner 拖拉到 相应控件 弹出菜单,选择 outlet名称
action连线:点击控件,在其事件列表中选择要处理的,拖拉到file’s owner。

搭建ccl+slime+emacs+windows的lisp开发环境

lisp 在计算机界算是一个古老的语言和思想了,进来通过业内人士的不断努力,lisp越来越受到年轻人的关注了,这是一个很好的趋势。

这里简单说一下,怎么基于clozure cl +slime+emacs 搭建一个lisp 开发环境,这个组合是一个经典的lisp 开发环境组合

Clozure CL,曾用名 OpenMCL,开始是在mac平台实现,后来也移植到了win平台,也叫CCL。它是一款高性能的开源 Common Lisp 实现, 可运行于以下平台:

  • Mac OS X 10.4 and later (PowerPC and x86)
  • Linux (PowerPC and x86)
  • FreeBSD 6.x and later (x86)
  • Solaris (x86)
  • Microsoft Windows XP and later (x86)

到http://ccl.clozure.com/ 获取最新的ccl,建议使用svn 的方式获取,这样就可以及时获得最新版本的ccl

http://common-lisp.net/project/slime/ 获取最新的slime,slime 是一种emacs 和lisp 的交互模块,相当于连接lisp实现和emacs编辑器的中间层;slime是采用csv 版本控制器来进行版本控制的,经常用svn 的同学可能就要去下载一个cvs 客户端来获取slime 了

然后下载一个gun版本的emacs for windows 版本。

这三者我都是放在D盘 的根目录下的。存放的目录都是可以自己指定的。

运行Emacs\bin\runemacs.exe 就可以打开emacs 了,为了以后方便,建议建立一个快捷方式到客户端。emacs 默认的home 目录是在C:\Documents and Settings\Administrator\AppData\Roaming (win7),想要确定自己电脑上的emacs 的home  目录在哪里,只需要在emacs 的开始界面里面点击Open Home Directory 就会打开emacs 默认的home 目录。home目录里面保存emacs 的相关配置信息,主要的是.emacs.d 文件夹和.emacs 配置文件,emacs 默认是不会创建这两者的,具体的方式可以可以点击emacs 工具栏的Options->Save options,emacs  就会在home 目录创建.emacs.d文件夹了,.emacs 配置文件要手动创建,在windows 下是不能创建文件的时候使用.emacs 这种文件名的,具体的可以创建一个emacs.txt 的文件,然后再cmd 命令行下,到home 路径下,使用rename  .emacs  emacs.txt   重新命名就可以了。

现在用文本编辑器打开.emacs 文件开始写配置(在配置文件中分号是注释号):

;;———————————-

(setq inferior-lisp-program "D:/ccl/wx86cl.exe") ; 这里放你的ccl目录中的wx86cl.exe 的路径
(add-to-list 'load-path "D:/slime/")  ; 这里放slime 的路径
(require 'slime)
(slime-setup '(slime-fancy))
;;-----------------
保存退出。
我们重启emacs 输入命令m-x slime  就启动了emacs 的lisp mode,m相当于win下的alt键 。
具体怎么在emacs 下进行lisp 的编程活动活动就不说了。
还有怎么样变更.emacs 的配置文件的路径,大家可以在网上搜索一下,这里不做介绍。

ccl  和slime 的下载大家也可以不用版本控制工具获取,也可以直接下载一个包,解压就可以。

有什么问题大家可以留言。