Brackets
介紹文:Adobe推出免費好用的網頁編輯器《Brackets》、令人驚艷的 Web 編輯器 - Brackets
功能:即時預覽(暫時只支援Chrome)
官方介紹影片
A Peek At Brackets by Tuts+ Code
Sublime Text
mrkt 的程式學習筆記
Perfect Workflow in Sublime Text: Free Course!
23 Essential Tools For Web Development on a Mac
2014年12月31日 星期三
2014年12月29日 星期一
亞洲的範圍到哪裡?
Hao Chuang:
中國屬於亞洲?或者說亞洲的範圍到哪裡?這實在是一個有趣的事情。
當 asia 這個概念剛剛形成的時候,拉丁人的世界觀是圍繞著地中海的。海北岸稱為 europe,南岸稱為africa,東岸稱為asia,西邊則是大西洋。但其實這些詞都來自於希臘而不是羅馬人發明的。
對拉丁人來說,europe 的範圍就是羅馬帝國的範圍,不在帝國領域內的土地應該叫做「蠻荒」而不是歐洲的一部份。而非洲的邊界是撒哈拉沙漠,沙漠以南?抱歉那不具有意義。
所以說,那時候的asia,頂多包括兩河流域,連亞歷山大(非拉丁人)曾經征服的印度都不見得算是「asia」的一部份,更不用說當時是否知道中國的存在?
歷史上第一次的東西交流,大概是中國漢朝,也就是羅馬帝國成立以後的事情。在那之前,asia的居民也許聽過東方的東方的東方的故事,但直到絲綢之路打通前,東方終究只是個二手的傳說,沒有任何實質的證據(像是絲)。
直到中國漢朝、羅馬帝國這兩個穩固、長久的帝國同時成立之後,東西方的交流才成為一種常態,而不再只是少少少數冒險家口中的傳說世界。(對雙方來說都是這樣。)
原網址:https://www.facebook.com/tzyhao/posts/10203487205605759
中國屬於亞洲?或者說亞洲的範圍到哪裡?這實在是一個有趣的事情。
當 asia 這個概念剛剛形成的時候,拉丁人的世界觀是圍繞著地中海的。海北岸稱為 europe,南岸稱為africa,東岸稱為asia,西邊則是大西洋。但其實這些詞都來自於希臘而不是羅馬人發明的。
對拉丁人來說,europe 的範圍就是羅馬帝國的範圍,不在帝國領域內的土地應該叫做「蠻荒」而不是歐洲的一部份。而非洲的邊界是撒哈拉沙漠,沙漠以南?抱歉那不具有意義。
所以說,那時候的asia,頂多包括兩河流域,連亞歷山大(非拉丁人)曾經征服的印度都不見得算是「asia」的一部份,更不用說當時是否知道中國的存在?
歷史上第一次的東西交流,大概是中國漢朝,也就是羅馬帝國成立以後的事情。在那之前,asia的居民也許聽過東方的東方的東方的故事,但直到絲綢之路打通前,東方終究只是個二手的傳說,沒有任何實質的證據(像是絲)。
直到中國漢朝、羅馬帝國這兩個穩固、長久的帝國同時成立之後,東西方的交流才成為一種常態,而不再只是少少少數冒險家口中的傳說世界。(對雙方來說都是這樣。)
原網址:https://www.facebook.com/tzyhao/posts/10203487205605759
2014年12月27日 星期六
平埔族相關的資料
文章:
留下原住民地名的平埔人漢人部落漸漸消迭的內門平埔族
FAVORLANG,消失在濁水溪口的神祕獵鹿人
【沒有名字的人】系列 粉絲專頁
【沒有名字的人】我媽問我:你是這麼想當原住民喔?
【沒有名字的人】如果有一天,我們拒絕在歷史裡流浪
【沒有名字的人】小時候,阿爸臥房的木門掛了支獵槍喔
【沒有名字的人】04 陳以箴
來看一個漢化的平埔公廨~高雄內門大埔公廨
影片:
20100714獨立特派員第155集{以祖先之名} part 1/220100714獨立特派員第155集{以祖先之名} part 2/2
平埔族第一次大遷徙(共有四部,第一次到第四次)
商業相關的書單
- 給予:華頓商學院最啟發人心的一堂課
- 左派商學院:以人為本,勇於創新求異
- 長尾理論最新增訂版 : 打破80/20法則
- 免費! : 揭開零定價的獲利秘密
- 小眾,其實不小:中間市場陷落,小眾消費崛起
- 沃爾瑪傳奇
2014年12月26日 星期五
正確的英文縮寫
例如:「e.g.」是拉丁文exempli gratia的縮寫,意思是舉例來說、例如、譬如、比如,英文也就是for example或for instance。
等等:「etc.」是etcetera或 et cetera的縮寫,意思是...等等,意思相當於英文的and so on或 and so forth。
e.g. 和 etc. 不能出現在同一句話中,因為 e.g. 是表示泛泛的舉幾個例子,並沒有囊括所有的實例,其中就已經包含“等等”,如果再加一個 etc. 就畫蛇添足了。
換言之:「i.e.」是拉丁文id est的縮寫,意思是換句話說、換言之,用來進一步解釋前面說過的話,英文就是that is、in other words。
例句:
It happened in October, i.e., two months ago. →(O)
(i.e. = in other words)
原文網址: 3個誤用的英文縮寫,不要再用ex.啦! | 鍵盤大檸檬 、『i.e.』『 e.g.』『etc.』的正確用法
等等:「etc.」是etcetera或 et cetera的縮寫,意思是...等等,意思相當於英文的and so on或 and so forth。
e.g. 和 etc. 不能出現在同一句話中,因為 e.g. 是表示泛泛的舉幾個例子,並沒有囊括所有的實例,其中就已經包含“等等”,如果再加一個 etc. 就畫蛇添足了。
換言之:「i.e.」是拉丁文id est的縮寫,意思是換句話說、換言之,用來進一步解釋前面說過的話,英文就是that is、in other words。
例句:
It happened in October, i.e., two months ago. →(O)
(i.e. = in other words)
原文網址: 3個誤用的英文縮寫,不要再用ex.啦! | 鍵盤大檸檬 、『i.e.』『 e.g.』『etc.』的正確用法
2014年12月21日 星期日
Protocol 協定
介紹
在 Objective-C 裡,每一個類別是單繼承的,一個類別只會有一個父類別,而這個父類別也只會有一個父類別,這樣一直往上追朔直到根類別 NSObject,但如果你需要呼叫一個不在這整個繼承鏈裡的方法,protocol 協定就是一個可以幫你解決這個問題的方法(註一)。製作 protocol
解說:
- protocol 本身不會實作,只會宣告 method,實作的部分由使用這個 protocol 的 class 來實作。
- 在Objective-C 2.0 之後,加了 @required 跟 @optional 的語法,你可以設定某些method是optional,也就是這些 method 沒有一定要實作出來。預設是 @required,要注意的是@required跟 @optional 這兩個語法的影響範圍,是從它以下所有的 method 都會被影響,直到另一個 directive 或是 @end 為止。
- 就像 class 可以繼承另一個 class 裏所有的 method 一樣,protocol 也可以繼承自另一個 protocol,大多數的 protocol 都是繼承自 <NSObject> 這個根 protocol(註二),但我們並不需要實作 <NSObject> 裡的 method,因為不管是我們自定或是系統提供的 class 都會繼承自 NSObject 這個 class,自然也就有 <NSObject> 的實作了(註三)。
使用 protocol
方法如下,如果要一次使用多個 protocol 用逗號分開就可以了:定義變數
protocol 也可以當作一種型別來定義變數。這段程式的意思是:delegate 這個變數,它可以是任意資料型態,但一定要遵循 protocolName 這個 protocol,也就是說,delegate 的實體必需要實作 protocolName 裡@required所有的 method。
這種用 @protocol 來定義方法的稱做 formal protocol,從名字看大概猜得出來一定也有叫做 informal protocol 的東西,不過這個會在介紹 category 的時候再做說明。
註一:另一種對於 protocol 使用的說法:對於繼承自不同父 class 的 class 來說,如果需要有共同的方法名稱,就需要使用 Protocol。我還沒完全搞清楚@@
註二:每次要建立新的 protocol 時,Xcode都會自訂幫我們繼承 <NSObject>,但我發現這個可有可無,我把 <NSObject> 刪掉也沒有出現編譯錯誤,我現在還不知道什麼時候要繼承 <NSObject> 什麼時候不用。
註三:這句其實我沒有完全看懂,因為我沒有看到哪裡有繼承 NSObject class 我也不懂為什麼他說繼承了 NSObject class,
資料整理自:
Objective-C: Protocols
http://shenfive.pixnet.net/blog/post/49325290-protocol-語法
Protocol 協定的使用方式 Furnace iOS 程式設計中文學習網站
http://iosdevelopersnote.blogspot.tw/2010/11/protocol-delegate.html
蘋果官方文件:Programming with Objective-C:Working with Protocols
2014年12月13日 星期六
NSDate 相關的 method
下面這些是關於NSDate所有的整理自蘋果官方的文件,推薦看網頁版,網頁版的現在設計得互動性非常高,一開始會把每個method列出來,如果想要細看哪個method的話,再點下去所有的細節就會通通展開來,包括:
1定義(Declaration)
2參數(Parameters)
3回傳值(Return Value)
4Import Statement
5可使用版本(Availability)
6探討(Discussion)
7相關(See Also)
另外也可以選擇要顯示的語言,Objective-C還是Switf或是兩個都顯示。
關於NSDate背後的架構(是這樣說嗎!?找不到一個適當的詞@@)可以去看官方文件,因為我自己也還沒有完全看懂,所以就不在這裡做翻譯了Orz
大部份的method都可以望文生義,如果有不懂得再去看官方文件就可以了,我這裡只是整理了所有的mehtod,讓我們可以看得更一目了然。前半段是我目前最常用的method。
確實照著文件的說明實現了,可是我的問題是這可以幹嘛??我現在還不知道這個函數存在的意義,如果我以後知道了,我會在這裡更新。2014/12/14
後面這幾個是我比較不常用的
蘋果官方文件:NSDate Class Reference
NSDate Manipulation Made Easy in iOS 8
1定義(Declaration)
2參數(Parameters)
3回傳值(Return Value)
4Import Statement
5可使用版本(Availability)
6探討(Discussion)
7相關(See Also)
另外也可以選擇要顯示的語言,Objective-C還是Switf或是兩個都顯示。
關於NSDate背後的架構(是這樣說嗎!?找不到一個適當的詞@@)可以去看官方文件,因為我自己也還沒有完全看懂,所以就不在這裡做翻譯了Orz
大部份的method都可以望文生義,如果有不懂得再去看官方文件就可以了,我這裡只是整理了所有的mehtod,讓我們可以看得更一目了然。前半段是我目前最常用的method。
Creating and Initializing Date Objects
Comparing Dates
Getting Time Intervals
Adding a Time Interval
Getting Temporal Boundaries
+ dateWithTimeIntervalSinceReferenceDate:
+ dateWithTimeIntervalSince1970:
- initWithTimeIntervalSinceReferenceDate:
- initWithTimeIntervalSince1970:
+ timeIntervalSinceReferenceDate
timeIntervalSinceReferenceDate
timeIntervalSince1970
其中這幾個函數我還不是很搞得清楚到底是做什麼用途的,以initWithTimeIntervalSinceReferenceDate:為例,官方文件是這樣說明的:Returns an NSDate object initialized relative the first instant of 1 January 2001, GMT by a given number of seconds.,翻成中文就是:會得到一個以西元兩千年一月一號零分零秒為開始,(由使用者輸入)往後推幾秒的時間點,我實際使用了一下,如果輸入下列這行程式NSDate *date = [[NSDate alloc] initWithTimeIntervalSinceReferenceDate:10];
顯示結果如下:後面這幾個是我比較不常用的
Representing Dates as Strings
Constants
Notification
蘋果官方文件:NSDate Class Reference
NSDate Manipulation Made Easy in iOS 8
2014年12月7日 星期日
2014年12月6日 星期六
NSDate, NSTimeInterval, NSCalendar, NSDateComponents, NSDateFormatter基本教學
下面是一些跟時間相關的class,以及其簡單的使用方法,而每個class背後的原理,我會另外分幾篇網誌來寫。
下面這段程式是讀取現在時間的程式碼。
下面是NSDateFormatter的使用方式。
設定NSDateFormatter也可以使用Xcode提供的幾種制式化格式
註一:我現在還不完全清楚它的原理,不知道是「會」根據當地時區作轉換,還是「需要」知道當地的時區來作轉換。2014/12/7
註二:我不知道是不是全部,一時沒時間去查,但我要用的話幾乎都在那篇裡找得到。2014/12/7
註三:我還搞不清楚差在哪,我查到後這裡會更新。2014/12/7
NSDate
NSDate儲存的是世界標準時間(UTC),是絕對時間,當要輸出時間的時候會(註一)根據當地時區轉換成當地的時間。下面這段程式是讀取現在時間的程式碼。
NSDateFormatter
說到NSDateFormatter,就不得不提關於NSDateFormatter 的二三事這篇網誌,這篇網誌把很多(註二)參數都整理出來了。下面是NSDateFormatter的使用方式。
設定NSDateFormatter也可以使用Xcode提供的幾種制式化格式
NSTimeInterval
特別要注意NSTimeInterval的資料型態是double。
NSCalendar, NSDateComponents
下面三種方法得出來的結果都一樣,只是取用的方式不同。(註三)註一:我現在還不完全清楚它的原理,不知道是「會」根據當地時區作轉換,還是「需要」知道當地的時區來作轉換。2014/12/7
註二:我不知道是不是全部,一時沒時間去查,但我要用的話幾乎都在那篇裡找得到。2014/12/7
註三:我還搞不清楚差在哪,我查到後這裡會更新。2014/12/7
訂閱:
文章 (Atom)

