成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

分享Ruby應(yīng)用技巧

開發(fā) 開發(fā)工具
Ruby語言需要我們不斷的在實踐中去深入的了解其含義。我們在這里為大家分享了幾種Ruby應(yīng)用技巧,希望能幫助大家提高編程能力。

學(xué)習(xí)一項編程語言最重要的就是實踐操作,只有在實踐中不斷的積累經(jīng)驗才能充分掌握我們所學(xué)到的書本知識。Ruby語言的學(xué)習(xí)也不例外。下面就介紹幾種Ruby應(yīng)用技巧,供大家參考。#t#

Ruby應(yīng)用技巧之語句定界符

有些語言需要一定類型的標(biāo)點,一般會是分號(;)來結(jié)束程序的每一語句.Ruby卻采用了shell里的sh和csh的方便做法.一行中的多個語句由分號分開,但在行尾分號卻并不需要;一個換行被看作一個分號.如果行以反斜杠(\)結(jié)束,隨后的換行將忽略;這就允許你的單個邏輯行可以跨越數(shù)行.

Ruby應(yīng)用技巧之注釋

為什么寫注釋?雖然良好的代碼可自成文檔,但那種自以為別人能看懂并按你的方式很快去理解的想法是錯誤的.除此之外,你自己在離開數(shù)天后也會是另一個人;一段時間后我們忘了我們還未修補或增強程序中的哪些部分,你會說,我知道我寫了這個的,但我究竟寫的是些什么?

一些有經(jīng)驗的程序員會相當(dāng)正確地指出,矛盾的和過期的注釋比沒有強.當(dāng)然,有了注釋并不意味著代碼的可讀性;如果你的代碼不清晰,它也許是多蟲的.當(dāng)你學(xué)習(xí)Ruby的時候,你會發(fā)現(xiàn)自己需要更多的注釋;然后當(dāng)你可以通過更簡單,優(yōu)雅,可讀的代碼來表達思想時,它們就會減少.

Ruby遵從一些普遍的書寫習(xí)慣,用井號(#)表示注釋的開始.跟在#號后面直到#號這行結(jié)束為止的代碼都將被解釋器忽略.
同時,為了方便寫大塊的注釋, Ruby解釋器省略以"=begin"和"=end"開始的行中間的一切.

  1. #!/usr/bin/env ruby   
  2. =begin   
  3. ****************************************  
  4. This is a comment block, 
    something you write for 
    the benefit of   
  5. human readers (including 
    yourself). The interpreter ignores it.   
  6. There is no need for a 
    '#' at the start of every line.   
  7. ***************************************   
  8. =end  

Ruby應(yīng)用技巧之組織你的代碼

Ruby讀到什么就處理什么.沒有編譯處理;如果有什么還沒讀到,就被簡單地認(rèn)為未定義.

  1. # this results in an
     "undefined method" error:   
  2. print successor(3),"\n"   
  3. def successor(x)   
  4. x + 1   
  5. end  

這并不是像一開始認(rèn)為的那樣,強迫你以從上至下的方式組織你的代碼.只要你確保其在調(diào)用前將被定義,當(dāng)解釋器遇到一個方法定義時,它能安全地接受暫未定義的引用.

  1. # Conversion of fahrenheit 
    to celsius, broken   
  2. # down into two steps.   
  3. def f_to_c(f)   
  4. scale(f - 32.0) # This is a 
    forward reference, but it's okay.   
  5. end   
  6. def scale(x)   
  7. x * 5.0 / 9.0   
  8. end   
  9. printf "%.1f is a comfortable 
    temperature.\n", f_to_c(72.3)  

所以,一方面看起來比使用Perl或Java要稍稍不方便一些,但卻沒有寫C那么嚴(yán)格(要求你永遠(yuǎn)維持所指的部分排序).將***層的代碼放在源文件的***總是可行的.即使這樣也比看見時要好的多.一個明智而無痛苦的好辦法是將main定義在文件頂端,再在底端調(diào)用它.

  1. #!/usr/bin/env ruby   
  2. def main   
  3. # Express the top level logic here...   
  4. end   
  5. # ... put support code here,
     organized as you see fit ...   
  6. main # ... and start execution here.  

Ruby也提供了將復(fù)雜程序分割為可讀,可重用,邏輯相關(guān)的大塊的工具.我們已看到用 include 來訪問模塊.你將發(fā)現(xiàn) load 和 require 也很有用.load的作用類似于文件的復(fù)制加粘貼(和C的#include處理器指令相似).require更復(fù)雜,僅在需要時才加載,而且最多加載一次.load和require還有其它一些區(qū)別;在語言手冊,FAQ中可找到更多信息.
就是這些了...

這個Ruby應(yīng)用技巧教程應(yīng)該足夠幫助你開始編寫Ruby程序了.隨著問題的深入,你可以深入?yún)⒖际謨?FAQ和庫參考也是很重要的資源.

責(zé)任編輯:曹凱 來源: jb51.net
相關(guān)推薦

2009-12-18 10:47:16

Ruby裝飾模式

2009-12-15 18:24:02

Ruby連接到orac

2009-12-15 18:15:24

Ruby連接到LDAP

2009-12-16 10:10:16

Ruby打開關(guān)閉文件

2009-12-18 14:10:29

Ruby訪問剪貼板

2009-12-17 10:18:17

Ruby創(chuàng)建構(gòu)造器

2009-12-16 11:04:51

Ruby操作文件權(quán)限

2009-12-17 17:37:42

Ruby on Rai

2009-12-15 14:51:50

Ruby繼承

2009-12-16 15:46:41

Ruby on rai

2009-12-15 09:56:51

Ruby流程控制

2009-12-29 17:56:47

Silverlight

2009-12-30 18:23:13

Silverlight

2010-01-25 11:09:58

Android Htt

2009-12-16 10:49:42

Ruby操作二進制文件

2009-12-29 16:08:41

Silverlight

2010-01-25 16:08:37

Android ADB

2010-02-01 11:13:00

C++ Traits

2009-12-31 17:00:40

Silverlight

2010-01-04 14:35:55

Silverlight
點贊
收藏

51CTO技術(shù)棧公眾號

主站蜘蛛池模板: 久久久精品视频一区二区三区 | 欧美黑人巨大videos精品 | 在线午夜| 日韩成人精品在线 | 91精品国产91综合久久蜜臀 | 欧产日产国产精品99 | 一区二区电影 | 亚洲欧美成人 | 国产91av视频在线观看 | 中文字幕综合 | 男女免费观看在线爽爽爽视频 | avtt国产| 精精国产xxxx视频在线 | 一区二区在线看 | 国产999精品久久久久久 | 久久久久久久久久久久久久久久久久久久 | 国产一区二区a | 美女操网站 | 亚洲精品欧美精品 | 国产91丝袜| 婷婷免费在线 | 亚洲精品久久久久久久久久久久久 | 99视频免费在线观看 | 亚洲精品无 | 日韩精品免费视频 | 爱爱视频网 | 欧美久久久久久 | 国内自拍视频在线观看 | 国产一区二区久久久 | 欧美日韩国产精品一区二区 | 欧美久久视频 | 91九色视频在线 | 丝袜 亚洲 欧美 日韩 综合 | 日韩电影在线一区 | 国产一区二区三区精品久久久 | 91精品一区二区三区久久久久 | 国产精品一区在线 | 亚洲欧美日韩精品久久亚洲区 | 欧美亚洲另类丝袜综合网动图 | 99成人| 亚洲色视频 |