一個簡單的問題:哪種類型的函數參數或動態語言中的返回值的文檔是最好的方法?在每個函數定義之後添加註釋?動態類型語言中的文檔
1
A
回答
1
約定更多依賴於語言的評論/文檔特徵,而不是語言的靜態/動態類型本質。更多的是依賴於使用的文檔工具,因爲一種語言通常存在多種不同的文檔工具。儘管在靜態類型語言中,您不必記錄參數的技術類型,但仍需要記錄其含義和用途。
一組具有C派生語法的語言使用Javadoc樣式註釋。例如,在PHP:
/**
* Calculates the area of circle.
* @param float $radius The radius of circe.
* @return float The area
*/
function area($radius) {
Ruby的院子裏工具使用類似的約定:
# Calculates the area of circle.
# @param [Number] radius The radius of circe.
# @return [Number] The area
def area(radius)
我想就整體而言,這是最主流風格。
在您需要記錄參數列表時,您可以使用多種語言編寫非常自由的註釋,使用項目符號列表等。這方面的一個有趣的例子是Perl,以它的莢評論:
=item stuff(radius)
Calculates the area of circle.
=cut
sub stuff {
相反,由RALU提供的例子,我認爲這是比較常見的有函數定義之前的文檔......但最終這一切都取決於在語言上。
1
Python在函數定義後使用註釋,MATLAB在函數定義後使用註釋。
def fibo_gen():
'''Generate Fibonacci numbers; return an iterator'''
x, y = 0, 1
while True:
yield x
x, y = y, x + y
和Matlab
function addtwo(x,y)
% addtwo(x,y) Adds two numbers, vectors, whatever, and
% print the result = x + y
x+y
我不熟悉白衣其他動態語言。這被認爲是適當的評論慣例,在這兩個例子中都使用了whit幫助功能。
相關問題
- 1. 動態語言的文檔
- 2. 動態類型語言中的類型
- 3. 動態語言運行時的文檔?
- 4. id動態類型文檔
- 5. 口譯員和動態類型語言
- 6. 以動態語言檢查類型
- 7. 用動態類型語言重構
- 8. 在動態類型語言中切換case語句
- 9. 在靜態類型語言D中使用動態類型輸入
- 10. 瞭解解釋動態語言中的類型檢測
- 11. 動態類型語言中的快速屬性查找?
- 12. 如何處理動態語言中的錯誤參數類型?
- 13. Powerbuilder語言文檔
- 14. 設計模式列表僅適用於靜態類型語言,但不適用於動態類型語言?
- 15. 泛型類型,編譯器和動態語言
- 16. 如何在動態類型語言中描述函數參數?
- 17. Kivy,KV語言的動態類
- 18. Prolog是一種無類型的語言嗎? Prolog和動態類型語言有什麼區別?
- 19. 是不需要聲明變量類型的弱語類型或動態類型示例的語言的質量
- 20. 在鴨子型語言中模擬靜態類型的方面
- 21. 語言= 「JavaScript的」 與類型= 「文/ JavaScript的」
- 22. 靜態類型語言的類型在運行時決定?
- 23. 值得動態類型語言的所有批評?
- 24. 自然語言類型的子類型
- 25. Latex中的多語言文檔
- 26. XML文檔中的多語言示例
- 27. 笨的語言數組動態文本
- 28. POD多語言文檔
- 29. 多語言Android Sdk文檔
- 30. 彙編語言的類型