知識只有經過整理才能形成技能
內容目錄
一、煩惱絲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、大綱
我會在整理了一些知識點的時候發出來,連著白瞟好幾集的感覺應該很爽,整個進階篇的章節分布如下(后面估計會調整,大章節分布不會變,可能納入些新的東西),

我用了一個新的輕薄本(本來買來專作開源GIS的,都快落灰了,如果能堅持把這一系列寫完,它也算立大功了),宇宙最強IDE-VisualStudio 2019(在線安裝比較慢,離線包有20G左右,后面會上傳),在周末假期做拆解,合并,驗證,整理作業(原諒咱作業日很難跳出作業狀態,下班有空也多是關注作業中遇到的問題),一個知識點的相關書籍課程拆出來,為了保證質量,可能需要挺長時間,希望做到一個知識點看這一篇就夠了的地步,直接復制安裝可用的框架代碼咱還沒能力整理出,此篇更多的是指導思想、原理決議,以點帶面,當然會用些經典小例子,所以別太指望能直接復制粘貼到自己系統中F5就能運行成功,定位是高度總結概括,面向抽象,比如像正則可能就不會介紹,咱也記不住,到了應用的細節地方可能還需要去查閱詳盡的資料,但知道怎么用,怎么查,出問題也不慌張,面對新奇熱門的框架也不怵,這是咱期望的,
2、簡介
語言章會讓你認識C#一些高級的語言特性原理,作為后面的鋪墊,設計框架離不開這些東西,設計章總結常用的設計套路,不敢說融會貫通下筆如有神,起碼會讓你編碼程序中能嗅出設計的壞味道,然后著手重構,重構的程序,會慢慢發現自己的設計竟然和成熟框架設計思想越來越像、如出一轍,框架章會了解常用框架的原理應用,作業中可以快速選型和應用,也對目前開源.NET環境深入認識,
當然,做的越多錯的越多,沒有信心說沒有錯誤,更歡迎讀者能指出來,一起進步,少走彎路,促進行業發展,社會進步,沒錯,我的夢想是推進世界進步,我們能遇到的每個問題都在某個地方被某人解決過,交流是一種快速且有效的處理問題方式,讀書旅行交友都是在交換著我們對世界的認知,了解的越多,被你掌控的事物就越多,我們隨時都有Plan B,還怕啥,
二、后話
其實語言層面很多.NET開發者不愿承認,Java熱度確實總比C#高,以前也覺得.NET挺low的,給人總是后知后覺的感覺,畢竟商業運作嘛,要經過很多程序抉擇的,一方面可能與我從事的行業相對互聯網比較閉塞有關,實際用到的.NET技能也不是很多,也沒有大而全的認識,另一方面也與我慵懶佛系的性格有關吧,不爭第一,凡事只做第二就好,千年老二其實挺好的,恰到好處,有余力有余地,
所以也沒想過切換自己的主語言,如果需要Java開發者,一個優秀的.NET開發者肯定也能冒名頂上,語言真的是一通百通,設計思想更是放之四海而皆準,只是自己主語言開發起來會更順手罷了,就像經常開自己家的車會比較順手一樣,一般開發者都會不止一種語言,沒有最好的語言,適合自己的就是最好的,你第一次學習接觸的語言理應當做你的母語,如果你問我什么是世界上最好的語言?那我不知道,我只知道C#也會是之一,
如果手機在手邊,也可以關注下vx:xishaobb,互動或獲取更多訊息,當然這里也一直更新de,

轉載請註明出處,本文鏈接:https://www.uj5u.com/net/122545.html
標籤:C#
