最新文章
|
知識管理交流
→『 技術文檔交流 』
本版文數:10444 今日文數:4938
|
前言在項目中大家肯定偶爾會有遍歷文件夾的需求,還在老老實實寫遞歸么?!那怕是騷一點的linq遞歸,其實都太麻煩了,微軟爸爸早就想到我們有這樣的需求,直接在框架內部已經實現好了。實現遍歷文件夾其實只需要一個函數就搞定了,都不用去考慮遞歸,真的太強了。varfiles=Directory.GetFiles(@C:\,*.*...
|
一:背景1.講故事前幾天訓練營里的一位朋友在復習課件的時候,程序一跑就報錯,截圖如下:從給出的錯誤信息看大概是因為json格式無效導致的,在早期的訓練營里曾經也有一例這樣的報錯,最后定位下來是公司的電腦安全軟件導致的,一旦有非托管調試器,安全軟件就會加密runtimeconfig.json,最后導致程序無法正常被調試執...
|
引言前幾天開發中突然接到測試提的一個Bug,說我的時間組件顯示異常。我很詫異,這里初始化數據是后端返回的,我什么也沒改,這bug提給我干啥。我去問后端:“這數據是不是有問題?”。后端答:“沒問題啊,我們一直都是這么返回的時間戳,其他人用也沒報錯。”于是,對比生產環境數據,我終于找到了問題根源:「后端時間戳的類型,從Nu...
|
Ghidra:逆向工程的強大利器在信息安全領域,逆向工程一直是安全研究員、漏洞分析師和開發者的重要工具。而在眾多逆向工程工具中,Ghidra無疑是一個備受推崇的名字。作為美國國家安全局(NSA)發布的一款開源反編譯軟件,Ghidra以其強大的功能和廣泛的應用場景,成為了逆向工程領域的得力助手。一、什么是Ghidra?G...
|
隨著JavaScript不斷進化,許多新特性極大提升了代碼的可讀性和開發效率。然而,不少開發者仍未充分利用這些強大工具。本文帶你快速了解5個常被忽視但非常實用的JavaScript特性,幫你寫出更簡潔、更安全的代碼。可選鏈操作符(?.)當我們訪問一個嵌套很深的對象屬性時,最怕的就是中途某個屬性是undefined,導致...
|
?在現代的網絡架構中,反向代理(ReverseProxy)無處不在。無論是負載均衡、加速緩存,還是WebSocket支持,反向代理都是必不可少的工具。這篇文章將帶您全面了解反向代理的概念、作用和實際使用場景,并通過Nginx的配置示例幫助您快速上手!??一、什么是反向代理?反向代理(ReverseProxy)是一種架設...
![]() |
隨著科技的不斷進步,自動化測試和操作逐漸成為提升工作效率的重要手段。SikuliX,作為一款開源的自動化軟件,以其獨特的圖像識別技術在自動化領域中占據了重要地位。本文將為大家介紹SikuliX軟件的核心特點、功能以及應用場景。什么是SikuliX?SikuliX是一款開源的圖像識別自動化軟件,基于視覺進行自動化操作。它...
|
一:背景1.講故事昨晚訓練營里有一位朋友提到一個問題,說C#AOT程序能否編譯為一個dll,供其他語言調用,其實這個是完全沒有問題的,也確實我的的文章體系中沒有涉及到這塊,那今天就補充完整吧。二:NativeAOT函數導出1.簡單的案例在C中我相信很多人都知道用dllexport進行函數導出,如下所示:externC在...
|
前言大部分情況下我們并不需要關心結構體字段的內存布局,但是在一些特殊情況下,比如性能優化、和非托管代碼交互、對結構體進行序列化等場景下,了解字段的內存布局是非常重要的。本文寫作時最新的.NET正式版是.NET9,以后的版本不保證本文內容的準確性,僅供參考。本文將介紹.NET中結構體字段的內存布局,包括字段的對齊(Ali...
|
引言隨著C#不斷發展,模式匹配(PatternMatching)已經成為讓代碼更加友好、可讀和強大的核心特性。從C#7.0初次引入,到C#11的能力擴展,模式匹配為處理類型判斷、屬性解構、集合匹配等提供了簡潔、高效且類型安全的表達方式。它不僅能讓if/switch等控制結構變得“聲明式”,還能帶來性能提升。在這篇文章里...
|
前言嗨,程序員小伙伴們,早上好!你有沒有遇到過這樣的情況:改了一個地方的代碼,結果發現其他地方還有一模一樣的邏輯,然后不得不一個個修改?或者看著自己的代碼庫,發現某些片段像復制粘貼的“雙胞胎”一樣到處都是?別擔心,你不是一個人!重復代碼是軟件開發中的常見問題,但幸運的是,我們有多種方法可以“干掉”它。下面讓我們一起探索...
![]() |
數字摘要的概念數字摘要(DigitalDigest),又稱哈希值或散列值,是通過哈希函數(HashFunction)將任意長度的輸入數據轉換為固定長度的輸出字符串的過程。這個輸出字符串就是數字摘要。核心特性:固定長度:無論輸入數據多大,輸出長度固定(如SHA-256總是256位)確定性:相同輸入總是產生相同輸出不可逆性...
|
一、為什么要關注.NET異常處理的性能隨著現代云原生、高并發、分布式場景的大量普及,異常處理(ExceptionHandling)早已不再只是一個冷僻的代碼路徑。在高復雜度的微服務、網絡服務、異步編程環境下,服務依賴的外部資源往往不可靠,偶發失效或小概率的“雪崩”場景已經十分常見。實際系統常常在高頻率地拋出、傳遞、捕獲...
|
CSS中的函數?沒錯,伙計!我太需要這個功能了!就像其他編程語言一樣,CSS現在也要引入函數功能了。那些說CSS不是編程語言的反對者們現在還有什么話說?在過度興奮之前,讓我們深入了解一下!基礎概念:定義和使用函數想象一下,你正在為一組元素添加樣式,它們都需要虛線邊框。通常你會這樣寫:divpspan雖然不算太糟,但如果...
|
一、閉包是什么?一個簡單的例子functionouter()`);};}constsayHello=outer();sayHello();//大家好,我是小楊看到沒?inner函數記住了outer函數的me變量,這就是閉包!二、閉包的三大妙用(天使面)1.創建私有變量functioncreateCounter(),ge...
|
你有沒有遇到過這種情況:某個函數被柯里化(Currying)了,調用方式變成了fn(a)(b)(c),但你突然想讓它變回普通的fn(a,b,c)?這時候,反柯里化就是你的救星!1.先說說柯里化是啥(復習一下)柯里化是把一個多參數函數變成一連串單參數函數的過程。比如://普通加法函數functionadd(a,b)//柯...
|
一、基礎版:正則表達式一招鮮functionformatNumber(num))+(?!\d)/g,,);}console.log(formatNumber(1234567));//1,234,567console.log(formatNumber(我的余額是1000000));//我的余額是1,000,000小楊解說...
|
1ASCII的誕生20世紀60年代的美國,計算機發展到集成電路階段,體積不斷縮小,功能不斷增強,應用軟件開始出現。但當時每個廠家都按自己的喜好來編碼,有的用6位表示一個字符,有的用7位表示一個字符,不同廠家之間有不同標準,軟件不能跨設備運行,兩個廠家生產出來的計算機無法交流。當時,編碼方式超過60種,僅IBM一家公司在...
|
在日常開發中,JavaScript是我們繞不開的核心語言。無論你是前端開發、全棧工程師,還是剛入門的初學者,掌握一些實用的JavaScript技巧,不僅能大幅提升開發效率,還能讓你的代碼更加優雅、簡潔。下面整理了50個常用且高頻的JavaScript技巧,涵蓋數組、對象、函數、DOM操作等多個實戰場景,每個技巧都配有簡...
|
一、typeof的基本使用先來個最簡單的例子:console.log(typeof42);//numberconsole.log(typeof我);//stringconsole.log(typeoftrue);//boolean看起來很簡單對吧?但如果你以為typeof就這么點能耐,那可就太小看它了!二、typeof...
|
一、生活場景:什么叫數組不扁平?想象你收拾衣柜:千層餅數組:[襪子,[褲子,[上衣,腰帶]],鞋子](找雙襪子要翻三層)扁平數組:[襪子,褲子,上衣,腰帶,鞋子](一目了然)需求:把嵌套數組變成一維數組,就是扁平化!二、青銅選手:flat()方法(ES10真香)constmessyCloset=[襪子,[褲子,[上衣,...
|
為什么HTML5要廢棄一些標簽?在深入了解具體標簽之前,我們先思考一個問題:為什么要有“廢棄”這個操作?主要原因有以下幾點:關注點分離:早期的HTML標簽很多都帶有樣式屬性,比如<font>用來定義字體和顏色。HTML5強調結構與表現分離,樣式應該交給CSS來處理。提升語義化:HTML5引入了更多語義化標簽(如<art...
|
先看效果,在淺色模式下:在深色模式下:P.S.此算法只是盡可能地接近WindowsMica效果,并非實際實現;主色調提取算法只能確保在絕大多數情況下適用。測試項目在Github上開源:TwilightLemon/MicaImageTest:WPF使用GDI+提取圖片主色調并生成Mica材質特效背景?一、簡要原理和設計1...
|
在程序語言中,數據類型是基礎,一切程序都是建立在基礎數據之上。如果說程序如同萬丈高樓平地起,那么數據類型就像沙、石、鋼筋、水泥等等最基礎的原料。一樣的高樓,不同的人,用相同的原料,造的方法也會有千般變化。在JS中,數據類型可以分為原始類型和對象類型。原始類型直接存儲值,不可變(值的地址不可變),共7種:1、number...
|
https://github.com/kohunglee/areaEditor?areaEditor.js演示:https://www.ccgxk.com/areaEditor.html快速使用只需這樣即可:
<scriptsrc=https://cdn.jsdelivr.net/gh/kohunglee/areae...
|