前阵子在CSDN上面看到一个帖子,《日本程序员和中国程序员为同一功能写的代码》,大意是说日本程序员写的代码多么多么清晰明了,中国程序员写的代码多么多么差劲。
“日本程序员”写的代码如下:
Dim gridItemIndex As Integer 'comment
Dim currentPageIndex As Integer 'comment
Dim pageSize As Integer 'comment
gridItemIndex = e.Item.ItemIndex
currentPageIndex = meisaiIchiran.CurrentPageIndex
pageSize = meisaiIchiran.PageSize
Dim updateDataRowIndex As Integer 'comment
updateDataRowIndex = (currentPageIndex * pageSize) + gridItemIndex
dt.Rows(updateDataRowIndex).Item(t.BindFldName) = txt
“中国程序员”写的代码如下:
dt.Rows(.CurrentPageIndex * .PageSize + e.Item.ItemIndex).Item(t.BindFldName) = txt
接着表明我的观点:首先姑且不论这个帖子内容的真实性。我认为下面“中国程序员”写的代码比上面“日本程序员”写的代码清晰明了得多得多得多,上面“日本程序员”的那一段代码几乎可以放在《重构》里面做反面教材了。