入住簡書之房產證篇
今天想要看看底層的程式碼,學習一下底層程式碼的方法基礎,以及思路、思維模式。
突然意識到,黑匣子這個概念在我這個行業的可怕:fearful:統治力。(黑匣子)
拿我工作的行業來說,作為一名勤勤懇懇的碼農。我工作中使用到的最多的是各種方便的工具和方法。很少會去看看這些工具、方法的實現原理。(因為實現過程還是挺複雜的,所有我有時候看不太進去。)
最近我在工作中會遇到很多需要優化的程式碼,讓程式碼易於維護和複用的方法(這句話挺難理解的——— 我大概就是說一個功能用一種更好的方法實現,這個方法的好處體現在我做出了這個方法,別人可以很方便的呼叫。)。不過對於自己來說,我心理上更願意使用一段很好寫但是不能複用的程式碼來實現這個功能,因為我只是做這一個需求時候使用到了,為了一個需求費腦子寫一個方法函式、甚至是一個類來實現它。這個是很耗費時間的。並且在我有整合程式碼、方法的概念之後,我會發現在工作中會遇到很多需要我對程式碼進行升級和優化的地方。
在這個程式碼複用、優化的過程中,優化的程度和範圍決定了你在自己行業中所處的地位。作為行業高階的人才,Cocos引擎的開發人員,他們寫的底層程式碼都是高度的整合、複用和規範,這也意味著它的適用範圍更加的廣泛。其次是引擎的使用者,也就是我這種工作在前線的碼農們,我跟開發者相比,我對於程式碼的整合、複用、優化的要求要低很多,更多的是為了應付自己工作中遇到的需求。當然同樣是開發人員,他們的工資是我這個剛入行的菜鳥目前來說無法企及的。所以我用對待程式碼的嚴格程度、優化程度和適用範圍來圈定了行業中自己的定位。(因為自己入行不久,對行業瞭解的不多,所以這些只是自己的拙見,有疏漏望見諒。)
在很多時候我缺乏的不是新奇的想法思路。而是真實行動的動力,只要解決眼前的工作就可以。雖然心中有很多的更好的主意,不過因為惰性很少有去實施的。我之前在網上看過很多言論,對於碼農來說,因為加班的緣故,這個行業彷彿是年輕人的,因為他們手裡有碗飯,這個飯叫做青春。只要人到中年,沒有年輕人的精力,就要被行業所淘汰。這種認知和心態的人不在少數,這些人中也包括我,從我在剛入行到寫下這篇文章之前也機械的認為就是這樣的。作為行業的老人,跟年輕人比精力肯定是不行的,老人的優勢是擁有更多的經驗。不過我所說的經驗可不是簡單的:做出一個應用程式(APP)、或者專案從一開始的一個月到後來的幾天時間就可以完成。而是面對專案製作的過程中,會碰到很多問題。通過解決這些問題,慢慢的使得自己解問題的方式更加趨近於優化整合的方向。碰到類似問題時會有心中對應的問題模型,通過之前的積累在腦中形成的很多模型,來解決類似的問題。如果跳出一個全新的問題需要解決,那麼同樣可以使用模型資源來將問題模組化,哪些地方符合這個模型的特徵,哪些地方是那個模型的特點,最終形成一種解決的方案。這是一種需要很多積累才能養成的思維模式。這個在我心中才是難得可貴的。擁有著個特徵的碼農並不會隨著時間的推移,步入中年被淘汰;反而會更加吃香。(這一段我也說不清楚了,0-0 總的來說就是形成一個高效高標準的解決問題的思維模式)
在我現在所在的公司,A神,他面對問題就是我所說的那種狀態。A神是負責前端的負責人,他呢平時寫一些工具(使用python一鍵打包、實現app的多語言工具、還有很多引擎中沒有封裝實現的類-------實現特定功能的類),自己寫程式碼時候,有很高的要求規範。寫出來的程式碼,有很高的質量,寫出一個很好的方法,之後分享給我們使用。 我感覺他優化程式碼的時候的初衷就是為了讓更多的人可以使用,或者說他只是單純的讓自己的程式碼更加符合複用、優化、簡單、整合的高標準,恰巧這個高標準讓方法具備了可以推廣使用的條件。不管怎樣最終的結果就是讓很多人都受益了。 這彷彿就是幫助別人,最終成就自己。 說著說著跑到哲學上來了。 0-0
我這個人呢,其實有點潔癖。寫程式碼必須要求規整,如果自己心裡有了優化的主意,而不去實施,每次看都那段死挫的程式碼心裡總是很彆扭。每次優化之後就挺有成就感的,我呢大俗人一個,也不想我佛慈悲,一般這個時候就想找一個識貨的人裝一下逼。為啥說識貨的人呢,因為不理解的人,看到這個不會覺得你牛逼,反而覺得很傻,你這個東西我十幾行程式碼就搞定了,你寫了個函式幾十行程式碼,你這不是傻嗎! 閒的呀!
最後呢,關於黑匣子理念。我覺得程式中並不存在黑匣子。就拿我的學習歷程來說吧,我從一開始的時候學習C++語言,開始在 main() 主函式中寫程式碼,做各種操作;再者寫到了函式,開始把 main() 中的具體操作拿到函式中執行;之後一個類已經滿足不了我了,開始寫多個類,多個檔案,具體使用的時候呼叫各個類中的函式;再後來這些類也進行了升級,有了設計模式的概念,建立類的時候根據它的需求選擇設計的模式;在基礎的功能實現之後,我開始考慮有沒有更加簡單的方式,可不可以對程式碼在進行一次優化、加工,更加具有模組化的特性,把複雜問題分成各個小問題的解決方式,這樣維護、查詢問題就更加快捷方便。 我整個學習的過程都是在不斷優化,使得程式碼更加完美。在實現基礎功能之前的學習是必須的,因為你只有做到了這些才達到了最低的標準。而這才是一切的開始,學習中最重要也是最難的一段旅程才剛剛開始。最重要都可以理解,但是最難這個詞不是用來形容專業知識的難,而是克服自身惰性的艱難。達到需求可以應付工作,但是僅僅把工作當工作,它不會成為你的職業。達到最低要求之後,如果只是把封裝好的方法,別人寫的工具單純拿過來使用而不去思考;把它當作一個個黑匣子來使用,並不瞭解其中原理,這樣便會失去進取心,學習也就停止了。
我彷彿找到了自己的方向,要是問我我的方向是什麼? 我只能說目前就是做一個像A神一樣的人吧。 一個崇拜者的自白!!!
我呢,現在只是剛剛工作沒多久的小白,對行業瞭解很有限。 文中提到的一些詞自己也沒有深刻的瞭解,比如整合啊什麼的,有寫的不對的地方諒解諒解,我說的更多的不是很專業的知識,而是自己內心的感受。 共勉之。。。。 嘿嘿 0-0
這裡呢,一直想像一個大神一樣有自己的部落格之類的,把自己的成長曆程記錄下來。不過一直挺忙的,怕沒時間寫;還有一點就是,開始寫部落格的人,開篇好像都有一篇文章,介紹自己說什麼這是第一次寫這個啊…. 工作可能會很忙,不過有時間會更新的。 我呢一直沒想好第一篇寫什麼,正好今天有感悟,就把這篇文章寫下來了。 剛寫完,才意識到,這個作為開頭挺不錯的,所以才有最後這一段話。 嘿嘿 :grin: ,本來沒想到能夠寫這麼多,本來就想在筆記本上寫點小感受,寫著寫著就停不下來了。這個可能在我職業生涯中起到很重要的作用。 共同努力吧!··· :muscle:
小白的大神之路,我可是註定要成為大神的海賊王 !!!
哎,對了,再加一句。 我落戶簡書了,看著挺簡潔的。 吐槽一句:總感覺 csdn 紅紅火火的有點俗的感覺。