???新年已過幾天,自己掐指一算,眨眼間工作快六載。時間過得真快,該靜下心來對自己進行總結(jié)總結(jié),反省反省了。
???作為程序員中的一員,鄙人對新技術(shù)、新方法有著狂熱的激情,每天都希望自己多看一些資料和多編一些程序,有時自個頗以陶醉于比特世界而自鳴得意。但我們的生活畢竟不是單一的,我們畢竟要在團隊中生活,要在“死亡之旅”項目中掙扎前行,在這之中對我造成折磨的一件事,那就是寫文檔。
???寫文檔,誰都會寫,這句話沒錯。就像每個人都覺得自己可以當皇帝一樣,但不見得就可以做個明君。
???每當項目中需要什么文檔時,鄙人就三下五除二把它“拿下”了,自我感覺自己已經(jīng)把該寫的東西都寫全了。但很多時候都是事與愿違,每當進行文檔評審或別人參看文檔時都會提很多意見,比如:
???1)文檔沒有體系結(jié)構(gòu)
???2)前后不呼應(yīng)
???3)沒有層次
???4)...
???最嚴重的評論是“不知所云”,我拷,我可是花了整整一天時間,
!@#$%^&。
???舉個例子,有次領(lǐng)導讓我寫篇調(diào)查文檔,針對xxx廠中的信息系統(tǒng)中存在的一些問題進行分析并提出改造方案。接到任務(wù)后,沒經(jīng)過仔細思考,就開始埋頭寫起:
???第一段列出了目前存在的所有信息系統(tǒng),
??????系統(tǒng)A
??????系統(tǒng)B
??????系統(tǒng)C
??????系統(tǒng)D
??????系統(tǒng)...
??????系統(tǒng)Z
???第二段列出了它們存在的問題,
??????問題a
??????問題b
??????問題c
??????問題...
??????問題z
???第三段進行了問題分析
???第四段給出了解決對策,
??????對策1
??????對策2
??????對策3
??????...
??????對策n
???在會上領(lǐng)導進行了委婉地批評,說文檔就像流水賬一樣,不成體系,沒有歸納,沒有總結(jié)。其中的系統(tǒng)、問題和解決對策就像一盤散沙,給讀者的閱讀帶來極大的困難。經(jīng)過“批評指正”,我意識到一篇文檔要寫出結(jié)構(gòu)、寫出思路、寫出層次,讀者才會看下去,不然就像我原來寫的文章那樣,文檔中一大堆信息,誰容易明白,可能時間長了自己也不明白。
???經(jīng)過文檔“重構(gòu)”,我對問題進行了歸納和總結(jié),比如:
???
???第一段中的信息系統(tǒng),我根據(jù)功能級別把它分類成管理決策層(L4),生產(chǎn)管理層(L3),過程控制(L2),電器儀表層(L1),又根據(jù)建設(shè)時間把它分成了已建系統(tǒng)(又分成未改造和正申請改造)和在建系統(tǒng)。通過把信息分析,進行歸納之后,信息的理解和消化將變得輕松。
???對問題我也是依葫蘆畫瓢,把問題歸納成系統(tǒng)問題、兼容性、擴展性、管理方便性進行了說明。對解決方案進行了從重要性、操作性和階段性進行了說明。
???經(jīng)過“重構(gòu)”,文檔得到了領(lǐng)導的認可。自己在文檔的編寫方法有了一次小飛躍。
???寫文檔不難,寫好文檔不易。就像我們程序員的程序一樣,一定要有好的體系結(jié)構(gòu),要善于利用設(shè)計模式以及慣用法等。對比于文檔,我個人覺得,
??????文檔??????????????????????????????????????????????????????代碼
???金字塔原理???????????????<——>??????????????體系結(jié)構(gòu)
???歸類、排比句???????????<——>??????????????慣用法?
???許多程序設(shè)計中的思想都可以用于文檔編寫,比如:
???1)用例驅(qū)動,在文檔編寫中,我們可以關(guān)心文檔的用戶是誰,他們對這篇文檔都有什么期望,...。
?????
???2)以體系結(jié)構(gòu)為中心,在文檔編寫中我們可以按照“金字塔原理”的思想為中心展開我們的編寫工作。
???3)迭代和增量為過程,在文檔編寫中,我們可以增量進行編寫工作,然后休息一下,把自己換成文檔用戶的角色通讀一下文檔,把不滿之處記于紙上,然后在把修改意見放入下一輪迭代編寫中。
???最后,以領(lǐng)導常說的一句話共勉,“凡事要用心”。不過我個人要再添一句,“到時需動腦”,:-)
???
(注:《金字塔原理》是一本關(guān)于寫作的書,非常不錯,值得擁有)