![]() |
||
Major Member
![]() 加入日期: Jun 2010 您的住址: 台灣
文章: 109
|
程式撰寫員真的會在意 tab 跟 space 嗎
昨天看了一集美劇矽谷,提到主角對於程式碼中是用 tab 或 space 非常在意,他堅持一定要用 tab,用 space 就是錯的,雖然輸入 compiler 後完全沒差阿
![]() ![]() 現實生話中真的有寫程式的很堅持這個的嗎???覺得真有趣。 |
|||||||
![]() |
![]() |
Senior Member
![]() ![]() ![]() 加入日期: Jul 2001 您的住址: mask
文章: 1,069
|
網頁才有差吧
__________________
![]() ![]() ![]() |
||
![]() |
![]() |
Regular Member
![]() ![]() 加入日期: Mar 2005
文章: 79
|
除非規定TAB固定空多少格,否則每個人的編輯器TAB設定的空格數都不一定
那整個程式碼排版會很凌亂! 雖然我自己也喜歡用TAB來代替多個空白鍵來對齊 我看Open Source Code ,我覺得國外程式設計師還是使用空白鍵來對齊比較多 |
![]() |
![]() |
*停權中*
加入日期: Oct 2012 您的住址: 晚上黑壓壓一片的那區
文章: 99
|
https://zh.wikipedia.org/wiki/%E8%A...%A1%A8%E9%8D%B5
回到一開始來看... 「Tab」一詞由英文「tabulate」衍生而來,意思是「以表格、或表格形式排列資料」。在打字機上如果要輸入一份文字或數字表格,必須不斷使用空白鍵以及Backspace鍵,不僅重複也十分費時。為了簡化這道程式,人們發明了可移動的槓桿,藉由在橫桿上移動而在頁面不同位置輸入。一開始這些機關必須手動設定,但不久便有了「Tab set」(設定Tab)與「tab clear」(清除Tab)按鍵。當Tab鍵彈起,打字機的滑動架便會推進到下一個定位點(tab stop),而這些定位點便對應到目前表格(即tab)的特定欄位位置。Tab機制也成為一種快速且一致統一縮排各段落首行的方式。 在許多程式語言中可以使用逸脫字元\t插入一個定位字元。 四次SPACE跟按一次TAB, 有差嗎? ![]() 以下是個人認為雞蛋裡挑魚刺的規矩: 根據PEP的規定,必須使用4個空格來表示每級縮排。使用Tab字元和其它數目的空格雖然都可以編譯通過,但不符合編碼規範。支援Tab字元和其它數目的空格僅僅是為相容很舊的Python程式和某些有問題的編輯程式。 |
![]() |
![]() |
Regular Member
![]() ![]() 加入日期: Jun 2010
文章: 86
|
引用:
寫程式本來就是一種藝術,有人追求效能的藝術,有人追求邏輯跟演算法的藝術,當然也有人追求原始碼格式跟可讀性的藝術了。 不然編譯過後,在一般眼中,除了介面感受最深以外,其他的對他們來說都一樣。 |
|
![]() |
![]() |
Junior Member
![]() ![]() ![]() 加入日期: Jan 2002
文章: 864
|
引用:
記得這個大戰目前是 space 佔上風的。 但是我個人還是喜歡用 tab。 tab 一票.. |
|
![]() |
![]() |
Advance Member
![]() ![]() 加入日期: Jul 2012 您的住址: 新竹
文章: 409
|
三樓是正解...
堅持用tab 是死守某個編輯器的人在搞的. 不然,哪天自己試試換幾個編輯器就知道了,每個編輯器對於tab 的解譯會搞到很不爽.. |
![]() |
![]() |
Senior Member
![]() ![]() ![]() 加入日期: Sep 2010
文章: 1,338
|
昨天你看得就是Silicon Valley吧....???!!!
http://www.pcdvd.com.tw/showthread.php?t=1104180 |
![]() |
![]() |
Elite Member
![]() ![]() ![]() ![]() ![]() 加入日期: Nov 1999 您的住址: Arlington, Texas
文章: 6,032
|
我在用notepad++來編輯python的程式碼,tab跟空格鍵就真的有差,拿進去python跑好像會出現不同的結果,一個可以順利跑,另外一個就會出現錯誤訊息,所以原則上聽編輯器的話為準。
__________________
My PC: AMD Athlon64 3500+ S939 2200mhz Corsair DDR500 512MB*2 Abit AV8 K8T800 Pro Hitachi HDS72251 6VLAT80 SCSI Disk Device 160GB/8MB Buffer Pioneer DVD-RW DVR-110D LITE-ON LTR-52327S USB2.0 CD-RW PNY Verto GeForce 6800 GT 256MB Linksys Wireless-G PCI Adapter Creative Sound Blaster Audigy 2 ZS ViewSonic A71f+ ViewSonic VX2025WM Creative Inspire P5800 ASUS A2428PDV Microsoft XBOX 360 |
![]() |
![]() |