如何做好程式猿?--個人心得

来源:http://www.cnblogs.com/penglei-it/archive/2017/01/19/feel_other.html
-Advertisement-
Play Games

摘要 在寫這篇文章之前,自己思索了很多,也是因為一些事情觸發了自己,使得自己想寫這麼一篇文章。也算是對2016年自己的一個總結吧。 正文 先說說我自己吧!本人16年於一所二本學校畢業,考過研,夢想著上北航,結果卻因政治考的太差沒能上,說起來很慚愧。英雄都不提往事,何況我這一個失敗的狗熊呢!不,是失敗 ...


摘要

       在寫這篇文章之前,自己思索了很多,也是因為一些事情觸發了自己,使得自己想寫這麼一篇文章。也算是對2016年自己的一個總結吧。 正文        先說說我自己吧!本人16年於一所二本學校畢業,考過研,夢想著上北航,結果卻因政治考的太差沒能上,說起來很慚愧。英雄都不提往事,何況我這一個失敗的狗熊呢!不,是失敗的程式員。好吧,有點亂,這事就算翻篇了。進入正題吧。          在得知自己考研失敗的消息後,於3月份來到武漢,在一個骨灰級別的IT公司找了一份實習生的工作。當時真的很佩服自己,因為考研的原因,自己差不多半年的時間沒有編程,在學校的時候學習的是.Net。在找這份實習的工作之前,自己僅僅花了5天的時間看了一下Java基礎中Servlet的知識。當然這也就導致了我入職後感覺工作非常困難,當時公司使用的是大家熟知的SSH框架,入職的第一個月自己每天搞到晚上2點,為的就是儘快熟悉自己目前所用到的知識和瞭解公司的框架(公司是專門做CRM系統的,有10多年的技術沉澱,整個框架封裝的非常厲害,想看懂確實得花一些時間,尤其對於我這種)。大概工作到六月份,請了20天的時間回校答辯。在公司這段時間,認識了一些新的朋友,新的同事,他們的工作年限從0-10年不等,自己確實也學到了一些東西。不過當時可能是由於自己剛畢業,很多東西不懂,所以每次領導分配的任務,自己都很擔心,害怕自己完成不了。對於項目,做完一個功能後,也沒有仔細測測,當時的一種心理狀態是,自己做的東西自己都害怕用,因為擔心會出bug。對於公司領導當時宣揚的一種工作狀態是:樂於接受問題,積極主動接受任務,少出BUG。如果滿分是100分的話,自己50分估計也得不到。               時間過的很快,畢業答辯也已完成,然而自己卻猶豫了,呆在這樣一個公司,一個框架封裝的這麼厲害的公司,一年以後自己出來,會不會什麼都不會了,和所有人一樣,我想進入一個互聯網的企業。所以我決定辭職了。          辭職後花了3天的時間面試,一天3家,面試了9家,收到了5個offer.後來自己選擇去了某電商公司,來到一個新的環境一切都是陌生的,但自己的心態和最初參加工作有了一些不一樣,我不在害怕了,我覺得任何技術只要肯學習,就一定可以學會。這家公司採用的是springmvc+doubbe+zookeeper的分散式結構。這次自己感覺到有些膨脹了,這些我都不懂,可是卻沒有一絲害怕。在四個月的時間里自己分別接觸了Redis,Mongdb,springmvc+doubbe+zookeeper,ElasticSerach,微信等等以及一些前端常用的知識。在項目中我也表現的很積極,只有有時間,就去鑽研這些自己不懂的地方,雖然有些原理還不是很懂,但是熟練的運用是沒有問題。也許是由於自己表現積極的原因,轉正工資公司給的稍微比普通應屆生要高一些。而項目經理也開始讓我負責一些項目。而這個時候自己的想法又發生一些改變。自己初出茅廬,不懂得地方還有很多,如何才能讓自己成為一個優秀的程式員呢?對於自己負責的項目,如何做才能使得項目達到最優。於是我給自己定了一些計劃。               每天早上我會提前一點時間到公司,我會看看其他同事寫的代碼,看看他寫的優秀的地方,我覺得這也是一個能提高自己的地方。可是正是由於自己天天看的原因,我發現代碼中其實有很多需要改進的地方。 諸如:
  • 需要動態配置的地方沒有動態配置,直接寫死在代碼中,不利於後期的維護
  • 重覆的new對象,沒有做到對象的重覆使用,使得大量的記憶體被消耗
  • 大量的重覆方法,沒有封裝為utils,供大家使用,造成浪費了很多開發時間
  • 代碼的抽象程度不高,一個類有的超過千行
  • 需要使用Redis提高頁面載入速度的地方,沒有使用Redis
