天天看點

我眼中的優秀程式員

           在我眼裡,類似如c,c++之類的語言是程式員與計算機交流的語言,當然還不是底層語言,中間有個編譯系統幫我們做翻譯。作為程式員,我們掌握了計算機語言,可以通過程式設計來更快地解決我們的問題,比如求1~100的素數,寫個小程式就很快出來了。

           再來說說普通使用者,即不懂計算機語言的非計算機專業的人員。他們隻是會用電腦,要是電腦裡面沒有類似電腦,或者求素數的一些軟體應用的話,上述求1~100素數的問題,恐怕無法讓電腦來幫他們解決。

           是以,我覺得,要是程式員隻是掌握了幾門計算機語言,就算再精通,也隻是比普通使用者高一個級别而已,這算不上是優秀的程式員,當然,我也不優秀。有個問題可以試驗一下——普通使用者,給你一台隻有編譯系統而沒有任何其他軟體的電腦,你能幹什麼?恐怕什麼也幹不了……程式員——給你一台沒有任何軟體(包括編譯系統)的電腦,你能幹什麼?我覺得相當一部分的程式員都确實幹不了什麼……因為我們平時程式設計都是依賴于編譯系統,記得以前,我說學學程式設計吧,同學問:你電腦上有什麼編譯系統?我疑惑:額,沒有。同學笑道:沒有編譯系統你怎麼程式設計?其實還真說對了!!我們對DOS指令一竅不通,對作業系統的底層原理不懂,對編譯原理也不聞不問,對彙編語言更是覺得困難,或許我們沒有了編譯工具還真是淪為了普通使用者。

           編譯系統封裝了與計算機直接接觸的底層語言,進而友善化了程式設計語言,讓我們更容易學會,但我相信很多人都不會去細究,printf("%d",a);就能把a的值以int型輸出,中間到底發生了什麼?計算機是怎樣讀懂這個語句的?這個直接與計算機接觸的語言應該怎麼實作?好比,我們是中國人,會中文,我們也會英文,我們可以與美國人交流(編譯系統),但我們想要跟法國人(計算機)交流,美國人也懂法語,我們便可以通過美國人(編譯系統)與法國人(計算機)交流。但是,美國人要走了,或者說,他翻譯錯了,那怎麼辦?PS:還是直接學法語吧……

繼續閱讀