Ruby 单行注释用 #,没有 /* */ 这样的多行注释方式,但是可以用文档注释方式来进行多行注释:
=begin 注释描述
中间的都是注释内容
=end
文档注释,像 Java 的 Javadoc, .net 的 ndoc,Ruby 也有 rdoc,Ruby 的 文档注释是也是在 method,class 和 module 定义之前进行注释的,注释的内容给 rdoc 生成 HTML 帮助文档,也给 ri 用的。也有一套语法,用 # = Headings 这样的语法,还支持些 HTML 代码。
Ruby 看到全大写的标识符,如 PI,还有像 LikeThis 或 LIKE_THIS 这样的标识符就认为是常量,对它们重新赋值就会告警:
warning: already initialized constant LikeThis
命名成 like_this 就是变量,这也是 Ruby 的约定优于配置,常量就是大写命名。 Read More- 有时候我们看到一个App,想看看他的一些界面是如何实现的,这个时候需要查看一下它的图片资源,不过iOS的png图片编译后一般的图片阅读器都是没法查看的,本文将告诉的原因和转换出原图的方法(得安装XCode)。
ipa 解压,将png相关文件夹拷贝出来,在命令行下使用/Developer/Platforms/iPhoneOS.platform/Developer /usr/bin/pngcrush -revert-iphone-optimizations xxx.png yyy.png
我们都知道一个编译好的iPhone app 其中的png图片一般普通的图片阅读器是无法直接读取的,这是因为XCode在编译的过程中,将图片进行了优化,实际上它已经不是一个png图片了。
这边有一些apple iPhone png自己格式的一些说明
http://iphonedevwiki.net/index.php/CgBI_file_format Read More
Ruby 解释器给我们提供了四个常用的命令行工具,ruby、irb、ri 和 gem。动态脚本语言的解释器类似工具的使用方法基本一致的,逐个来看下它们的用法:
1. ruby:脚本解释器,直接执行脚本或脚本文件
% ruby -e 'puts "hello world!"'
% ruby hello.rb
ruby 显示输出可以用三种方法:print、puts 和 p,print 和 puts 都会把操作对象的 to_s 返回值输出,只是 puts 会在输出内容没有换行时加上一个换行,有则和 print 是一样的。例如 puts "Hello World!" 就是 print "Hello World!\n",puts "Hello World!\n" 也是 print "Hello World!\n"。p 会调用对象的 inspect 方法进行输出,最后加不加换行与 puts 的规则是一样的。
2. irb:(Interactive RuBy) 是个 Ruby 的交互命令行,可用来测试一些 Ruby 的特性,不过有 TextMate 那样的工具基本不会去用它。你还能在 irb 的 shell 下再次输入 irb 启动一个子 shell。 Read More
Ruby 中有许多以 ? 和 !号结尾的方法,? 号方法返回布尔值用于判断的,如Array.empty?,可以想到三元操作符 a = b==1?1:2 。出现在方法名尾部的感叹号表明使用该方法是需要多加小心。许多Ruby的核心类都定义了成对的方法,它们具有同样的名称,只是结尾相差一个“!”,通常情况下,不带感叹号的方法返调用该方法的一个拷贝,带感叹号的方法则是一个可变方法,该方法会修改原来的对象,如 Array 类中的 sort 和 sort!。
Ruby 里对变量名有这么一个约定:全局变量加前缀 $,实例变量用前缀 @,类变量前缀用 @@。
Ruby 的类和模块,来实现一个 Ruby 的示例类,从中了解类的构造方法,块的实现、块内循环和调用以及符号的重载,看如下代码: Read More
还是零碎的记录,也不知道该为每一篇赋上什么合适的标题,姑且用一、二、三、四 ...... 往下标吧。
一种编程语 言,Coding 时一定要讲求效率的,我向来不认为用记事本来写程序就可被认为是多么的高明。就像测试 Java 程序我仍然是选用 Eclipse,当然命令行技术是要求掌握的。写 Ruby 程序可以用 NetBeans 那样带智能提示的工具,但是 Mac OS 下,TextMate 的口碑很不多的,它有很好用的 Bundle,Cmd+R 就能看到运行结果,查帮助也很方便。
从代码的智能提示来看,TextMate 或许只能称之为半智能,但它的效率还是非常的高,且基于其余时候打开 TextMate 的频度,我选择 TextMate 作为 Ruby 的 IDE。
Ruby 的表达式和操作符,Ruby 的语法是面向表达式的,如在其他语言中的控制结构在 Ruby 中统统叫做表达式,只是它们的返回值为 nil。来看几个较有特色的 Ruby 运算符: Read More
因工作需要,需用到 Ruby 来写 BDD(Behaviour Driven Development) 的脚本,这样的话还是希望自己对 Ruby 有一定程度的了解,不能总是依葫芦画瓢吧。
Ruby 是由松本行弘(Yukihiro Matsumoto, 简称:Matz) 发明的,确实应该佩服一下,不存在什么民族情节的,比起所谓的汉语编程要强上千百遍,再说,通常民族情节都为政治所利用的。蒙牛、百度,腾讯等等 ,民族品牌,狗屁,都是某些个岛国注册的。
Ruby is designed to make programmers happy. Ruby 吸收了 List、Smalltalk 和 Perl 的灵感,采用了类似于 C 和 Java 的语法。
Ruby 是完全面向对象的编程语言(completely object-oriented language),不像 Java 和 C 存在基本(原始)类型,在 Ruby 的世界里,什么都是对象,像数字,true、false 或 nil 都是对象,它们有自己的属性和方法,你可以对它们点一下点出东西来。如: Read More- iphone/ipad无键盘的设计是为屏幕争取更多的显示空间,大屏幕在观看图片、文字、视频等方面为用户带来了更好的用户体验。而触摸屏幕是iOS设备接受用户输入的主要方式,包括单击、双击、拨动以及多点触摸等,这些操作都会产生触摸事件。
在Cocoa中,代表触摸对象的类是UITouch。当用户触摸屏幕后,就会产生相应的事件,所有相关的UITouch对象都被包装在事件中,被程序交由特定的对象来处理。UITouch对象直接包括触摸的详细信息。
UITouch类中包含5个属性:
window:触摸产生时所处的窗口。由于窗口可能发生变化,当前所在的窗口不一定是最开始的窗口。
view:触摸产生时所处的视图。由于视图可能发生变化,当前视图也不一定时最初的视图。
tapCount:轻击(Tap)操作和鼠标的单击操作类似,tapCount表示短时间内轻击屏幕的次数。因此可以根据tapCount判断单击、双击或更多的轻击。 Read More - CocoaChina 会员“”分享的几个 CGRect 函数例子,希望对您的苹果开发有所帮助
1.CGRectOffset使用从源CGRect偏移的原点来创建矩形
float offset = 25.0;
CGRect r1 = CGRectMake(100, 100, 100, 100);
CGRect r2 = CGRectOffset(r1, offset, offset);
2.CGRectIntersectsRect允许我们确定两个矩形是否相交
float offset = 25.0;
CGRect r1 = CGRectMake(100, 100, 100, 100);
CGRect r2 = CGRectMake(150, 150, 100, 100);
if (CGRectIntersectsRect(r1, r2)) Read More
frame和bounds是UIView中的两个属性(property)。
frame指的是:该view在父view坐标系统中的位置和大小。(参照点是父亲的坐标系统)
bounds指的是:该view在本身坐标系统中 的位置和大小。(参照点是本身坐标系统)1-(CGRect)frame{ 2 return CGRectMake(self.frame.origin.x,self.frame.origin.y,self.frame.size.width,self.frame.size.height); 3}1-(CGRect)bounds{ 2 return CGRectMake(0,0,self.frame.size.width,self.frame.size.height); 3}

- Core Plot 可是 iOS 下绝好的图表组件,虽说它的相关资料不甚丰富,特别是中文的,英文的还是有几篇不错的文章,不过 Core Plot 自身提供的 API 帮助文档,以及代码示例其实很有用的,不妨且在英文的(注意是英文的) Google 中输入 core plot, 即时搜索出的第一页里的链接很有价值的。
对于 Core Plot 中文资料的缺乏相信很快就会有改观的,譬如说不还有不少像敝人那样的工作者正努力着吗!
既然 Core Plot 为我们提供了文档,那我们就该好好利用好它内在的东西。都是在下载的 CorePlot_0.4.zip 解压后的 CorePlot_0.4 目录中的,Source/examples 下有周到的示例代码,Source/framework 中源代码; Documentation 中便是我们可以查阅的 Core Plot 的 API 帮助文档,有两种使用方式,导入到 Xcode 和浏览器阅读。 Read More