"沒有小角色,只有小演員",這是出自周星馳電影《喜劇之王》中周星馳扮演的尹天仇隨身攜帶的書--《演員的自我修養》。
最近達叔的離世,讓我感慨萬千。做爲在中國土生土長的90後,也算是看着達叔的電影長大的,尤爲是他和周星馳合做拍攝的電影,給我帶來了不少的快樂。前端
這段時間我又從新溫習了一遍《喜劇之王》,在瞭解了達叔的人生經歷以後,回頭再細細品味達叔的做品,讓我不得不敬佩達叔的職業素養:即便常年只演配角,沒有多少戲份,卻依然不忘磨練本身的演技,把每場戲都看成主角來演。只憑借出演配角和小角色就能出名的,相信惟有達叔一人了。react
想到這兒,我不由想起了我以前讀過的一篇文章,文章的內容大概是說:一我的的修養決定了一我的的發展上限。達叔只憑借演配角就能在羣星璀璨的演藝圈留下濃墨重彩的一筆,可見他的演員修養是極高的。程序員
這裏我再舉一個咱們身邊的例子:咱們不少人從大學畢業出來找工做後,當時你們的差距仍是很是小的。但是爲何隨着時間的推移,你們之間的差距會變得愈來愈大呢?而那些最出衆的,也不必定是那些最聰明或者在學校成績優異的那幫人?這是由於學校裏的那套評判標準,是沒法去衡量一我的的價值乃至修養的,而真正能衡量這一切的是社會。數據庫
說了這麼多,咱們言歸正傳,做爲一名Android程序員,咱們如何才能提升咱們的自我修養呢?編程
經過不斷提升咱們自身的修養,才能不斷突破咱們的職業天花板,讓咱們的將來充滿無限可能。
如何才能提升咱們的自身的自我修養呢?由於我是從事Android開發,這裏我就以Android程序員的視角,來闡述咱們提升自我修養的六大要素。後端
對技術保持持續性的熱愛是提升自身修養的先決條件。
俗話說,興趣是最好的老師。因爲信息技術突飛猛進的變化,這就要求咱們從業者必須具有極強的自學能力,而保持對技術的熱情能夠爲咱們自學提供無窮的能量。react-native
對技術的熱愛是程序員的靈魂,一個沒有了靈魂的程序員註定會淪爲一臺沒有感情的搬磚機器。 很難想象一個已經對技術失去熱情的人,還可以在技術的道路上走多遠。設計模式
那麼如何才能保持對技術的熱情呢?微信
保持對新技術的好奇心
。只要保持一顆好奇心,咱們纔會不斷地學習,不斷地嘗試新技術。保持技術的成就感
。多作有挑戰性的技術或者事情,這樣才能得到技術上的成就。若是天天作的都是千篇一概的事情,得到不了技術上的成就,那麼熱情逐漸冷淡是必然的。保持旺盛的精力
。很難想象一個終日無精打彩的人能對技術有什麼熱情。其實,熱情這東西是虛的。並非咱們有了熱情就能作成每件事的,而是咱們作成了每件事得到相應的成就後,才能產生熱情的。而後熱情又會推進咱們更加努力地作去每件事,從而造成一個正向的反饋。網絡
優秀的程序員,拒絕花裏胡哨。
在這個信息爆發的時代,技術的更新迭代是突飛猛進的。可能你前腳剛捂熱的新技術,後腳就涼了...
就拿咱們移動端的混合開發技術來講吧,兩年前我還在使用react-native
來寫跨平臺應用,可兩年後我就轉用flutter來寫了。誰能曉得N年後我在用什麼技術來寫這些應用,說不定N年後都已經沒有移動端的概念了。
其實不管混合開發的技術變成啥樣,只要你搭載的操做系統仍是那個Android或者IOS,對咱們來講就是換湯不換藥,沒有本質上的區別。只要你把原生開發技術掌握紮實,換什麼技術不能作?
因此,盲目地去追捧或者是學習新技術實際上是不太理智的。
所謂的基本功,也就是基礎知識,是那些亙古不變的真理。 任何技術都有其基礎知識,計算機也不例外。掌握了它們咱們就可以融會貫通,這也是科班出來的程序員比半路出家的程序員的優點所在。
這裏我就以Android技術爲例子,其基本功主要有:計算機組成原理、操做系統(Linux)、計算機網絡、數據庫、數字電路、Java語言基礎和設計模式等。
千萬不要認爲你會寫幾個界面、幾個App,能在Android設備上跑了,就是掌握Android這門技術了...其實這些在我看來,都是一些皮毛而已。不掌握這些基本功,你是永遠沒法提高本身的技術水平的。
記得之前看過《倚天屠龍記》裏面的一個片斷:張三丰教張無忌太極拳的時候,張無忌只學習了一遍就學會了。爲何張無忌可以學得這麼快?這是由於他學會了九陽神功,內功大增,基礎夠紮實,像太極拳這種招式固然就一學就會啦。這裏內功就比如我說的基本功,太極拳這一類的招式就比如我說的某一項技術。
因此,掌握紮實的基本功,是爲了咱們可以更加快速地學習一門新的技術,這樣咱們就能在突飛猛進的技術迭代中立於不敗之地。
學習一門技術, 掌握如何去使用只是你邁出去的第一步,後面更重要的是要追本溯源,深究其底層實現原理。說到底,不少技術本來就是相通的,你對技術掌握的深度,決定了你在這條道路上可以走多遠。
咱們在學習任何技術的時候,要作到知其然而且知其因此然,切忌只停留在使用的層面。
試想一下,你做爲一名Android開發,天天都在和Activity或者Fragment打交道,若是忽然有一天有人問你Activity是如何啓動的,而你卻答不上來,豈不是很尷尬?
作了這麼多年的Android,我總結出一條規律:在解決問題沒有任何思路的狀況下,看源碼理解其實現原理,每每可以提供很是好的解決思路。
那麼怎樣才能幫助咱們掌握一門技術的實現原理呢?
成功的人每每也是最自律的那波人,這在作技術領域也一樣適用。
那麼在技術領域,咱們要怎樣才能作到嚴於律己寬以待人呢?
記住一點,你有多自律,就有多自由。
勤于思考,善於總結,這幾乎是每一個成功人士必備的基本素質。
人之因此爲人,是由於咱們擁有了思考的能力。現代的科學、科技,哪同樣不是人類思考的結晶?思考幫助咱們提升了效率,節省了時間,下降了成本。
若是一件事情,你作過一遍又一遍,但每次只是重複上一次的操做,不進行任何思考的話,那麼這件事情即便你是幹上一千遍,也不會有多大的進步。
初級程序員只會使用框架,中級程序員會修改框架,而高級程序員則會創造框架,這其中的區別就在於思考的頻率以及深度。
俗話說,一我的的成長每每伴隨着痛苦。這是由於只有去穿越和反思痛苦,才能獲得遠高於常人的思想深度。一個作任何事情都一路順風的人,是很難有所成長的。
只會思考,而不善於總結的話,那麼思考的成果將會大打折扣。這是由於一我的的經驗和能力,須要通過實踐->思考->總結這三個過程而來,而總結在其中則起到了相當重要的做用。
那麼常常總結能夠爲咱們帶來哪些好處呢?
不管你是作前端仍是後端,不管你是純作技術仍是硬懟業務,咱們都要敢於嘗試,敢於探索,嘗試成功的話也要樂於分享其中的收穫。
作技術要講情懷,天天重複去作某件事情或者某項工做,都會極大地消耗咱們對技術的熱情。這就比如你在打通關遊戲,若是你每關遇到的boss都是同一個,技能和難度都是同樣的,那打起來是多麼無聊?
因此在條件容許的狀況下,咱們必定要敢於嘗試,不怕失敗。由於只要你作成了一件事情,其帶來的成就感必定會遠遠大於你作普通工做所帶來的成就感,而這些都將使你脫穎而出,成就不凡。
那麼咱們能夠嘗試那些內容呢?
固然敢於嘗試不等於無所畏懼地冒風險。在嘗試以前必定要進行風險評估,作有把握的嘗試,這樣即便嘗試失敗了,也不至於有什麼大的損失。
這裏可能會有人問道:
其實否則,分享可能爲咱們帶來不少好處:
不管咱們從事何種職業,咱們首先都要熱愛它,並把提高自我修養做爲一項重要的事情去作,這樣才能幫助咱們在將來的道路上越走越遠。
我是xuexiangjys,一枚熱愛學習,愛好編程,勤于思考,致力於Android架構研究以及開源項目經驗分享的技術up主。獲取更多資訊,歡迎微信搜索公衆號: 【個人Android開源之旅】