2009-07-03 57 views
1

有點印象深刻,我很好奇:什麼是呈現代碼的最佳方式 - 在線和離線。特別感興趣的是:在離線和書本中呈現源代碼的最佳方式是什麼?

  • 哪種字體和尺寸最適合在線和離線?使用比例字體代碼更好嗎(例如,像'The C++ Programming Language'中的Stroustrup一樣)?襯線,無襯線,還是混合?
  • 應該如何標註代碼 - 使用典型的// comment標記,或者可能只是使用不同的字體(並且沒有註釋標記)?
  • 是否值得繪製箭頭(或類似的東西)以顯示不同的代碼塊如何相互關聯?
  • 是否在幾列並排工作中顯示代碼?
  • 有沒有人需要線路編號,改變線等東西?

回答

1

這並不完全回答大部分問題,但您可能有興趣閱讀Literate Programming。其要點在於,你將代碼和文檔編寫在同一個文檔中,並且它被格式化爲網頁或打印或其他。當我在這裏說文檔時,通常不是單行的文檔片段,而是整個段落或頁面描述程序中正在發生的事情。

+0

哇,我可以用這種方式來描述這個概念,比如說黃瓜的工作方式(BDD測試用簡單的英文寫的)。然而,我們的編程語言還沒有出現,我發現大的評論塊是作爲評論(而不是普通文本)來閱讀的,非常繁瑣。也許是我,但我發現閱讀等寬文本更難閱讀按比例分隔的文本。 – 2009-07-03 11:31:59

1

好吧,讓我添加我的投票反對比例字體,由BS在TC++ PL中使用。這真的讓我瘋狂!同樣的Soctt Meyers在有效的STL中,增加了一些討厭的高光的恐怖。

對我來說,關於編程的經典書籍將永遠是K & R,因爲我不認爲它爲了表達的清晰度而被改進。所以我會建議大肆複製它。

+0

等寬字體還有一個問題:你不能在一行中包含儘可能多的字符。隨着空間不足(特別是對於長碼塊),我可以理解爲什麼有些人使用「傳統」襯線字體。 – 2009-07-03 11:33:15

+1

「包裝到一條線」是我不喜歡代碼的比例字體的主要原因之一! – 2009-07-03 11:42:28

1

我喜歡在文本中編寫虛擬代碼時使用擴展字符集。用於代碼和數學標記的字體很好地工作。

一個很好的例子是將一個左箭頭用於分配或綁定,而不是=。我見過的書中最好的代碼例子就是Dragon Book或TAOCP。我認爲由於能夠呈現這些角色的能力以及與通用語法的關係,數學詞源的混合是很好的。

混合了通常的固定信使類型的字體和通過計算機現代在LaTeX中可用的高級數學標記,我認爲對於數學處置的讀者來說效果很好......並且它看起來非常好看。

1

只是一對夫婦的事情,我想到:

  • 限制線所需
  • 你當然可以使用不同的字體,只有當最小
  • 行號,但對於一個數不同的背景?像淺灰色?把你的代碼框出來,我認爲把兩個盒子放在一起是沒有問題的。
  • 取決於成本,但是如何着色某些元素 - 像大多數IDE一樣 - ?
  • 撰寫工作,真實世界的代碼!因此,我建議使用正常的/ /評論風格,而不只是一個不同的字體。
1
  • 我會使用像 索拉一個monopaced字體。
  • 由於評論通常顯示爲不同的顏色(至少在我見過的IDE中),所以我會將它們保留原樣。
  • 你是什麼意思的「顯示塊如何相互關聯」?指示函數,if語句等在哪裏開始和結束?如果是這樣,這可能會有所幫助;我真的不知道。
  • 如果您正在比較幾個代碼塊來指示某種細微的差異,但它不能在一箇中工作,而在另一箇中工作,但可能會發揮作用,但除此之外,我沒有看到太多用處。
  • 如果您將參考文獻設置爲「在前面的代碼示例中轉到XYZ行」,則行號可能會有所幫助。
相關問題