Skip to content

Instantly share code, notes, and snippets.

@fokayx
fokayx / Bitcode.md
Last active January 3, 2016 15:39
What is Bitcode?
layout title
post
Apple WWDC 2015 Bitcode

WWDC 2015: Bitcode

「剛泡好咖啡。對著電腦,路上無車無人,夜深無聲。失眠太久,傷害也太重,也該是到了認識 Bitcode 的時候了...」

Apple 的 WWDC 2015 宣佈了一個有趣的消息,但是許多的開發者並末注意到的重大改變: Bitcode 。

原文:RyPress_Objective-C_Introduction

Objective-C 概觀

Objective-C 是Apple iOS和OS X作業系統原生的程式語言,他是一個經編譯的、通用的語言可以開發五花八門的應用,例如:指令列的應用、圖形使用者介面、特定領域的libraries,Objective-C也提供許多的工具來管理維護大型的框架(frameworks)。

如同C++一樣,Objective-C也是在C 語言上增加了物件導向(object-oriented)的特性,但是在根本上C++和Objectice-C是使用不同的思考觀點來達成這個目的。Objective-C更偏向於動態語言,許多的決策(decisions)不在編譯時決定,而是延遲到執行時才決定,這個影響許多在iOS和OS X環境中開發的Design patterns。

Objectice-C另一個著名的特點是:冗長的命名慣例。這個慣例讓程式碼具有相當的描述性,因此實作上不太可能誤解或者誤用。下面例子,C++和Objectice-C表達同一件事的程式碼:

2015.09.01 RyPress_objective-C: Classes

和許多其他的物件導向語一樣,Objective-C的class提供了建造物的藍圖,首先你在class中先定義一些可以重複使用的性質和行為,然後你就可以將這個類別實體化,生出一個該類別的物件來使用這些性質和行為。

Objective-C和 C++有點類似,會把類別的implementation摘要出來成interface。interface 就負責公開的(public)性質和方法,搭配的implementation則定義了讓這些性質、方法實際運作的程式碼,這個分割的概念和function相同。

在這篇文章中,我們會介紹類別的interfaces、implementations、properties、methods的語法規則(syntax),以及實體物件的規範,還有一些Objective-C的We’ll also introduce some of Objective-C’s introspection and reflection capabilities.

###Creating Classes

@fokayx
fokayx / format_json.md
Created June 30, 2015 05:00
About JSON. How to use rails format.json?@stackoverflow.
@fokayx
fokayx / ErikTrautman_RubyExplained_03.md
Created June 24, 2015 02:09
Ruby Explained: Strings (つづく…)

Ruby Explained - Strings @ErikTrautman

字串

Ruby Explained: Strings

本篇文章是關於 Ruby中的字串(Strings),以及在Ruby中你能對字串所做的有趣的事。

字串(Strings)是網頁程式中相當巨大的一部份,

@fokayx
fokayx / ErikTrautman_RubyExplained_02.md
Last active August 29, 2015 14:23
Ruby Explained: Objects and Methods

##Ruby Explained: Objects and Methods @Erik Trautman

"Everything in Ruby is an Object" is something you'll hear rather frequently. "Pretty much everything else is a method" could also be said.

Ruby 所有東西都是物件,也可以這麼說,幾乎一切都是方法。

今天的目標是能初步了解Ruby的核心概念。在Ruby中所有東西都是物件,每一個物件都有一個類別,每個類別則付予給物件許多方法,可以用來做點什麼事,或者問些問題。物件導向(object-oriented)給予 Ruby超乎想像的權力,讓程式人員的人生輕鬆許多。

思考一下:在Ruby中的任何"東西",不只是眼睛所看到的那樣,例如數字"12",對Ruby來說"12"除了是個數字,他還是個物件,能讓你做許多有趣的操作,例如進行加減乘除或者問他問題:

@fokayx
fokayx / ErikTrautman_RubyExplained_01.md
Last active August 29, 2015 14:22
Ruby Explained: Numbers, Operators and Expressions

##Ruby Explained: Numbers, Operators and Expressions @ErikTrautman

