Filed under: 电影电视
《海盗2》的故事框架实在老套得很,剪掉花哨的枝节,剩下来的就是光秃秃的故事主干:杰克船长和魔鬼的契约要到期,躲之不及,一劳永逸的办法就是找到魔鬼的心脏,同时一个官方的野心家也想通过获得魔鬼的心脏来控制海洋,便要挟第一集中那对良民鸳鸯去找杰克船长,最后渔翁得利,被第一集的倒霉司令捡了个便宜,杰克船长葬身章鱼腹,等待第三集被复活。
故事主线实在简单得很,但是该片票房上大赚特赚,因为细节处理得不错,如同成龙早期的诙谐风格,一些精彩片断让人回味。我觉得《海盗2》中最精彩的部分就是逃出野蛮人部落和水磨坊轮大战两部分,相比之下,花了更多钱做特效的巨大章鱼,在《Deep Rise》(翻译成《极度深寒》,不知道为什么)中就见过了,毫无创意,让人昏昏欲睡。
Filed under: 技术体会
Filed under: Uncategorized
Filed under: 工作心情
现在发现,任何东西我只要写进Blog,很快就会忘得干干净净。今天碰上宏的变长参数问题,问候哥,侯哥回头在网上一搜,搜出我之前写的Blog了,我居然一点都不记得,真是Orz!老了老了!
我是不是该少写Blog了
Filed under: 技术体会
int myAge = 27;
Console.WriteLine("my age = {0}", myAge++);
被Perl惯了之后,用C#就觉得不算爽,
$my_age = 27;
print "my age = $my_agen" and $my_age ++;
被Ruby惯了之后,用Perl就觉得不爽
my_age = 27
puts "my age = #{my_age++}"
现在回过头来写C++
int my_age = 27
printf "my age = %dn", my_age++
编译错误,忘了分号,我改
int my_age = 27;
printf "my age = %dn", my_age++;
变异还是错误,忘了括号
int my_age = 27;
printf("my age = %dn", my_age++);
终于搞定了
Filed under: 技术体会
第一关,最后让Java陶醉的是什么?网上普遍认为从颜色看是JRuby。
SQL everywhere让PHP很挠头,Rails用migration,用Ruby语言increment的构建数据库。
Rails强制MVC模型,所以结果规范,即使不是自己写的application,也很容易debug;而PHP则被毛线一样的sql缠住难以脱身,其实要是一开始用好framework的话,也不至于这样。
更换数据库,Rails借助migration和ActiveRecord,几乎就不用做什么事情。最后胖胖PHP和client说了些什么:)
Filed under: 技术体会
#Ruby has a Numeric class, now we want to extend it
class Numeric
def seconds
self
end
def minutes
self * 60
end
def hours
self * 60.minutes
end
def ago(time = ::Time.now)
time - self
end
def later(time = ::Time.now)
time + self
end
end
# Now, we can use Numeric new methods
puts 30.minutes.ago # 30 minutes ago, easy and straight:)
puts 15.seconds.later # 15 seconds later
解释性动态语言具有这种能力不足为怪,但是我只前使用的解释性性语言(如Perl)写OO代码实在是很难受,没怎么用,所以Ruby这点上给我映像最深刻。与之相对,编译性的语言中,class往往是close的,也就是class是什么样子,编译时就确定好了,要扩展的话,只好再定义一个subclass来继承原来的class。话不能说死,python的执行实际上也有编译这个操作,Java、C#甚至C++这样的语言要是非点力气也可以修改class的行为,但是既然比较费劲,就先不作考虑了。
open class这个特性看似是一个陷阱,只是geek programmer耍酷的工具而已,试想一个string的行为都可以动态的被修改,那映像面会有多大,成何提统!其实只要有良好的代码结构管理,不要滥用,就可以把影响控制住,定义DSL(Domain Specific Languange),open class带来的好处远大于坏处。我看用Ruby写的一些framework,不只是酷,而且很简洁实用,我相信open class是OO语言的趋势。
从另外一个角度看对open class的需要,C#不是动态语言,但是C#的一些语法特性,却显得恨不得改成动态语言而后快(我个人观点:)。
C# 2.0支持partial class,一个类可以不一次定义完,这样就可以把一个类的不同部分放在不同的源文件中,MicroSoft不是平白无故的增加这个feature,有了partial class的支持,就可以让programmer的class代码放在一个源文件中,IDE自动生成的同一class的代码放在另一个源文件中,相互影响降到最少,这和Ruby的open class很象,不过C#好歹是编译执行的语言,所以是通过code generaton然后编译来扩展class,Ruby是通过metaprogramming动态的扩展类。
如果觉得Partial Class只是有那么点意思的话,那么看看C#3.0的extension method功能。C#3.0语法增加的一些看似Stupid的feature,全是源自LINQ的需要。LINQ想要提供这样的语法:
from {some_source} select {something} where {some condition}
需要有
IEnumerable::Where({some condition})
IEnumerable本来没有Where这个函数,如果把Where加在IEnumerable的实现中,实在是太笨拙了,所以用上extension method,上面的语法调用的气势不是IEnumerable的一个成员函数Where,而是在LINQ库里面的一个static 函数,第一个参数是"this IEnumerable"。表象上,extension method提供了动态语言一样的语言特性,不过,最后还是编译之后执行。
Filed under: 工作心情
Kathy起头: 一伙人去爬山,迷路了,黑夜降临,他们沿着山路走的时候,前面传来了狼叫声……
Morgan,也就是我: (做了developer很久,没有Spec,还真不知道怎么创造东西) ……这伙人对于该如何下一步产生分歧,一伙人决定往回走躲避狼,一伙人决定冒险继续前进,剩下的人决定就地宿营……
Neil: (没仔细听我讲的,忽略了人已经分成三拨的情节)……这伙人继续往前走,这时候,远处出现了一团火光,他们决定去看看,到了之后,才发现原来是鬼火,那里是一个巨大的墓地……
侯哥: ……原来是墓地,他们走近一看,发现鬼火不见了,四周出现了一圈发着绿光的物体……
Victor: ……原来那些绿光是小倩打着灯笼……
Frank: (开始了天马行空的想象)…….小倩说,你们都累了吧,我家主人让你们去家里休息,那伙人说,我们还有伙伴在森林里呢(好歹接上了我说的情节),小倩说,不用担心,我们别的姐妹去接他们了,于是这伙人就跟着小倩到了一幢大院里,雕梁画栋(似乎是《倩女幽魂》的情节哦),他们在大堂歇息,听到后面sisi的响,走到后面一看,一个爱因斯坦一样的老头在做试验,sisi的声音从一个容器里面的两个小球球发出来的,那伙人问,您老在干什么,那个爱因斯坦说,我在做物质和反物质的试验,一人指了一下那两个小球问,就是这两个东西吗,爱因斯坦想阻止,但是来不及了,物质和反物质相撞发生了爆炸,宇宙毁灭了!……
(Frank把这个故事逼到绝路上了,难道要后面的Alon从宇宙再次大爆炸起源开始讲吗?)
Alon: ……宇宙毁灭了,他们从梦中惊醒,谢天谢地,原来都只是一个梦,他们发现他们还在树林里面……(一伙人做了同一个梦?到现在为止,一伙人和一个人没有什么区别)
(这时候说了一圈了,接力棒又回到Kathy手里)
Kathy: ……他们继续走,走啊走,走啊走,看到了一个山洞,他们就进山洞去(这伙人真是不怕死,哪里阴森去哪里),沿着洞走了半天,似乎没有头,他们觉得蹊跷,就让一个人拿着绳子往前走(防止迷路),结果那人居然走回来了,可是他却说一路上没有转弯的感觉,他们决定往回走,但是出洞的时候,发现实际上是从另外一个洞口里出来了……
Morgan: ……(这时候单个人物个性应该出现了吧)这时候一个女孩突然喊,我的姐妹不见了,我要回去找她,一个自称户外运动专家的人不让,说这样太危险,但是那个女孩还是坚持要往回走,朝着洞里面喊,居然有掉队女孩的动静,这时候发生了地震,等他们进洞找到那个失踪女孩的时候,发现她被掉下来的大石头压住了,还有一口气,但是死定了,女孩哭哭啼啼,还是被众人劝走了,她走的时候回头一看,看见户外运动专家正在用石头砸死自己的姐妹,大怒,但是户外运动专家说反正她活不成,不如给她一个痛快减轻其痛苦(这个情节趋于黑色了)。一行人继续往前走,看到一个小木屋,里面有一些生活设施,还有火柴,他们就点火放烟等待救援,晚上,轮流一个人放哨,其他人睡觉,但是在换哨的时候,发现有人被石头砸死了,让他们很惊恐,接着,下一次换哨的时候又发现有人被砸死了(这时候观众觉得有必要限制一下人数了,故事中假定现在还剩下7个人),还好他们有人带了DV,于是架起DV拍摄他们自己,但是下次换岗的时候又死了人,看DV拍摄的结果,发现拍摄的东西都被洗掉了………
Neil: ……大伙觉得这种事情,只有户外运动专家才干的出来,他就是为了怕被人争夺他的生存资源而下毒手,于是大伙以其人之道还治其人之身,把他也砸死了,就在大家准备埋了他们的时候,却发现死人身上都有殒命于山洞里的女孩的东西,他们很惶恐,决定回山洞去看个究竟,回到山洞,发现那个女孩的尸体消失了,似乎什么都没有发生过,这时候,山洞深处一声巨响……
侯哥: …….这伙人朝着巨响的方向走去(真是不怕死),发现原来这个山洞是一个巨大的环形,在环形的中央,他们看到下面有一个更大的坑,很多人在忙碌着围着机器工作,这时候,一群穿着迷彩服的人出现,把他们都生擒了…….
Victor: …….这伙人被生擒,带到囚室里面,原来这个山洞经常发生灵异现象,所以军方决定建一个基地来研究,结果被这伙外来人发现了,第二天,他们醒来,发现自己还在环形山洞里,不过基地不见了,他们都穿着带编号的统一服装…….
Frank: …….山洞里太黑,一个人说,要有光,于是有了光(上帝呀!),众人大惊,此人只好承认,原来他是一个外星人,拥有超能力。众人大悦,汝既有超能力,定能救我等哉,此人叹曰,吾本有超能力,然昨日为军方消磁,故仅有三愿望可实现,已用一愿矣(那我最后一个愿望,就是再给我三个愿望),且愿不可套愿。众人齐口云,用一愿送我等回城,足矣!故回城,一道白光,回到五道口。奇怪的是,大白天,五道口街上一个人影都没有(生化危机?),这时候,一个人跳出来,打板,说,今天拍摄任务就到这里了……
Alon: ……原来这一切都是一场戏而已(为什么每次到了Alon都是这样的万能续接法),编剧说,这一切都是真人秀,你们受惊了,每人一张南太平洋小岛的旅游卷(单程的吧),于是,他们就去了南太平洋上的小岛……
编到这份上没法再编了,再编就是<Lost>了:)
虽然参与这样的活动有意思,但是又几点以后要注意了
1) 一开始就应该确定单个人物的形象,总是一群人一个模样,不利于情节的曲折化;
2)场景不能更改太频繁,似乎每个接的时候都要改变一下场景,这个故事的连续性很受影响;
3)一个人一次不能说的太少;