`
文章列表

VIM 插件安装

    博客分类:
  • IDE
一篇入门级插件介绍文 http://www.kuqin.com/developtool/20090529/53714.html   Taglist : outline 类似功能 安装方法 http://aug6th.com/blog/?p=12 延伸阅读 http://hivelogic.com/articles/using_usr_local     macport 升级 macvim http://13462118.blog.hexun.com/44053587_d.html        

MacVIM 整理

    博客分类:
  • IDE
配置文件:     在 ~/ 下新建 .vimrc 文件 插件安装:     在 ~/ 下新建 .vim/ 快捷键: 光标回到前一个位置          cmd + o 广标徽倒下一个位置          cmd + i
Redo                cmd + Z 格式化粘贴          alt + cmd + V 重构                cmd + J 回到选取位置        cmd + j 切换到Project界面   cmd + 0 切换到Debug界面     cmd + R 清空控制台          cmd + ctrl + alt + r 运行                cmd + r

FDT 快捷键整理

    博客分类:
  • IDE
注释                ctrl + 7 快速trace           ctrl + 0 代码提示            ctrl + / 技巧 新建类直接使用代码提示可以生成默认构造方法 成员变量或者方法可以直接输入名称,然后代码提示生成
查找            cmd + f 替换            cmd + r    或者    ctrl + h 重命名          ctrl + r 快速打开类      cmd + o 快速打开文件    ctrl + O 打开工程        cmd + O 关闭类          cmd + w ...
中性; 布尔值的定义 BOOL yes or no。 SEL 是方法指针 SEL sel = @selector(start:); NSObject 管理内存回收 ivar 存在于 heap 中(貌似与C++相同) selector 是一个术语,在实例收到消息时根据 selector 找到相应的代码执行。(通常就是指方法) objc 通过消息调用方法,消息是一个字符串。 方法名和变量名共同组成 Message ,如果变量顺序不同,则变成另一个方法 id 跟 NSObject 类似,不过当调用 id 的方法时编译器不会报错,所以在多态的使用上应该优先使用 id。 编译 ...
我们在这里解释一下它们的细节:   id   id和void *并非完全一样。在上面的代码中,id是指向struct objc_object的一个指针,这个意思基本上是说,id是一个指向任何一个继承了Object(或者NSObject)类的对象。需要注意的是id 是一个指针,所以你在使用id的时候不需要加星号。比如id foo=nil定义了一个nil指针,这个指针指向NSObject的一个任意子类。而id *foo=nil则定义了一个指针,这个指针指向另一个指针,被指向的这个指针指向NSObject的一个子类。   nil   nil和C语言的N ...
对象分析: 记帐本  记帐本条目  条目类型 日报告  周报告  月报告  季度报告  年报告   其中条目类型:典型树形结构  包括income、expense 等基础类型,数据库角度讲可以将基本条目保留,只针对用户保留自定义内容 时间段报告:从数据库和OO的角度来讲都可以抽象成统一个类(表)     PS:未来应该包含的特点如下: 邮箱无密码登陆、邮箱间条目移动、邮箱加为子帐户(互相之间可以移动条目)
使用“堆栈”纪录操作数据的“深度克隆”。出栈时触发渲染事件,交由外部渲染。 如果有 Redo 的话将出栈数据压入 redo栈。 Redo 操作时同上,但相反。
将所涉及范围内的独立个体抽象成具有某些行为的类。如果行为过多,可以拆分出新的类。 当遇到很多麻烦的、需要 “Manager” 的时候该怎么办?(待补充)   当需要做某件事情的时候,传出事件,交给监听者去做。不需要依赖与具体实现的类。 (上级需要管理监听)   将数据与逻辑分离,实现可配置的程序。  
数据绑定是将数据与界面控件或者空间的属性绑定,达到改变数据自动显示效果的目的。声明时使用 [Bindable] 标签,简单基础数据直接写一个在声明前加上标签即可。同时也可以绑定复杂数据结构(如Object)中的属性。此时成员变量 Object 需要绑定标签,所引用的属性应该提供 get 和 set 方法,并将 set 方法声明为 [Bindable] 。(此处不清楚为什么要绑定 set,按理说应该绑定 get 才是)   绑定只能改变控件属性,不能反向改变数据。如果需要改变的话可以在控件事件中改变。如 click="obj.attribute=true"。
地图编辑器中最重要的性能问题出现在编辑区域显示上。编辑的地图可能超过 AS3 BitmapData 支持的30000X30000,并且需要支持多层、选取、复制、粘贴等功能。所以在显示上肯定需要采取某种手段节约性能。   先介绍一下地图的基本信息:地图是由许多个 Tile 组成的,地图编辑器就是将资源的 Tile 粘贴到地图中,并由编辑器将相应资源显示在相应位置。   以下是我惨痛的试错经历:   采用最原始的方式,每个单元格一个 Sprite。 Sprite 的数目与map 数目相同。 Sprite 内部分成多层,包括画边框、显示选取区域、显示单元格类型等,使用Shape实现。 ...
urllib2 是针对文本的 urllib 是针对二进制文件的 下载文件最简单的写法urllib.urlretrieve(url, filePath + fileName) 如果需要访问非英文页面文字,自行 decode html.decode('euc-jp').encode('utf-8') 使用 BeautifulSoup 处理 html 非常方便,但是在 Jython 下速度超级慢! 可以直接使用正则在 BeautifulSoup 中查找需要的标签 links = soup.findAll('a', href=re.compile('^.+?$') try ex ...
MouseEvent 的使用中要小心 MouseMove。因为尽量使用 MouseOver 代替,以保证性能。 大量 DisplayObject 会导致性能严重下降,暂时采用我称为 Flow 的方式解决。先是对象重用,流转加载。 尽量使用单一功能的小类,方便重用和修改。 要加强事件驱动的思想和设计能力 可以考虑使用现有的 Flow 作为缓冲,使用单一 BitmapData 作为显示对象进一步提升性能。 单元测试要先与代码编写      
可以利用 AS3 的命名空間防止別人重寫方法。在內部調用時使用自己命名空間內的方法即可。 可以利用命名空間實現方法重載 如果傳遞不定參數,可以參照 Tweenlight 的方式,傳遞一個 Object。(TweenLight) 繁複的設定可以通過將 container 傳入子中進行設定(PushButton) 異步操作,善用 callback
Global site tag (gtag.js) - Google Analytics