【51CTO學院三週年】編程成長感悟, 基於R,Python和JAVA

這是我本身編程技能提高途徑的總結,主要有如下三點:python

  1. 業務驅動,修煉技能shell

  2. 合做需求,擴展技能編程

  3. 我的興趣,不爲金錢,只爲快樂和創造
    數組



最近剛入職兩個月, 一樣從事的是生物信息分析, 之因此從事當前這個行業, 緣由在於讀大學時幾乎大多數的專家, 高級知識分子都提出「21世紀是生命科學的世紀」, 因而當時讀的是生物科學專業。併發


但是編程技能,在大學我掌握的只有C語言, 並且對於C語言的指針感到一片茫然, 固然這跟我當時讀的專業幾乎沒有任何關係。ide

第一點我爲何要從新學一門語言-python函數

畢業後, 出於對編程的熱愛, 我開始學習Python, 固然這是跟我研究生階段的業務需求有關的, 對生物基因序列的批量分析迫使我必須掌握一門語言,「人生苦短, 我用python」, 在這個過程當中,我漸漸明白,或許生物跟計算機的結合能夠給本身帶來巨大的職業發展空間。學習


我熱愛編程, 我也喜歡python, 這也有養成了個人代碼風格,遇到條件判斷和循環語句必需要有代碼縮進, 但是接下來的學習過程依舊是業務驅動的,因爲科學分析方法須要用到統計模塊, 我開始學習R,在這個過程當中, 我掌握了R的入門技能,遇到不會的我就上網搜索,也及時從51cto裏找到了不少我須要的學習材料,下載了Beginning R英文版,還有C程序設計語言(K&R)。spa


對Python和R基礎的掌握,使我謀得了人生的第一份工做- 助理生物信息分析工程師,雖然說薪水不高,但這是一個起點, 我會繼續學習。設計


這是我學習編程的第一階段,到後來我發現生物信息分析這個行業在國外已經發展了很久了, 高手已經不少,想要成爲高手的道路依然遙遠。


第二點爲何學習JAVA

如今是個人第二份工做 , 個人老闆是個JAVA高手,他是懂技術的,並且也對咱們這個工做組的業務十分精通,不得不說我很佩服他,要跟這個組裏的成員交流技術, 我不得不開始學習JAVA。


 在這個過程當中,我的感受JAVA語法相對囉嗦, 一段可執行的代碼必需要放在class裏才能夠執行, 只是咱們老闆的代碼只用到了string和 string數組就幾乎把咱們的全部業務都解決了, 偶爾要作一些圖形展現,也沒有用到JAVA, 依舊用的是R, 因此我在JAVA裏沒有打算繼續深刻學習, 只掌握了ArrayList和HashMap 這兩種數據類型的基本運用,並且老闆也強調了,咱們不須要太多高大上的,花裏胡哨的東西,只要能把問題解決就能夠了。


我也深入的領悟到, 技術是爲業務服務的,業務的量和複雜度決定了技術所能達到的高度。因此,我回頭繼續學習Python, 但願掌握一些基本的爬蟲技術, 也許之後會用得上。


第三點爲何回頭學習C

隨着本身技能的提高, 一是想掌握一些計算機程序的基本原理,另外想挑戰一些有難度的,因此我回頭去看C語言的知識和文檔,另外在工做的過程當中也遇到了一些C語言的愛好者, 並且你們都說C語言的效率高, 我就試圖用C語言解決本身工做中遇到的問題, 但是我發現這是至關難實現的, 我用python一個函數能實現的思路, 在C語言裏不得不寫很長很長,並且相對難以理解的代碼, 或許是本身的技能還太粗淺, 寫代碼時也不注意註釋, 後來真的不知道本身在寫什麼了。


因此我對本身學習C語言的定位就是, 純粹爲了興趣,爲了鞏固基礎技能,不爲了業務量和速度的提高。


固然我也掌握了一些shell 和 Erlang, 想學習Erlang的初衷純粹是爲了併發編程,當時據說What‘s APP 這個應用的後臺團隊就是用Erlang語言實現的, 因此纔去學習, 雖然只是學了兩個星期,可是在後來仍是用上了一點點。


我的感受,每一個人都應該掌握一點程序設計的思惟, 由於跟不懂技術的人談技術真心累啊, 另外技術的確是服務與業務的,我也忘了聽哪位牛人說的了, 我一直謹記於心。也有不少大牛說過,不少時候, 用合適的語言去開發好的產品纔是重要的。


我成長的路還有很遠很遠, 但願能繼續在51cto學院,在這個博客向各位大牛學習。


我正在參與「51CTO學院三週年,我在學院不得不說的收穫」徵文活動,參與就有獎~你也來看看吧~ 週年慶  更多精彩活動敬請期待!

         活動地址: http://51edu.blog.51cto.com/8899635/1775394

相關文章
相關標籤/搜索