當前位置:
首頁 > 最新 > 談談機制與策略分離-使用Latex排版

談談機制與策略分離-使用Latex排版

本文討論的機制與策略分離是一個很簡單的概念,只是自己不會用排版系統而已,沒有太多深入的討論。文章偏向於計算機概念。

機制與策略分離

機制是一種事物本身自在運行的結構,它只規定了事物本身有這種功能,能夠實現什麼,但是卻不理你用這種東西去做什麼或怎麼做。策略則指為達到具體目的而採取的具體步驟。

有所欠缺但是通俗的比喻就是:機制是無視物理性質的藝術材料,策略是要達成藝術品的技法。一個好的機制與策略分離能夠讓你在表達自己的想法時不受限制,自由地表達。試想你如果突然想要表達一個溫馨場面,但是突然發現手頭上的水彩那種光澤無法表達出那種感覺,這該是多麼不暢。

計算機中的機制與策略

以上是一個缺乏藝術的比喻。讓我們討論計算機中可能遇到的機制與策略分離情況。Linux驅動程序的設計就是一種廣泛採用機制與策略分離的情況。linux的內核空間儘可能地將提供給用戶空間的特性與用戶空間的功能分離開來,一個好懂的例子就是真正意義上的linux只是指那源代碼壓縮後不到100m的內核而已,而我們所說的linux則往往搭建了一套GNU的自由軟體。又或者linux本身不實現圖形顯示功能,但是他的的確確實現了對顯卡功能的完全操作。

其實,機制與策略分離本身就是一種設計策略,將它應用在某些設計上可以有效地理清邏輯,規定工作界限。進一步地講,機制與策略分離的一種表現形式就是層次化,模塊化設計。任何現代化的操作系統都應用這種方法來進行設計,操作系統要實現對一個U盤的訪問功能,先實現底層的驅動操作,即所謂的驅動程序。然後驅動程序提供給上層系統訪問功能,當用戶滑鼠點擊時,顯然不是一段代碼執行到底,而是用戶本身點擊就是一段代碼,觸發操作系統本身一段判斷用戶意圖的代碼,操作系統再根據自身判斷的結果調用驅動子程序。這三者的分開設計一個好處就是只要規定相應一方的內在功能,那麼即使內部修改的話,也可以無縫銜接。假使你的一段代碼一下執行到底,那麼遇到不同牌子的U盤,顯然你得換好幾種系統了。

我最近遇到的機制與策略分離例子

上述的討論好像偏題了,機制與策略分離這東西,跟模塊化設計到底算不算同一類的東西呢?如果算的話,那麼互聯網的分層結構顯然也是一個很好的討論例子,軟體設計中的一大堆東西似乎也可以討論。無奈這些東西我沒有資格討論。

Tex是高德納為了出版自己的書籍但是又不滿於當時已有排版系統所排版的數學公式美觀性而一氣之下自己開發的一套排版系統。我不知道在高德納那種沒有圖形界面的年代,這樣一種最初為了數學公式排版美觀性而發明的系統跟其他排版系統比起來其機制與策略分離性是怎麼樣的。但是就現如今Word和Latex的排版方式對比,顯然Latex是可以算得上是機制與策略分離的。

使用Word,意味著你得用滑鼠針對你操作對象進行手動的格式設置。而使用Latex,一切皆純文本。你想要設置字體大小,想要設置行距,都得一個特殊的標記符號來進行設置。就跟現如今在程序員圈子流行的markdown富文本標記語言一樣,你的編輯沒辦法即時看到,不是所謂的所見即所得。

Word的格式與你的文本顯然是綁定在一起顯示給你看的,網上大部分論壇回貼系統也是一種所見即所得的系統。與之相比,Latex給你了控制生成格式的語法,讓你扔你一個純文本給它,如果扔的對的話,他就會返還一個排版好的文件給你。注意,我只是說排版好的,沒有說排版正確或者排版美觀的,因為往往你排的跟你想的不一樣。

宣傳Latex的優點有以下兩種:

美觀的數學公式排版

集中於寫作內容的寫作體驗

讓我們來看第一點,其實數學公式微軟的office公式編輯器已經做得越來越好了,已經不輸Latex排版出來的了。至於集中寫作內容的寫作體驗,我覺得,你把word的東西都用一個格式寫下去,然後再來集中式地改格式,這其實也是實現機制與策略分離不是嗎?

你要用Latex排版,你首先要有一個基本無誤的模板文件,或者自己已經寫好了一個無誤的模板。如果,你用的模板年久失修有一些莫名其妙的錯誤的話,又或者你對語法不熟悉,總是在一些小格式上怎麼也設置不好的話,那基本上你是不要想有所謂的沉浸式的寫作體驗了。

後記:關於計算機那裡可能討論的不嚴謹,在真正懂行,或者熟悉什麼設計模式的人看來,是不正確的嗎?但是,不知道了,只是最近在用Latex排版,本身沒有照著Latex的理念來做事,在得煩心一些格式的情況下,做不到集中精神思考文章的內容,而總是寫了幾個字就編譯看效果。使得一天進展甚微,根本沒做成什麼。


喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 全球大搜羅 的精彩文章:

歐?亨利:美國現代短篇小說之父
莫怪叟的淚點低,只怪「紅海」太好哭

TAG:全球大搜羅 |