等等一些諸如此類的問題。          對於有強迫症的我而言,這點讓我很煩。當然我讓他們改,他們的態度都是拒絕的,覺得可以用就行。但是站在程式員的角度,我覺得這些得過且過的想法是不可取得.所以我在想,那些號稱有多少年開發經驗的人,他們真正的達到了一個優秀程式員的程度嗎?這也許就是他們若幹年來,依舊是一個程式員的原因吧(不喜勿噴,我只是說出個人想法)。   所以我覺得一個優秀的程式員應該具備如下幾條:
  1. 有嚴謹的工作態度。
  2. 對自己的代碼能夠負責。
  3. 有積極的心態樂於接受問題的存在和改正問題
  4. 學無止境:程式員的世界需要學習的東西很多
這大概是自己一年來的一個感受。希望在新的一年裡,諸多程式猿們大家一起學習,我的格言是--我不夠優秀,但是我會努力讓自己變得優秀!  

結語

如果你還需要瞭解更多技術文章信息,請繼續關註白衣秀才的博客
個人網站:http://penglei.top/
Github:https://github.com/whitescholars
微博:http://weibo.com/u/3034107691?refer_flag=1001030102_&is_all=1
     
您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 一. 寫在前面 我這篇分享是很基礎的東西 我希望愛技術的你不要錯過exceptionless和ELK,當然你也可以用nosql+搜索技術比如es。 日誌系統對於任何項目都是必不可少的,無論對於測試階段的debug,性能測試,執行時間,操作記錄還是線上的問題排查,訪問記錄等,日誌系統都扮演著重要的角色 ...
  • 配置錯誤 不能在此路徑中使用此配置節。如果在父級別上鎖定了該節,便會出現這種情況。鎖定是預設設置的(overrideModeDefault="Deny"),或者是通過包含 overrideMode="Deny" 或舊有的 allowOverride="false" 的位置標記明確設置的。 ...
  • 在使用Ajax.Pager進行分頁的時候需要註意一下幾個方面: 1、一定要引入jquery.unobtrusive-ajax.min.js這個js; 2、一定要在頁面中使用註冊分頁器,註冊方法:@{Html.RegisterMvcPagerScriptResource();}; 具體的使用方法示例: ...
  • 作為一名使用C#語言開發人員,就很難逃脫與SQLSERVER打交道,雖說我們是開發人員,但我想說的是,對資料庫的操作還是應該時不時的拿出來溫習一番。下麵那就是我見過的一道有趣的SQL題目,與你們一起分享! 題目:在我的TeamPK資料庫中有一個叫department的表,裡面只有一個欄位name,一 ...
  • 問題描述:為了在C#中執行js腳本,在一個目標平臺編譯為Any Cpu的.NET程式集中引用了MSScriptControl組件,在winform程式中,調用這個程式集中的執行js的方法,沒有任何問題。但是在windows服務中調用卻報錯,報錯信息如下: 在嘗試過很多方法之後仍然沒有解決,包括將MS ...
  • 當獲取一個類型(class)的所有屬性時,想排除指定屬性,該如何操作? 比如:EF中一個實體類型UserEntity,通過反射獲取這個類的屬性時,想排除這個為映射的欄位ID 使用以下方法即可! 參考:http://stackoverflow.com/questions/2051834/exclude ...
  • 根據此鏈接博文學習配置: http://www.cnblogs.com/zyw-205520/p/4767633.html 1.JDK的安裝 自行百度,(最好是jdk1.7版本的) 測試如下圖,即完成jdk的安裝 2.MyEclipse安裝 自行下載安裝即可,(我使用的是2013版的) 3.Tomc ...
  • 1、隱藏tomcat版本: ①執行命令:cd /usr/local/tomcat_web/lib/ && ll 我們需要對catalina.jar進行解壓(最好提前先備份一下) ②執行命令:unzip catalina.jar 這時候會多出META-INF和org兩個目錄,找到org/apache/ ...
