2件我想告诉孩子的事

标签:无

今晚接到我表姐的电话,提到了我表弟近来的遭遇,让我心情久久难以平复。
弟弟很可怜,他妈妈在生下他后没多久就离婚了,然后把他交给了我姑姑抚养。姑姑没什么文化,只能在生活上照顾他,而学习上就完全不行,以至于没有学校愿意接纳他了。然而更让我担心的是他的哥们义气,他总把自己的零花钱和朋友们一起“分享”,而那些所谓的朋友却都不是什么品行端正的人。
最近由于我姐生了孩子,一家人围着这个小生命转,没空管我弟弟,就尽量满足他金钱上的需求。因为一家人都在用iPhone,他也吵着要,便给他买了台。结果没多久,他和朋友一起玩时,被人(估计是他朋友中的混混)拿钢管打了一顿,手机也被抢走了。
于是现在就被关在家里不让出门,怕他出去又惹事。

在JSP页面调用USER COMMAND

标签:SAP, Java

在开发ISR form时,经常会遇到前后台交互的问题。而我现在遇到的一个需求:当用户输入完一个InputField后,就立刻刷下后台来检查或修正一些字段。看上去很简单的玩意,但在ISR框架下却折腾了我许久。

海猫EP8中的三门问题

标签:GalGame, ACG

昨天把海猫鸣泣之时EP8给通关了,其中最困扰我的是一个概率题:
朱志香和让治准备了红、蓝、绿这3个箱子,其中一个箱子里装了金币,另2个没有。缘寿选择了红箱子,然后朱志香打开了绿箱子,展示里面没有金币。那么现在缘寿是否应该选择蓝箱子呢?

如何成为优秀的程序员

标签:无

最近遇到的一些人和事,让我不禁思考起一个问题来:究竟是什么阻止了人们成为优秀的程序员?

一夜

标签:无

屋外淅淅沥沥的雨声随着清晨微弱的阳光,一起穿透了并不厚重的窗帘,提醒着我新一天的来临。
我昏昏沉沉地躺在床上,这已是我连续第3个不眠之夜了。只是前两晚我是因为精神太好,而在电脑前不知疲倦;但今夜却是在广播剧《让青春继续》中,不经意地失眠了。

获取父窗口中包含自身的iframe

标签:JavaScript

今天在开发时遇到个问题:页面A包含几个标签,在切换标签时,高度会变化。页面B用iframe引用了页面A,并且在A载入完成时,把iframe的高度设为了页面A的高度(调用一个自定义的adjustHeight()函数)。可是在切换标签时,iframe的高度并不会变化,就出现滚动条了。
这个问题的难点在于页面B是框架自动生成的,我没法更改,只能在页面A里修复这个问题。

为UIWebView实现离线浏览

标签:Objective-C, iOS开发

智能手机的流行让移动运营商们大赚了一笔,然而消费者们却不得不面对可怕的数据流量账单。因为在线看部电影可能要上千块通讯费,比起电影院什么的简直太坑爹了。
所以为了减少流量开销,离线浏览也就成了很关键的功能,而UIWebView这个让人又爱又恨的玩意弱爆了,居然只在Mac OS X上提供webView:resource:willSendRequest:redirectResponse:fromDataSource:这个方法,于是只好自己动手实现了。

原理就是SDK里绝大部分的网络请求都会访问[NSURLCache sharedURLCache]这个对象,它的cachedResponseForRequest:方法会返回一个NSCachedURLResponse对象。如果这个NSCachedURLResponse对象不为nil,且没有过期,那么就使用这个缓存的响应,否则就发起一个不访问缓存的请求。
要注意的是NSCachedURLResponse对象不能被提前释放,除非UIWebView去调用NSURLCache的removeCachedResponseForRequest:方法,原因貌似是UIWebView并不retain这个响应。而这个问题又很头疼,因为UIWebView有内存泄露的嫌疑,即使它被释放了,也很可能不去调用上述方法,于是内存就一直占用着了。

顺便说下NSURLRequest对象,它有个cachePolicy属性,只要其值为NSURLRequestReloadIgnoringLocalCacheData的话,就不会访问缓存。可喜的是这种情况貌似只有在缓存里没取到,或是强制刷新时才可能出现。
实际上NSURLCache本身就有磁盘缓存功能,然而在iOS上,NSCachedURLResponse却被限制为不能缓存到磁盘(NSURLCacheStorageAllowed被视为NSURLCacheStorageAllowedInMemoryOnly)。
不过既然知道了原理,那么只要自己实现一个NSURLCache的子类,然后改写cachedResponseForRequest:方法,让它从硬盘读取缓存即可。

用CommonCrypto计算MD5和SHA

标签:Objective-C

编程时经常需要和MD5、SHA等hash算法打交道,搜了一下后我发现iOS SDK中自带了CommonCrypto,于是就无需自己实现或用第三方库了。

获取iOS设备的内存状况

标签:iOS开发

由于iPhone这类移动设备内存有限,而又不能使用交换区,为了不至于导致内存不足而引起运行效率降低或应用崩溃,有时候需要获取当前的内存状况,以决定采用的缓存策略。
不过iOS SDK文档里并没有提及这种底层的API,于是我搜了一番,找到了host_statistics()这个函数。

« 看看还有什么好玩意