星期六, 1月 31, 2015

澳門銀河渡假村


澳門銀河渡假村正門
銀河內金羊

鑽石秀

美食廣場前肚皮舞秀

星期日, 1月 25, 2015

澳門皇都酒店

地點不錯,飯店前面有噴水池及公園,公園有兒童遊樂場。前面有一條街,夜景很漂亮。走路約15分,可以走到大三巴牌坊。


皇都位置便利

高雄大鵬國際機場停車場

只要拿信用卡給櫃檯,確認後,開車進入,會有人指示車要停那裡,把車停好後,將key交給員工,就等接送到小港國際機場(等約10分鐘)

星期三, 1月 21, 2015

Free Mockup Tool

http://www.invisionapp.com/

星期二, 1月 13, 2015

Personas APP設計好文章

Good Reference:


  • 如果想要重新設計 Quora Android app 該怎麼做?談 Persona、Framework、Sketch 和 Prototype 的運用(36kr.com)
  • http://share.inside.com.tw/posts/4950
  • Personas & scenarios
  • http://www.slideshare.net/josh32734/personas-scenarios
  • 以使用者為中心的設計入門User Centric Design
  • http://www.turboequation.com/FileDownload.ashx?OrgiName=20130909App%E9%96%8B%E7%99%BC%281%29PPTv1.pdf&FilePath=CompanyFile%5C20140422180118135.pdf
  • 期中報告: 介面設計分析與發想| NTUST UI
  • ntustgui.blogspot.com/2011/10/blog-post_26.html


星期日, 1月 11, 2015

Unicode, UTF-8, UTF-16, Python 2.x, 3.x 中文編碼

Unicode, UTF-8, UTF-16, BOM的說明

Reference: http://dnowba.blogspot.tw/2012/07/ansiunicodeutf-8utf-16bom.html

在命令提示視窗(Command Prompt)顯示UTF-8內容


http://blog.darkthread.net/post-2011-08-11-command-prompt-codepage.aspx

摘要:

  • Unicode (=UTF-16), 固定2bytes來編碼,解決多國語系呈現問題。
  • Unicode轉換格式(Unicode Transformation Format,簡稱為UTF)
  • UTF-8可變動式編碼,英文數字用1 byte來編、中文通常用3 bytes編碼。設計目的在於英語系資料可只用1碼,大幅簡少原Unicode 2碼的空間浪費。
  • BOM (Unicode Byte Order Mark),在檔頭加上二個byte的空間,為了解決CPU的BE和LE的問題。(早期Mac 系統主要是 Big Endian(BE), PC 系統則是使用 Little Endian(LE)。)
  • Difference between Big Endian and little Endian Byte order, http://stackoverflow.com/questions/701624/difference-between-big-endian-and-little-endian-byte-order
  • UTF-8在Windows軟體(如記事本)存檔時,可能會加入EF BB BF這個BOM,因為UTF-8編碼可以透過演算法偵測,理論上是沒必要的。所以Linux及Mac上的文字編輯器都不會加,造成一些程式碼在Linux及Mac平台上處理會有問題。

Python 2.x及 3.x的編碼

Python 2.x’s support for Unicode, Reference: https://docs.python.org/2/howto/unicode.html
Python 3.x’s support for Unicode, Reference: https://docs.python.org/3/howto/unicode.html
python 的編碼, http://openhome.cc/Gossip/Encoding/Python.html

摘要:


  • 在Python 2.x,程式中所有字串,其實都是原始位元組集合。也就是傳統的ascii編碼。
  • 如果原始碼中寫了非ASCII字元串,必須在第一行放置編碼聲明(encoding declaration)。例如:# coding=Big5。在上面情況下,len('中文')函式結果會是以byte來計算=4
  • 一般建議,第一行編碼聲明為# coding=utf-8
  • Unicode不等於utf-8編碼,所以讀取及儲存Utf-8資料,需要進行轉碼,轉成Unicode再處理。
  • 為了支援Unicode,Python 2.x提供了u前置字來產生unicode物件。len(u'中文')函式結果會是以真正的"字數"來計算=2
  • 在2.x中,可以用 s = unicode('abcdef')語法建立unicode,unicode() 建構式的原形 unicode(string[, encoding, errors]),其中encoding預設的編碼是ASCII,建構式會把string 參數內容,根據由encoding參數所指定的編碼,如ASCII轉成unicode。如果沒有改變編碼,直接用預設方式建立中文字,如unicode('中文')會產生錯誤,如UnicodeDecodeError: 'ascii' codec can't decode byte 0xff in position 6。必須指定原始編碼,unicode()函式才能安全的把原生編碼轉過去Unicode, e.g, unicode('中文', 'big-5')。
  • unicode的encode()方法則可指定實現編碼,將之轉為代表位元組實現的str實例。即把字串從unicode--> big5。
  • 假如text文字為unicode,呼叫b_str = text.encode('big5')則會回傳big5的文字回去b_str。
  • 原生字串str的decode()會將字串轉換為unicode物件。即把字串從big--> unicode。
  • 假如b_str文字為原生字串,b_str.decode('big5')則會回傳Unicode的文字回去。


  • 在Python 3.x中,預設.py檔案必須是UTF-8編碼。如果.py檔案想要是UTF-8以外的編碼,同樣必須在第一行放置編碼聲明。
  • Python 3.x中的字串都是Unicode。

台南早午餐B.O.A Breakfast of America

墨西哥炒蛋加鬆餅,微辣好吃...咖啡、紅茶可續杯...200元



星期四, 1月 08, 2015

台南奇美博物館

夜景

奇美博物館正門夜景

奇美博物館前噴水池

奇美博物館前噴水池

IP Multicast UDP Broadcast

心得
  1. IP Multicast 在LAN中,會變成ethernet Multicast封包, (ethernet frame: msb bit為1, 把IP後面23bit copy)。
  2. 作業系統核心通常收到Multicast封包會drop掉,用socket api加入group,則可以告訴系統核心要接收指定的Multicast封包,則系統就不會drop Multicast封包。
  3. 在LAN中,Multicast封包會用廣播的方式傳送,大家在同一個LAN都收的到。
  4. 要跨router,則router必須支援Multicast封包,把功能打開,才可以跨網段。
reference: (有空再加)