1. 程式人生 > >論一個程式設計師的自我修養-從一張圖片說起

論一個程式設計師的自我修養-從一張圖片說起

故事起源

本來今天想寫.NET Core實戰之CMS系統第十五篇文章的。哈,奈何今天在新生命人脈群裡面看到石頭哥分享的一張圖片,然後大家就議論了起來,不過我看的很懵逼,這圖什麼意思啊?當一個朋友講述了這個圖片背後的故事的時候,瞬間淚奔了!先上圖,第一眼看很平淡,一個苦逼程式猿在加班,旁邊那個是布娃娃嗎?反正我第一眼看就覺得是布娃娃!

1547090181521

程式猿加班,為什麼配圖文字說“孩子他媽說,以後可不能讓他當程式猿”呢?

這時候這個說說的作者就發話了,通過它瞭解到,故事是這樣的:

這個圖,是我今天在手機上翻到的,qq裡的那年今日。我記得好像是一天吃完晚飯,石頭帶著一凡回公司繼續加班幹活,嫂子去哪忘記了。石頭就把一凡往電腦旁邊一放,繼續幹活。配圖的文字好像是我加的,忘記了!

啊 ,我想起來了! 配圖的文字是這麼回事: 當時嫂子帶孩子來公司 我們在旁邊逗孩子 然後我說了一句 我說石頭開發這麼厲害 將來一凡也一定很牛逼(大體這個意思) 然後嫂子就說了“以後可不能讓他當程式設計師啊 不行”哈哈哈 然後我就記住了 !

短短的兩段話,道出了一個有責任心,有事業心,又受人尊敬而又幸福的程式設計師,但單從圖的角度來說卻又是個“坑娃”的程式設計師——大石頭(也就是今天文章的主角)!

為什麼這樣說呢?

作為程式猿你可以為了事業心責任心選擇晚上加班完成任務上線而又無怨無悔(可能還沒有加班費)!

作為程式猿你加班的時候老婆孩子居然能夠來陪你加班不可謂不幸福!

作為程式猿你在老婆有事出去讓你帶一會娃的時候,居然把那麼點大的小孩隨手丟在辦公桌上(看圖,感覺天還那麼冷)然後繼續工作,不可謂不實力演繹“坑娃”這個詞!

作為程式猿,手下人跟你關係這麼融洽,又說你技術這麼好(從逗你家娃這點可以看出)足以看出你不可謂不受人尊敬,而又讓手下人信服的好領導(技術過關,為人隨和,團隊氛圍很好)!

作為程式猿你還想怎樣?其實我想說這應該是程式猿的必備素養!因為我們程式設計師只會跟電腦打交道,溝通能力稍微弱點,很多時候不善於表達!但我們卻是一類有責任心,默默無聞,眼裡容不得半點沙子(Error/Bug)而又努力付出的一類人!大石頭的同事發的他的這張圖恰恰折射出了我們這類猿!

介紹下大石頭

大石頭是誰?我跟他認識的時間雖然不長,大概有小半年的時間,但是卻被他的為人以及技術所折服!

大石頭的部落格

他的部落格地址:“

https://www.cnblogs.com/nnhy/” !如果你進入他的部落格的話第一眼看到的就是“物聯網、大資料”!沒錯?一百億小資料的實時計算平臺也只是他隨手建立起的一套基於.Net/.Net Core的小資料實時處理計算平臺!這篇文章記錄了他的經驗,如果你想看的話可以點這裡《100億小資料實時計算平臺(大資料系列目錄)》!
他深耕物聯網領域多年,在他們的新生命團隊中自研了嵌入式作業系統,主要應用於智慧家居、物聯網、工業自動化控制等領域。在網路通訊這塊也是有頗多建樹!
他的部落格裡面太多太多的經驗分享,由於石頭哥不善寫作,因此每篇文章都是寥寥幾段話,但卻道盡了實際專案中的寶貴經驗!有興趣的自己去他的部落格看一番吧,保證有所收穫!

當然,在大石頭的部落格裡面還寫過一些列的自述,想進一步瞭解的請移步《賺錢的這些年(上)苦逼

大石頭的開源專案

