make loop

This commit is contained in:
chai2010
2015-12-28 15:57:07 +08:00
parent 77148f84d4
commit ba7261d140
25 changed files with 44 additions and 44 deletions

View File

@@ -4,7 +4,7 @@
高級語言使得程序員不用在關心眞正運行程序的指令細節,同時也不再需要關註許多如內存布局之類的實現細節。因爲高級語言這個絶緣的抽象層,我們可以編寫安全健壯的,併且可以運行在不同操作繫統上的具有高度可移植性的程序。
但是unsafe包它讓程序員可以透過這個絶緣的抽象層直接使用一些必要的功能雖然可能是爲了得更好的性能。但是代價就是犧牲了可移植性和程序安全因此使用unsafe包是一個危險的行爲。我們對何時以及如何使用unsafe包的建議和我們在11.5節提到的Knuth對過早優化的建議類似。大多數Go程序員可能永遠不會需要直接使用unsafe包。當然也永遠都會有一些需要使用unsafe包實現會更簡單的場景。如果確實認爲使用unsafe包是最理想的方式那麽應該盡可能將它限製在較小的范圍那樣其它代碼就忽略unsafe的影響。
但是unsafe包它讓程序員可以透過這個絶緣的抽象層直接使用一些必要的功能雖然可能是爲了得更好的性能。但是代價就是犧牲了可移植性和程序安全因此使用unsafe包是一個危險的行爲。我們對何時以及如何使用unsafe包的建議和我們在11.5節提到的Knuth對過早優化的建議類似。大多數Go程序員可能永遠不會需要直接使用unsafe包。當然也永遠都會有一些需要使用unsafe包實現會更簡單的場景。如果確實認爲使用unsafe包是最理想的方式那麽應該盡可能將它限製在較小的范圍那樣其它代碼就忽略unsafe的影響。
現在趕緊將最後兩章拋入腦後吧。編寫一些實實在在的應用是眞理。請遠離reflect的unsafe包除非你確實需要它們。