聽說 LINE 前陣子突破三千萬用戶,這幾天推出的新版本還加入了表情圖示商店,可以讓你自掏腰包花錢買新的用。一開始抱著存疑的態度看看,不看還好,看了就覺得這屌爆了。他們這樣可能沒多久就又多了三千萬用戶吧…
(Source: line.naver.jp)
東海旅客鉄道株式会社
東海道新幹線をご利用の際、出発・到着の各駅と予定時刻を入力するだけで、沿線の風景や名物が次々に現れるアニメーションを楽しめるほか、自分の現在位置のおおよその目安にもなります。
If you’re an iOS developer, and love the sitcom The Big Bang Theory, then you have to watch season 4 episode 12: The Bus Pants Utilization (original air date is January 6, 2011.)
In this episode, Leonard comes up with an idea for his iOS app and derails his friendship with Sheldon.
It’s a handwriting-recognition based equation solver, or in Sheldon’s way: “The Surprisingly Helpful Equation-Linked Differential Optimized Numerator.” The idea behind this is to use iPhone’s camera to take a picture of the equation, and scan it with handwriting recognition, then run it through a symbolic evaluation engine, and bam.
During the episode, they show several actual Objective-C code snippets and interesting design sketches on white boards, here are some of them:
They have a CRecognition object holds an UIImage instance variable, and sadly they name it _Photo (with underline as prefix), it’s not the naming convention Apple suggested.
The next morning, Sheldon starts his own design, if you look closer, it’s much more considered than Leonard’s.
For example, since this is an utility app, Sheldon comes up with a flip view design that similar to built-in Camera/Stocks app. A full screen SPhotoView with a snapshot button in the middle, and on the other side, it’s SEquationView and a UITableView at the bottom with some buttons.
In here, you can see more details. A UITableView holds the scanned equations, and supports rotation for landscape full screen detail view and portrait detail view. On the right side, Sheldon shows better understanding about UIViewController’s view hierarchy design concept.
Later, Leonard’s team is doing some reference counting. Instead of accessing instance variable directly in -initWithPhoto: and -dealloc, they decide to use retain property self.photo, with class method to return a autoreleased CRecognition object, and claim there’s no leaks.
What a mess, you should always use instance variable directly in -initWithPhoto: and -dealloc when creating/releasing instance object.
Here you see Leonard’s app class hierarchy, mostly MFC-ish (thanks, @lukhnos.) style naming convention for the class names, almost everything starts with letter “C” (is for “Class” I think), CAppDelegate, CMainView, CCameraView, CSymbolicView, etc. They should use prescribed prefix like “LRH,” which means Leonard, Rajesh and Howard.
The beautiful Penny is next to Sheldon, and there’s Facebook API on the white board.
In the end, Penny’s shoes app project. There’re many of them on the AppStore already, and the UI design for this one looks kinda lame.
And Sheldon is working on this project… (for customer from hell?)
I love and enjoy this episode a lot, and the TBBT crew does a great job for all these minor details, they look very convincing to me.
But, they should use Mac when doing the coding, I only saw Raj’s MacBook Pro, and rest of them are using PCs. That’s not right, you can’t run Xcode on PC, well, unless they all use Hackintoshes…
Also, If you want to hire someone for your iOS app project, I highly recommend Sheldon Cooper.
With emoji keyboard enabler.
Yeah, right.
To make them a fancy and lovely manual for your App will be a wonderful idea.
Apple had posted developer resources for iTunes LP/Extras recently, including templates, best practices, development guide, asset delivery, testing and TuneKit. (That’s a lot.)
You might be wondering, why bother doing this? Since it’s all about your App, you can save your time creating website for your App, instead, doing it in iTune LP/Extras. This limits the climate/atmosphere to device-desktop like iPhone-iTunes only, and makes stronger connection in between. So users can buy your App in AppStore, play around the manual in iTunes, and use the App on iPhone.
So there’s one thing remain. Oh, wait, maybe two. First, how to deliver iTunes LP/Extra file to your user within your iPhone App? The easiest way to solve this might be providing an external link for user to download from desktop by using Safari browser, then open the file with iTunes. But, how many people will want and able to do this when sawing the notice in your App on their iPhone on the street?
Second, Apple also said it required an existing iTunes contract and some reviews from iTunes team for “appropriateness of content and technical quality.” Does that means we’re not allow to distribute our own iTunes LP/Extras outside iTunes Store? The answer it unknown (for now).
The best way I thought so far was:
So that users can open it when accessing App Store on iTunes.

After one week of coding and one week of waiting, the iPhone App: Black Cat Clock is available on iTunes Store now.
It’s a simple clock app with my roommate, Lulu. Lulu was born in Sep. 2008, currently 8 months old, mixed, black cat. i love him so much that I decided to create an iPhone App for him, in honor of his handsome, vigorous and good manners.

The clock comes with three little features:
And thanks for Brad and Hu’s helps from Tokyo, this app comes with four different languages, including English, Japanese (日本語), Trad. Chinese (正體中文) and Simp. Chinese (简体中文). Hope it could satisfy all the cat lovers from these regions.
Last, it costs 99 cents, and your kindly supports can provide Lulu with better cat foods!
loading…