• 下載頻道 http://www.gxjapp.com/down/
  • 一位程序員對待編程語言的心路歷程

    發布日期:2019-02-01 08:33:00
    Tag標簽:程序員  編程語言  心路歷程  
    •   大家在剛剛入門編程語言時或許覺得這門技術沒有那么復雜,一個編程語言只要學習就有可能收獲到全部的知識,但是經過這般歲月的流失,你是不是才發現原來編程語言這一行業也沒有自己想象中的那么容易,每一個編程語言都必須付出自己的心血,所以讓我們一起來看一看這一位程序員的心路歷程吧。

        今天給大家說說小崔的事兒,說說小崔做軟件開發這一行的事兒。

        小崔現在的本職工作是在軟件公司做管理,核心開發語言是Java。

        2000年入行,先用ASP語言開發網站、Delphi開發PC軟件、后用C#做Web開發,07年開始接觸Java,到現在10年了。今天把這些舊事翻出來,其實也沒有什么經驗可言,只是由來已久的想把這些經歷記下來,卻一直沒有認真整理,今天算是一個靈光一現,既然動筆了,便寫成了一篇文章。

        車床

        大學期間,我的專業是機械,畫過圖紙、打過鐵、鑄造過模型飛機、造過小榔頭。就是沒有正經八百的學過編程,我這人其實很喜歡研究一些神奇的知識,對于死板的東西就沒有什么興趣。因此我對機械這些東西完全沒有興趣,卻一門心思喜歡軟件開發。

        大學期間就總泡在圖書館看計算機方面的書,那時候身邊沒有做軟件開發的朋友,老師們都是專業做機械的,對計算機編程也是不懂的。因此學習起來是完全沒有頭緒,根本不知道應該如何入門,每次去圖書館都是隨便找一本書就看,看了半天也不知道到底說了點兒什么,也不知道那里面的知識怎么用于實踐。

        大學圖書館

        其實現在想想,我們大學圖書館的藏書量還是很大的,書的質量也是非常高的,但作為一個IT菜鳥,沒有一點兒的基礎,這么看書完全摸不到門徑的。可以想象這樣的學習效率也是非常的低的,基本就是保持了讀書的興趣,但對知識的攝入其實是少的可憐。

        在這個過程中,靠著小車不倒只管推的精神,我軟件硬件的書都看了些。讓我最感興趣的還是編程語言類的圖書,當時自己還是挺明確自己以后想做軟件開發的。但是具體用何種語言就不知道了,也不知道外面公司都用什么開發語言。當時已經知道的語言有Basic、C/C++、Dephi,還有Java,由于Basic是最簡單的,其實那會兒自己練習的時候更多的是學習Basic。當時記得自己寫過簡單的計算器,還練習做過簡單的畫布類的程序。

        語言無所謂

        現在想想,學習這種事兒都是在猶豫中讓時間錯過了,當時每本書拿到手里都只看前兩章,后面就難了,或者需要上機練習了,就懶得繼續學習。給自己的借口是到底哪種語言好呢?當時看不起Basic語言,覺得這個太low了。就總想學C,但C又太難了,根本學不進去。其實真正培養自己編程的感覺語言,還就是Basic那幾個特別簡單的小練習,讓自己知道了邏輯數學的核心就是判斷,編程只有順序、分叉和循環三種流程。

        所以,如果有新人看到這篇文的話,奉勸一句,別猶豫應該學習哪個語言,無論是入門還是精通,語言都無所謂,所謂觸類旁通,學會一種再學別的是很容易的。

        入行

        大學畢業后,我沒有做機械這行,直接去找的軟件開發的工作。

        但是這時候才發現,自己真是對軟件開發一竅不通,面試都通過不了。

        這時候才痛下決心得認真學門語言了。這時候也不挑了,就找簡單容易上手的語言。

        當時選的是Delphi,覺得這個語法簡單,Delphi的IDE也好用,做windows應用開發很方便。

        這時候還學習了SQL語言,其實自己根本不知道主動學習數據庫,在面試的時候被問到會SQL嗎?答曰不會。被拒。然后才開始學習SQL的。

        當時學習條件很艱苦,我舍不得買書,就每天騎自行車跑圖書大廈,白看書,一看就是一天,中午樓下買個燒餅吃。晚上回家后在電腦上試驗,寫點兒小練習。做練習也很困難,2000年初的網絡環境很差,撥號上網,網速也就是3K/秒,相當于2G時代的手機上網速度,并且網上資源很少。

        就這么學了1個多月吧,面試到一家公司,是本地一家電腦城的網站部,做網站。

        總結這段時間自學,基本來說大學時期看了好多的書還是有用的,對計算機編程多少有點兒感覺,所以一個月的自學就入門了。

        只是入門后也很尷尬,學的是Delphi,盡管靠這個找到了工作,但工作了十幾年了,幾乎沒怎么用Delphi寫過軟件。

        ASP做網站

      語言

        在第一家公司做網站,發現與自己想想的差別很大,以為有個網站部,10來個開發人員,咱可以跟前輩們學習學習。

        實際這家公司網站部就空有其名,以前的技術人員辭職走了,我去了就是唯一的程序員。

        然后一看人家的網站,發現是我從來沒見過的語言-- ASP。這是微軟早期為了簡單的小網站開發的一種Basic語法的腳本語言,可以非常快速的建站。可以理解為PHP的簡化版,也不準確,應該是PHP的超級簡化版,簡化到最簡單。

        這真是一個非常簡陋的網站,用一種非常簡陋的語言。我當時卻不懂,因為從來學軟件開發都是打算做windows應用程序,這是第一次接觸web應用程序。

        之前我僅僅接觸過web相關的HTML,那時候看了一本介紹HTML的書,也就讀了1個小時,感覺這種標簽式的語言很簡單。

        這時候算是從頭學習ASP,當時感覺壓力山大啊。

        當時辦公室有一本介紹ASP的書,我就看那邊書,然后讀網站的源代碼。硬著頭皮搞了3天左右,居然感覺通透了,可以修改網站的bug了,網站有新功能要增加,我也可以自己開發了。

        就這樣,開始了我ASP開發的兩年生涯。

        憑借ASP開發的技能,兩年內又換了兩家公司,做了好幾個網站。

        在第三家公司的時候,對于編程語言已經很嫻熟了,盡管還是主要用ASP,但偶爾也用Delphi和Asp.net做開發。那個時候,開始接觸.net開發框架了。

        .NET階段

        第三年,我跳到了所在城市最大的科技公司,這家公司是移動公司的全資子公司。

        說真的,現在看看這家公司真是臥虎藏龍,我能進去純粹憑著我這人嘴皮子還算不錯,面試做的還不錯。

        當時在這家公司我還是負責做網站,不過那個網站的體量就不同了,是全省范圍使用的營業廳網站。而開發語言也采用C#了,那是微軟的.NET開發框架里的一種開發語言。

        現在想想,我也不知道怎么就學會這門語言了,在我的印象中,我后來再學各種語言似乎都挺簡單的,公司需要或者個人興趣要用到新的語言,拿過來手冊看看,然后把開發工具裝好寫幾個練習,這門語言就入門了。基本也就兩三天的功夫。

        其實真不用覺得快,我后來跟同行們聊天,基本對于新語言的理解都是這樣,學習一門語言很容易。

        這個階段我成長比較快,負責過省里的項目、參與過集團的的項目,跟IBM、惠普,還有國內的各大廠家都有過合作,逐漸開始負責項目,擔任項目經理了。

        Java生涯

        07年的時候,公司要求技術轉型,全體員工一條線,全部改用JAVA。當時正好有一個新項目要開始,與IBM合作開發,IBM的牛人幫我們搭建了Struts+Spring+Hibernate的框架。大家學了1星期,就開始了JAVA開發之路了。

        當時都是使用Struts2+Spring3+Hibernate3這樣的架構。用了1年后,逐漸發現Struts這個架構實在有問題,性能、安全性都不好,開發還不友好。

        當時不太懂得軟件行的思想 -- 不重復造輪子,結果自己摸索著基于Servlet做了一個封裝,自己寫了一個簡單的MVC框架。現在想想有點兒無知者無畏,不過也確實把Java的東西摸熟悉了。

        后來發現SpringMVC框架是如此優秀,再看自己寫的框架,太Low了,就改行用SpringMVC+Spring+HIbernate。

        后來帶項目的時候,發現手下的新人用Hibernate的時候,經常會寫出性能很低下的代碼,感覺這是Hibernate天生決定的,適合有經驗的人使用,新人使用開發效率是高了,但執行效率太低了。

        因此開發框架又改為SpringMVC+Spring+MyBatis,最早用的時候還是iBatis,后來才是MyBatis。

        現在看看,Hibernate的那些問題完全可以通過加緩存來解決的。

        最新推薦的架構

        這兩年,在Java的開發框架上,采用的SpringBoot提供底層微服務,向上暴露出RestFul接口。表現層采用Nodejs。結構巨優雅。

        結束語

        今年41歲了,在30歲的時候就經常聽到有人說快干不動了,以后不寫程序了,要做管理、要做市場。

        我覺得也沒錯,現在主要是做管理,市場方面也離不開我,不過編程這么好玩兒的事兒,為什么要丟棄呢?這是我這樣一個老程序員的最喜歡的游戲,愛好是一輩子的事兒,怎能放棄。

        寫下來,也不是說介紹經驗,我始終覺得自己不是個成功人士,但是在技術方面還是挺自豪的。只是希望有興趣做軟件這行的新人,看了我的經歷,得到一些鼓勵,只要堅持就一定能學好軟件開發的,入了門其實這行很簡單。

        時間就是這般如流水一樣不打擾每一個人不驚動每一棵樹默默的就這樣過去了,我們一直覺得時間很長,長到我們好像一輩子都過不完,但我們看到這篇文章以后終于明白時間其實沒有你想的那么慢。

    次元立方 - 廣告服務 - 隱私聲明 - 版權申明 - 免責條款 - 網站地圖 - 網友投稿 - 聯系方式
    本站內容來自于互聯網,僅供用于網絡技術學習,學習中請遵循相關法律法規
    三级网址