一周排行
    -Advertisement-
    Play Games
  • 前言 本文介紹一款使用 C# 與 WPF 開發的音頻播放器,其界面簡潔大方,操作體驗流暢。該播放器支持多種音頻格式(如 MP4、WMA、OGG、FLAC 等),並具備標記、實時歌詞顯示等功能。 另外,還支持換膚及多語言(中英文)切換。核心音頻處理採用 FFmpeg 組件,獲得了廣泛認可,目前 Git ...
  • OAuth2.0授權驗證-gitee授權碼模式 本文主要介紹如何筆者自己是如何使用gitee提供的OAuth2.0協議完成授權驗證並登錄到自己的系統,完整模式如圖 1、創建應用 打開gitee個人中心->第三方應用->創建應用 創建應用後在我的應用界面,查看已創建應用的Client ID和Clien ...
  • 解決了這個問題:《winForm下,fastReport.net 從.net framework 升級到.net5遇到的錯誤“Operation is not supported on this platform.”》 本文內容轉載自:https://www.fcnsoft.com/Home/Sho ...
  • 國內文章 WPF 從裸 Win 32 的 WM_Pointer 消息獲取觸摸點繪製筆跡 https://www.cnblogs.com/lindexi/p/18390983 本文將告訴大家如何在 WPF 裡面,接收裸 Win 32 的 WM_Pointer 消息,從消息裡面獲取觸摸點信息,使用觸摸點 ...
  • 前言 給大家推薦一個專為新零售快消行業打造了一套高效的進銷存管理系統。 系統不僅具備強大的庫存管理功能,還集成了高性能的輕量級 POS 解決方案,確保頁面載入速度極快,提供良好的用戶體驗。 項目介紹 Dorisoy.POS 是一款基於 .NET 7 和 Angular 4 開發的新零售快消進銷存管理 ...
  • ABP CLI常用的代碼分享 一、確保環境配置正確 安裝.NET CLI: ABP CLI是基於.NET Core或.NET 5/6/7等更高版本構建的,因此首先需要在你的開發環境中安裝.NET CLI。這可以通過訪問Microsoft官網下載並安裝相應版本的.NET SDK來實現。 安裝ABP ...
  • 問題 問題是這樣的:第三方的webapi,需要先調用登陸介面獲取Cookie,訪問其它介面時攜帶Cookie信息。 但使用HttpClient類調用登陸介面,返回的Headers中沒有找到Cookie信息。 分析 首先,使用Postman測試該登陸介面,正常返回Cookie信息,說明是HttpCli ...
  • 國內文章 關於.NET在中國為什麼工資低的分析 https://www.cnblogs.com/thinkingmore/p/18406244 .NET在中國開發者的薪資偏低,主要因市場需求、技術棧選擇和企業文化等因素所致。歷史上,.NET曾因微軟的閉源策略發展受限,儘管後來推出了跨平臺的.NET ...
  • 在WPF開發應用中,動畫不僅可以引起用戶的註意與興趣,而且還使軟體更加便於使用。前面幾篇文章講解了畫筆(Brush),形狀(Shape),幾何圖形(Geometry),變換(Transform)等相關內容,今天繼續講解動畫相關內容和知識點,僅供學習分享使用,如有不足之處,還請指正。 ...
  • 什麼是委托? 委托可以說是把一個方法代入另一個方法執行,相當於指向函數的指針;事件就相當於保存委托的數組; 1.實例化委托的方式: 方式1:通過new創建實例: public delegate void ShowDelegate(); 或者 public delegate string ShowDe ...