崔新雨
北京道達天際科技有限公司 北京 100089
數(shù)學學科在計算機編程領域的地位是很重要的,編程的本質就是通過多種邏輯關系的構建對一個復雜的工作進行分解。數(shù)學算法的高效利用能夠讓計算機編程工作高效和簡單,也能對現(xiàn)有策略達到優(yōu)化的作用。
計算機及其相關技術的快速發(fā)展是在21世紀初,計算機的從業(yè)人員也開始重視起程序的開發(fā)工作。通過計算器編程,能夠為人提供有力的生產(chǎn)力工具,為了實現(xiàn)多種需求,對于數(shù)學邏輯的重視程度和依賴性也在不斷加深。數(shù)學思想除了基本的運算原則之外,還有建模思想和邏輯思想,通過對一個事件建立模型,然后逐層分析內(nèi)部邏輯關系,得到所有的可能路線和結果,再把這些關系用計算機語言輸入,就能將這個事件轉化為計算機程序。
在計算機編程的研究過程當中,人們發(fā)現(xiàn)使用數(shù)學思想能夠將復雜的事情簡單化,把所有的工作簡化為數(shù)學模型當中的一部分,然后再利用數(shù)學符號和語言,將上述工作串聯(lián)起來或進行運算,這樣就能夠實現(xiàn)所有工作。按照這個思想,計算機編程從業(yè)人員,對數(shù)學建模與計算機編程進行深入的使用研究,在大大提高計算機編程效率的同時,還降低了其入門門檻和難度。
數(shù)學模型思想本質是一類歸納算法,把一個事件分解成若干個獨立的小事件,并通過數(shù)學符號、選擇、運算邏輯等將所有小事件串聯(lián)起來即可實現(xiàn)功能。通過數(shù)學模型思想進行計算機編程,能夠提高工作效率,而且使工作量減少,避免不必要的邏輯判斷。
數(shù)學模型思想是需要不斷優(yōu)化的,解決同一問題,有無數(shù)種不同的數(shù)學邏輯思路,但最優(yōu)的往往只有一種。對于同一時間使用不同的邏輯,可能工作量運算效率都不一樣,雖然能達到一致的結果實現(xiàn)需求,但對于大型程序來說,如果內(nèi)部事件之間的邏輯關系都不是最優(yōu)解,最終程序完成之后,可能出現(xiàn)運行緩慢的問題,在程序運行的過程中,也會有很多無用工作,后期對該程序進行維護和修改時也會加大工作量。
在現(xiàn)代的計算機編程工作中,編程的基本語言和編譯器已經(jīng)發(fā)展趨于成熟,故在計算機編程算法的優(yōu)化工作中,對于邏輯考究和優(yōu)化是十分必要的。能夠實現(xiàn)程序需求的前提下,數(shù)學算法越是趨于簡單和清晰就越貼合人們的優(yōu)化需求。優(yōu)化起到的作用是錦上添花,對于同一事件同一程序的優(yōu)化工作而言,也沒有唯一的標準答案。
2.1 計算機語言結合數(shù)學算法 隨著計算機編程學科的發(fā)展,已經(jīng)有多種計算機語言被普及和使用。本部分以C語言為例來簡要說明如何運用數(shù)學算法優(yōu)化現(xiàn)有計算機語言。C語言是較為基礎的計算機編程語言,也是大部分從業(yè)者接觸到的第一種計算機編程語言。C語言的使用是很廣泛的,其下限較低,上限很高,能夠實現(xiàn)諸多功能,目前流行的很多應用程序使用的基礎語言也是C語言,描述和編寫方式也是其他計算機語言的基礎。
在使用C語言進行編程的過程中,大部分從業(yè)者都會遇到編譯工作的困難,因其編譯的容錯率很低,自身也有很大的局限性,在編寫時必須按照嚴格的代碼邏輯進行輸入。雖會對編譯工作造成困難,但C語言的嚴格性也是其優(yōu)勢之一,能夠避免很多邏輯性錯誤從而造成程序不運行。
通過使用數(shù)學算法,可對C語言進行優(yōu)化,在保留其基本優(yōu)勢的前提下,還能優(yōu)化局限性。在進行編程之前,使用數(shù)學模型和算法先對整個事件進行邏輯分析,然后設計一相應的流程圖,將事件中的小事件拆解連接之后再用C語言進行編寫即可。對數(shù)學算法的合理運用能夠減少邏輯錯誤,讓代碼精簡,從而簡化整個程序的內(nèi)容,便于運行和后期維護。
數(shù)學算法具有很強的抽象性,多種不同的工作經(jīng)過歸納和總結,其數(shù)學算法也可能是類似的。在編寫程序的時候,可以將不同事件中的相同算法先行編寫出來,然后在不同的事件中加以運用即可。這樣最后編寫的程序能夠減少冗余,避免多次進行重復工作。
將數(shù)學算法與計算機編程語言結合的過程中,并不能單純的追求簡單化,也要注意邏輯代碼的可讀性和易修改性。如果僅僅追求代碼簡單而建立了很多復雜的函數(shù),雖然能夠實現(xiàn)目標功能,達到開發(fā)需求,且縮短代碼長度,但可能不利于程序的維護與修改,這種方式也不是值得提倡的。
2.2 對象結合數(shù)學算法優(yōu)化 在編程的過程中,需要頻繁進行引用或展示的信息、圖片、鏈接等通常被稱作對象。一個正常的程序其所用到的對象是很多的,如果不加以分類整理,在編程的過程中就會增加很大工作量。在該程序上線運行之后,維護人員也需要花費大量時間和精力去探究對象和程序之間的對應關系。在此背景和需求下,可以引入數(shù)學中類、集合等思想。
在編程工作開始之前,可以將用到的對象進行分類,并在不同的類之間建立邏輯關系,進行繼承、嵌套和封裝等。在編程工作中,若需要引用對象,可先明確對象所屬的類,然后再進行引用。如:某游戲程序要求在用戶按下回車鍵之后播放第4段視頻,若不引入類和集合的思想,在編程時就需要花費查找到引用對象然后寫入程序,計算機在運行的過程中也需要打開數(shù)以萬計的對象,然后尋找“第4段視頻”,會造成程序運行緩慢,后期維護人員需要對“第4段視頻”也同樣面臨該困擾。若使用類的觀念,將程序將要用的對象全部分類,可將“第4段視頻”歸納為“游戲第一章——過場動畫——高畫質——第4段視頻”,不僅能夠提高編寫時的效率,在其他人查看此段代碼時,也能明確每個對象的意義和用途,便于維護。
上文僅進行最簡單的邏輯舉例,在實際編程工作中,所涉及到的對象和邏輯關系是十分復雜的,計算機可能同時處理上萬條上述邏輯關系以保障程序運行。當代碼量大,程序復雜,數(shù)據(jù)量多時,對對象用數(shù)學算法進行優(yōu)化是很有必要的。
編程工作的原理并不復雜,其本質就是將事件地之間的關系及動作用計算機語言編寫出來,但實際過程中,因需求復雜、數(shù)據(jù)量大、邏輯繁復等原因,編程工作所面臨的挑戰(zhàn)是很多的。通過數(shù)學思想中的模型建立、邏輯關系歸納、分類和整合等策略,能夠對計算機編程進行有效優(yōu)化,結合數(shù)學思想對計算機編程優(yōu)化的策略能夠提高編程工作的策略和準確性。