Tealeaf Academy第一週課程筆記, 課程扎實且艱深, 期許自己能更進步, 加油 =)

 

 

2015/6/22 (一)

Ruby style: (1) 讓Tab產生2個spaces而不是4個spaces

   (2) variable格式

變數的命名要易讀, 太過模糊或簡易的變數在越寫越多code時會使用不便, coworker也會讀不懂你寫的code

snake_case: 用於任何地方, 全部小寫且單子間以底線隔開

CamelCase: 用於declare classes name, 每個字首大寫中間不以底線隔開

例如: class MyFirstClass 

   end

UPPERCASE: 用於constants variable, 每個字母都大寫, constants variable內的資料不要任意修改或刪除

例如: FOUR = 'four'

    (3) do...end 寫成一行時要包在 {} 內

2015/6/23 (二)

Array與Hash主要的不同: Array 1) 有 index of base   2)重要的是maintain the order

Hash 有 key-value pair

Ruby rocket:在Ruby 1.8版之前的使用方式為 h = {:a => 1, :b => 2, :c => 3}

                               1.9版之後的使用方式為 h = {a: 1, b:2, c:3}

儘管如此,儲存資料的方式還是一樣以 h = {:a => 1, :b => 2, :c => 3} 儲存

Pry:檢查執行ruby code的時的每個步驟(在你想要檢查的code前一行嵌入binding.pry)

使用方法:

require 'pry'

----------your code-------------

binding.pry (結束執行程式)

var:如果local variable在outer scope宣告或initailize則可用於inner scope,反之不然

#什麼是inner scope? 例如 def method 或是 do...end 

pass by reference VS pass by value:變數是否會改變是depense on method是否有mutate caller, 如果有,變數就會被修改;如果沒有則變數沒有被修改

2015/6/24 (三)

program的撰寫步驟:1) Problem definition,可以先寫一些pseudocode,像是一些口說的英文句子或片段  

2) Application logic,將句子翻譯成程式語言

3)Verify with real code,寫一小段就先到irb或terminal測試,才不會寫了一大串不知道是哪裡出了錯誤

一個好的method:1) 1個method只做1件事情

    2) 確保short line

    3) 不要display, output or return 東西

    4) 若method會return side effects, 在method的命名中就要反應這件事

Truthiness:在ruby中,所以都是truthy,除了nil和false

 

 

 

 

 

 

 

 

 

 

 

 

文章標籤
全站熱搜
創作者介紹
創作者 wendyyang8123 的頭像
wendyyang8123

溫蒂小胖子的生活紀錄

wendyyang8123 發表在 痞客邦 留言(0) 人氣(2)