天天看點

.NET進階篇-醜話先說,Flag先立

知識隻有經過整理才能形成技能  

内容目錄

一、煩惱絲1、技術池太淺2、幹貨太少3、記性太差二、章節分布1、大綱2、簡介二、後話

一、煩惱絲

1、技術池太淺

作為開發者,工作了幾年,也總覺得技術棧和剛畢業差別不大,用的技術還都是N年前的,每每看到新東西,也隻心裡哇塞驚歎一下,然後就回歸于忙碌。怪自己的

技術池太淺

,熱門的令人稱奇的技術也都是在其他巨人的肩膀上産生,但自卑還沒夠到巨人肩膀,便覺得新技術(相對于自己的技術程度)離我們好遠,對它也無能為力,不了解能否解決目前的痛點?應用成本高嗎?就像爬山1W個台階,站在9K台階處的人就會覺得容易些,站在1k台階處的就感覺高不可攀。邁出第一步,跟上前面登山的人。

  經常會看見公司架構裡那些前人寫的代碼,還是.NET早些版本1.0,2.0時代的,雖然文法還比較low,但設計卻讓人驚奇,身邊也少見架構師可以求問學習。咱是從事GIS行業開發,可能着重在于GIS功能的開發,其實有點

本末倒置

。GIS隻是開發中的一個插件,我們的根本應該還是要先把.NET玩溜,很多像性能瓶頸、版本相容跨平台等問題也就迎刃而解。

2、幹貨太少

  有時候看不懂的設計代碼就去查,當下明白了,某天又忘記了,也不會使用。網上資源太多隻能用來解決某個特定問題,如某個bug,某個安裝,這是你快速解決遇到的某個問題的好途徑。系統的提升還是需要有個全局系統的知識脈絡,像書籍,課程。在系統性的學習之後,會對.NET有個相對全面認識,工作中遇到的一些棘手問題,也都有對應成熟解決方案,根本不會說解決不了,隻能曲線求國。很簡單的功能設計因為認知不足,浪費大量的人力,設計出龐大難以維護的系統,這是開發者最不能期許的。還有目前.NET很熱很成熟的架構都用到進階文法(僅差別于基本文法),反射啊,委托啊、異步多線程啊,還有很多令人拍案叫絕的設計思想。不整明白以後更加忐忑,對新技術淺嘗辄止也不會剖析更不敢應用到實際項目中,

永遠隻是個旁觀者,隻在山腳下叫苦

想起大學時不務正業沒正經上過幾次課,畢業前開始有點恍惚,逼着自己系統學習了下C#基礎,雖然輕松畢業就業,就業後做過.NET的CS/BS開發,做過Java的BS開發,但都是了解了基本文法就提槍上陣了,靠運氣躲過技術難題。那時沒想到要整理,好多書籍課程資料也因搬家都丢棄了。有些時候忘記的知識點還要去網上查找,一下找着正确的還好,找不到又還看到部落格論壇還在轉發一個錯誤的示範(我知道有可能隻是環境不同沒能像文中描述那麼順暢),心裡就開始mmp了。

是以寫技術文章,一定要經過驗證,交代自己的驗證環境。

3、記性太差

這次準備把自己整理時候的知識點記錄下,按俗套姑且取名

.NET進階篇

,以便自己以後查閱,

好多東西你一定做過,但你就是暫時想不起來了

。爛筆頭記一下,想不起來也好找。自己動手記錄,會不自覺看很多遍,修改很多遍,思路也會更加清晰。作為職業Coder,說實話寫文章方面文筆就糙了點,大多時候寫字随心所欲,與其咬文嚼字,不如多關注些自己知識的盲區。但會盡量要求代碼比文字嚴格精煉,一行代碼勝千言就更好。

二、章節分布

1、大綱

我會在整理了一些知識點的時候發出來,連着白瞟好幾集的感覺應該很爽。整個進階篇的章節分布如下(後面估計會調整,大章節分布不會變,可能納入些新的東西)。

.NET進階篇-醜話先說,Flag先立

我用了一個新的輕薄本(本來買來專作開源GIS的,都快落灰了,如果能堅持把這一系列寫完,它也算立大功了),宇宙最強IDE-VisualStudio 2019(線上安裝比較慢,離線包有20G左右,後面會上傳),在周末假期做拆解,合并,驗證,整理工作(原諒咱工作日很難跳出工作狀态,下班有空也多是關注工作中遇到的問題)。一個知識點的相關書籍課程拆出來,為了保證品質,可能需要挺長時間。希望做到

一個知識點看這一篇就夠了的地步

。直接複制安裝可用的架構代碼咱還沒能力整理出,此篇更多的是指導思想、原了解析,以點帶面,當然會用些經典小例子,是以别太指望能直接複制粘貼到自己系統中F5就能運作成功。

定位是高度總結概括,面向抽象

,比如像正則可能就不會介紹,咱也記不住。到了應用的細節地方可能還需要去查閱詳盡的資料,但知道怎麼用,怎麼查,出問題也不慌張,面對新奇熱門的架構也不怵,這是咱期望的。

2、簡介

語言章會讓你認識C#一些進階的語言特性原理,作為後面的鋪墊,設計架構離不開這些東西。設計章總結常用的設計套路,不敢說融會貫通下筆如有神,起碼會讓你編碼過程中能嗅出設計的壞味道,然後着手重構,重構的過程,會慢慢發現自己的設計竟然和成熟架構設計思想越來越像、如出一轍。架構章會了解常用架構的原理應用,工作中可以快速選型和應用,也對目前開源.NET環境深入認識。

當然,

做的越多錯的越多

,沒有信心說沒有錯誤,更歡迎讀者能指出來。一起進步,少走彎路,促進行業發展,社會進步。沒錯,我的夢想是推進世界進步。我們能遇到的每個問題都在某個地方被某人解決過,交流是一種快速且有效的處理問題方式。讀書旅行交友都是在交換着我們對世界的認知,了解的越多,被你掌控的事物就越多。我們随時都有Plan B,還怕啥。

二、後話

其實語言層面很多.NET開發者不願承認,Java熱度确實總比C#高,以前也覺得.NET挺low的,給人總是後知後覺的感覺,畢竟商業運作嘛,要經過很多過程抉擇的。一方面可能與我從事的行業相對網際網路比較閉塞有關,實際用到的.NET技能也不是很多,也沒有大而全的認識。另一方面也與我慵懶佛系的性格有關吧,不争第一,凡事隻做第二就好。千年老二其實挺好的,恰到好處,有餘力有餘地。

是以也沒想過切換自己的主語言,如果需要Java開發者,一個優秀的.NET開發者肯定也能冒名頂上。語言真的是一通百通,設計思想更是放之四海而皆準,隻是自己主語言開發起來會更順手罷了,就像經常開自己家的車會比較順手一樣。

一般開發者都會不止一種語言。沒有最好的語言,适合自己的就是最好的

。你第一次學習接觸的語言理應當做你的母語,如果你問我什麼是世界上最好的語言?那我不知道,我隻知道C#也會是之一。

如果手機在手邊,也可以關注下

vx:xishaobb

,互動或擷取更多消息。當然這裡也一直更新de。

.NET進階篇-醜話先說,Flag先立

繼續閱讀