大石頭(對外大石頭一直講述一定要宣稱時新生命團隊,因為這是新生命團隊的成果)的開源專案很多,最著名而又廣為我們所熟知的就是X元件了!
國內地址:http://git.newlifex.com/NewLife/X
國外地址:https://github.com/NewLifeX/X
這個元件裡面包含的東西可真不少,包括日誌、資料庫、網路、RPC、序列化、快取、Windows服務、多執行緒等模組,支援.Net Framework/.netstandard/Mono。
2002~2018,成千上萬兄弟們努力的見證!
國內文件中心:http://doc.newlifex.com/
國外文件中心:https://newlifex.github.io/XDoc/元件各組成部分

核心庫 NewLife.Core

核心元件,支撐其它所有元件。 主要功能包括:

  • 日誌 統一ILog介面,內建控制檯、文字檔案、WinForm控制元件和網路日誌等實現
  • 網路 單點最高84.5萬長連線
  • RPC 單點最高處理能力2256萬tps
  • 快取 統一ICache介面,內建MemoryCache、Redis、DbCache實現
  • 安全 AES/DES/RC4/RSA/DSA/CRC
  • 多執行緒 定時排程TimerX
  • 反射 快速反射、指令碼引擎ScriptEngine
  • 序列化 Binary/Json/Xml
  • 服務代理 Windows服務、守護、監控

資料中介軟體 [NewLife.XCode]

NewLife.XCodeXCode是一個超越了ORM範圍的對映元件,除了物件到關係資料庫的對映外,還有到網路和其它二進位制形式等的對映,所以稱之為資料對映元件。
XCode具有哪些優勢?
採用最好的分頁演算法,高效處理海量資料。
先進的多級快取思想,保證最出色的效能。
化繁為簡,容易上手。
抽象實體結構,支援多資料庫的正向反向工程。
總的來說,最好的分頁演算法保證基本操作不犯錯,化繁為簡和多級快取的設計保證XCode在效能上永無止境,所以,XCode的最大優勢就是效能!

NewLife.Redis

NewLife.Redis 是一個Redis客戶端元件,以高效能處理大資料實時計算為目標。
Redis協議基礎實現Redis/RedisClient位於X元件,本庫為擴充套件實現,主要增加列表結構、雜湊結構、佇列等高階功能。
原始碼: https://github.com/NewLifeX/NewLife.Redis
在ZTO大資料實時計算廣泛應用,200多個Redis例項穩定工作一年多,每天處理近1億包裹資料,日均呼叫量80億次;低延遲,Get/Set操作平均耗時200~600us(含往返網路通訊);大吞吐,自帶連線池,最大支援1000併發;高效能,支援二進位制序列化!如果想繼續學習這個Redis元件的話可以參考我的這篇文章《Redis基本使用及百億資料量中的使用技巧分享(附視訊地址及觀看指南)

NewLife.Cube

魔方 是一個基於 ASP.NET MVC 的 使用者許可權管理平臺,可作為各種資訊管理系統的基礎框架。

原始碼: https://github.com/NewLifeX/NewLife.Cube 演示:http://cube.newlifex.com 原始碼

國內文件中心:http://doc.newlifex.com/
國外文件中心:https://newlifex.github.io/XDoc/

具有如下特性(目前正在全面重寫成.NET Core版本):

  • 通用許可權管理,使用者、角色、選單、許可權,支援控制器Action許可權控制
  • 多資料庫,支援 SQLite / Sql Server / Oracle / MySql / SqlCe / Access
  • 免部署,系統自動建立資料庫表結構,以及初始化資料,無需人工干涉
  • 強大的檢視引擎,支援子專案檢視重寫父專案相同位置檢視,任意覆蓋修改預設介面

這個X元件簡直就是一個百寶箱,裡面包含了各種各樣的好用的元件!而且現在已經全民啊支援Core了!當然他們還有很多的開源專案我這裡就不一一列出來了!具體的你們可以自行前往檢視!

總結

大石頭恰恰折射出我們這類人——程式猿(有想私聊他的可以加入他的QQ群1600800,如果想進石頭哥的人脈微信群的話,可以加我的微信:jkingzhu備註“大石頭”我拉你進去!)!一個有責任心而又不善於表達的一類人!我們不善於言辭確能在電腦前誇誇其談!我們頭腦簡單卻又心思縝密,不放過一個Bug!我們能三五好友玩耍一天也能電腦前呆坐一天甚至忘記吃飯/忘記喝口水!我們都是同類猿!

最後附上石頭哥的一張圖,願我們“不忘初心,砥礪前行”!

1547098969436