使用Ruby進行數學運算的時候,運算的結果會和輸入數值的類型相同。也就是說如果以2個整數相除,相除的結果也會是整數。

> 5 / 3
> => 1

為了修正這個結果,你必須讓其中一個數值是可以有小數點的類型,例如浮點數(float)。

> 5.0 / 3 
@fokayx
fokayx / Mdblog.md
Last active January 14, 2017 09:30
GitHub Pages + Jekyll + Markdown = MyBlog

GitHub Pages + Jekyll 快速把 Markdown 文檔變成部落格

獻身給程式之後,有時會寫一些程式的新手文,因為是程式相關的文章,難免會有程式碼的片段,當時為了要在文章中包藏程式碼,開始使用 Markdown 語法格式寫東西。 那麼,有了這些 Markdown 文檔之後,要發佈在哪裡給大家觀看呢?使用 GitHub Pages + Jekyll,就可以快速將文章上線變成個人部落格唷。

前置作業,請先確認你有以下這些東西:

@fokayx
fokayx / firstApp.md
Last active August 29, 2015 14:20
Learning to Code is So Damn Hard.Learned Ruby, Ruby on Rails and ... After 3 month, I deploy my first APP on Heroku. :)

##讓我們掌聲歡迎 "紅寶石健檢" 登場

從今年1月認識有種程式語言叫Ruby,2月左右決定要投入Ruby on Rails的開發,終極目標是可以成為靈活運用RUBY的暗黑破壞神(這啥小,意指某種在黑暗的礦坑中默默工作的偉大工程師_簡稱:礦工),所以選了一個題目開工:紅寶石健檢 => "台灣健康檢查醫院搜尋網站",從一個完全沒有任何程式語言背景、經驗的新手開始學習Ruby這個程式語言,接二連三跑出Ruby on Rails、SQL、Linux、REGEXP、 JavaScript、Git,一堆技術債要還啊,雖然在紅寶石健檢網站中每一樣都只是用點皮毛,而且拜許多佛心來的Gem所賜,簡化了許多要自己開發的功能,例如:會員、分頁、驗証碼、麵包屑等等都有強大的Gem,基本上只要讀懂ReadMe就可以無痛使用這些功能,非常的大心。(重點就在於要看懂那個ReadMe,要吃程式飯就乖乖學英文唄...)

記得龍哥說過:Ruby on Rails之所以開發快,就是有這些強大的Ruby Gem支撐,而新手與資深的差異,就是運用這些Gem的能力,假設開發網站像堆樂高,資深開發者可以快速抽取所需的積木(Gem),必要時還能修改成客製化的玩意,打造出一個功能完整的網站。(龍哥有錯請鞭XD)。等等如果說這些功能都有人開發了,那請問你這3個月是在卡關什麼?

前前後後(前端後端)經過了近3個月,關於那些Ruby語法、Rails new一個什麼APP的教程、查文件、Google、煩問諸位大大、上課,新手我本人從面對終端機腦中一片空白,完全不知道說什麼他才懂,然後十個指令九個半會噴錯,參數設錯拼錯字,新手的錯誤通常都很小很可笑,可是要解常常也是要花上老半天呀,這段時間努力認真地挖礦,紅寶石沒挖到半點,倒是挖出了一堆臭石頭,充滿淚水與鮮血的雙手呀,到現在看起來是個可讀可寫會動的網站,終於可以讓紅寶石健檢 上線見人了,撒花!! (先暫時發佈到Heroku上,還要再測試用Passenger+Nginx佈署到DigitalOcean。)

在紅寶石健檢的專案開發中,邊看邊做邊學,才跟以下這些東西有變熟的感覺(超慢熟):

@fokayx
fokayx / checkedall.md
Created April 28, 2015 08:32
Easiest "check all" ever with jQuery._Brian Cray

##超簡單jQuery:"check boxes checked all/ 全選"功能

原文出處:Brian Cray

要怎麼做出全選效果呢? 將checkbox放入同一區的fieldset中,再加上script,就可以進行全選或全不選的操作。請看下面範例:

###HTML: