我的開發助手之序

来源:https://www.cnblogs.com/wxdongtt2007/archive/2019/08/21/11391800.html
-Advertisement-
Play Games

本人.net 程式猿一枚,平常最大的愛好就是coding ,尤其是對c#情有獨衷,數年前,因為某個同事的一句話“大公司都有自己的代碼框架,甚至是代碼工具”,因為當時在一個小公司就職,而我也只是一個小小的團隊帶頭人,心裡就莫名有了一個想法,做一款代碼工具,一款很有自我特色,從公司項目開發,到項目維護的 ...


       本人.net 程式猿一枚,平常最大的愛好就是coding ,尤其是對c#情有獨衷,數年前,因為某個同事的一句話“大公司都有自己的代碼框架,甚至是代碼工具”,因為當時在一個小公司就職,而我也只是一個小小的團隊帶頭人,心裡就莫名有了一個想法,做一款代碼工具,一款很有自我特色,從公司項目開發,到項目維護的代碼助手,緊密貼合公司的開發框架和業務,甚至都想打上公司的LOGO,走哪裡就讓人看到這是我們公司自己的工具(當時我們經常會出差,去現場開發)。之前也用過叫做動軟代碼生成器的工具,因此動軟代碼生成器就成了我的標桿。從最初的實體類代碼生成到後面主流資料庫管理客戶端,再到各種插件及插件框架,就做到了目前開發助手V4.8.X 。
       目前做成了這個樣子:             
       從14年到現在經歷了4,5個年前,每當有空閑時間就會拿起項目coding ,一個人構思設計(前期有動軟代碼生成器,SQL 2005 作參考,後面用過 pl\sql ,pgadmin,Navicat Forsql ,NavicatForPostgreSql 也做了些功能借簽),一個人編碼,一個人測試,修複BUG及優化和完善,堅持到現在,為此犧牲掉很多周末時光,熬過很多個夜晚,感觸最深的是編寫工具的時間多,真正用在工作中的時間少。為了N年前的一句話,一個衝動的想法,為了一個新功能完成後的那份喜悅,為了心中某個情懷,對C#,對winform,自定義用戶控制項,對GDI繪圖的喜愛,一路疲憊,卻一路堅持。
       彙報一下開發助手目前的狀況:
       這是一款面向開發人員的輔助助手,它集資料庫管理(目前支持sqlserver,sqlite,mysql,postgresql),代碼生成(支持從資料庫生成實體映射類,資料庫操作DAL中間層),資料庫文檔生成,代碼收藏夾(支持C#,SQL,Javascrip,Html,XML,Python語法高亮),富文本編輯,個人記事及待辦事項提醒,插件管理等功能。目前已開發到V4.8.X 版本,後期準備擴展:資料庫關係圖,執行計劃,文本編輯器擴展多行同步編輯的功能。
       項目中主要用到了.net 4.5框架下的winform,ado.net,自定義控制項,T4模板,GDI繪圖等技術,站在巨人肩上看得更高更遠,藉助開源,擁抱開源,這裡也列出助手中用到的開源框架及技術:
      1.ICSharpCode.TextEditor 一個強大的代碼編輯器控制項來自開源項目SharpDevelop,支持c#,java,html,javascript等語法高亮,摺疊,智能提示
      2.WeifenLuo.WinFormsUI.Docking Winform程式開發中佈局控制項,可以實現類似於Visual Studio的視窗停靠、拖拽等功能
      3.Poor Man's T-SQL Formatter 一個SQL格式化的開源項目 地址:https://github.com/TaoK/PoorMansTSqlFormatter
      4.JSBeautify javascript 代碼格式化開源項目 地址:https://github.com/praveenvijayan/js-beautify
      5.NPOI 一款execel ,word 操作神器是POI 的.net 實現 地址:https://github.com/tonyqus/npoi
      6.NVelocity 模板引擎 地址:http://nvelocity.sourceforge.net/
      除此還從很多地方借鑒了不少的代碼,具體出處記不清楚了也不再列出,一併表示感謝。開源是一種精神,也是一種學習的途徑。完善開發助手的同時,通過開源也使我的技術水平得到提升,作為回報,開發助手已於2016年在碼雲上發佈源碼,歡迎大家下截和點贊。
      之前本人很懶,認為代碼就是最好的文檔,也擔心自己文筆不好,理解不深,所以一直以來沒有寫過相關的文章介紹。如今想想,誰都有一個相關的過程,就像學技術一樣,逐漸學習,步步提高,重要的是學習東西總要有點總結,為自己也為更有有共同愛好的人,所以打算後期陸陸續續寫一些關於我的開發助手相關的文章。
      今晚暫寫於此吧,最後差點忘了,貼一下開發助手的項目地址:https://gitee.com/sqlorm/DevelopAssistant
      
      
      
      


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 摘要: 大家都知道註解是實現了java.lang.annotation.Annotation介面,眼見為實,耳聽為虛,有時候眼見也不一定是真實的。 元註解: 元註解 一般用於指定某個註解生命周期以及作用目標等信息。正如源碼的註釋一樣,如果自定義的註解沒有添加元註解就和平常的註釋沒有多大的區別,有了元 ...
  • - 1.win10安裝JDK8 - 2.數據類型與變數 - 3.運算符 - 4.程式流程式控制制 - 5.數組 ...
  • 昨天花了一下午寫了一個小爬蟲,用來分析自己的粉絲數據。這個真好玩!今天幫了群里好多大V也爬了他們的數據。運行速度:每分鐘5千粉絲以上。暫時先寫成這樣,這兩天要準備補考,沒有時間繼續玩這個。 下次要改進的地方:1、多線程 2、scrapy 3、深度數據 4、分散式爬蟲 希望實現的功能: + 1、地區、 ...
  • 綁定事件: 解綁事件: 點擊事件:click 滑鼠:mousedown、mouseup、mousemove、mouseover、mouseout、mouseenter、mouseleave 對於input框:focus、blur、input input能夠實時檢測 textarea,input:te ...
  • unittest中的測試斷言分兩天總結,hhh其實內容不多,就是懶~ 斷言的作用是什麼? 答:設置測試斷言以後,能幫助我們判斷測試用例執行結果。 我們先看下unittest支持的斷言有哪些: 對上面的斷言語法有個大概的瞭解後,我們使用一下看看代碼: 一: 註意:相等,必須是內容和類型都完全相等哦,比 ...
  • String類常用的構造方法 1、String(byte[] bytes) 通過使用平臺的預設字元集解碼指定的 byte 數組,構造一個新的 String。 2、String(char[] value) 分配一個新的 String,使其表示字元數組參數中當前包含的字元序列。 3、String(cha ...
  • 之前操作了一個IDC網站,不到1個月的時間把網站的權重從0做到了1,本來想寫篇文章分享相關的操作經驗。後來因為網站整體規劃的原因,IDC網站需要關閉一段時間做備案的更新,排名肯定就會掉了,然後怕大家看到我後面網站的數據不是我分享說的樣子,說我騙人,就沒寫那次的分享經驗。 今天無意間通過站長工具查詢新 ...
  • 一、排序演算法 1、冒泡排序(Bubble Sort) 定義:是一種簡單的排序演算法。它重覆地遍歷要排序的數列,一次比較兩個元素,如果他們的順序錯誤就把他們交換過來。遍曆數列的工作是重覆地進行直到沒有再需要交換,也就是說該數列已經排序完成。這個演算法的名字由來是因為越小的元素會經由交換慢慢“浮”到數列的頂 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...