首页
C&C++
C#语言
Java
Python
人工智能
Web前端
数据库
面试笔记
其它
软件推荐
搜索
领域事件私有化:DDD架构中的解耦艺术与版本控制实践
🔄 领域事件的核心价值与常见误区领域事件(Domain Events)是领域驱动设计(DDD)中表达业务事实的核心载体。其命名通常采用过去时态,并通过唯一标识符(如UUID)确保唯一性。例如:// BoundedContext/Subscription/Domain/Events/SubscriptionCanceled{ id: de305d...
5-1 9:50
472
十年蜕变:一个开发者九大技术观念的颠覆与重构
🔄 职业轨迹:从Java到C#,从码农到思考者十年间,我从Java转向C#,从JavaScript闯入Xamarin再扎根ASP.NET Core。从职场新人到与CEO同席会议——虽然公司规模不大,但这段旅程重塑了我的技术认知。以下是我彻底改变的9个技术观念:数据库:从恐惧到掌控曾经:• 拒绝...
5-1 9:48
469
依赖注入新视角:ASP.NET Core中方法注入如何破解构造器注入困局
🔄 架构之痛:构造器注入的四大陷阱在ASP.NET Core开发中,构造器注入长期被视为依赖管理的金科玉律。但当服务类逐渐膨胀时,这种模式暴露出致命缺陷:public class OrderService{ private readonly IPaymentGateway _paymentGateway; private readonly INotifi...
5-1 9:46
567
从云端霸主到边缘角色:Go语言在科技巨头的陨落之路
🚀 昔日荣光:Go语言的崛起神话2010年代初,Google推出Go语言(Golang),誓言解决企业级语言臃肿与学术语言过度设计的问题。凭借轻量、高效、简洁与原生并发支持,Go迅速成为云原生开发、DevOps工具与分布式系统的代名词。但时移世易,如今的科技巨头们正悄然撤离Go...
5-1 9:1
465
从重复代码到优雅解决方案:TinyResult如何重塑.NET结果处理范式
🚀 背景:当重复模式催生新工具作为开发者,我们总会遇到某些代码模式反复出现。最终要么决定该为这个写个工具包了,要么被迫在每个项目里复制粘贴相同代码。我选择了第一条路 😊在.NET生态中,Result和Result已成为处理成功/失败场景的主流方案——特别是替代那些...
5-1 9:0
490
从被拒到入职:程序员面试逆袭之路——当沟通能力成为技术人的终极武器
🚫 首次碰壁:我们选择了更有经验的人那是我毕业后的第一场技术面试。手握计算机科学学位,满脑子算法理论的我,自信满满地走进Zoom会议室。面对某中型科技公司资深工程师的链表反转题目,我本以为胜券在握。结果却惨烈收场。手指颤抖,语法混乱,甚至忘记yield retur...
5-1 8:58
456
状态模式实战:从条件地狱到优雅状态管理的蜕变——以手机通知模式为例
🔄 状态模式核心理念:用对象状态替代条件地狱传统条件分支的困境:if (state == NORMAL) { // 大声响铃} else if (state == VIBRATE) { // 震动模式} else if (state == SILENT) { // 静音模式}当状态超过3种时,代码将陷入:✅ 条件分支爆炸✅ 逻辑分散维护难✅ ...
5-1 8:55
516
告别重复检查!C#通用结果模式重构全解析
🔄 传统模式痛点:每个端点都要结果检查假设我们有一个返回操作结果的接口:app.MapGet(/, async () ={ var result = await InvokeAsync(); if(result.IsSuccess) { return TypedResults.BadRequest(); } return TypedResults.Ok();});在每个端...
5-1 8:53
494
开源地震!Arch Linux弃用Redis转投Valkey:一场由许可证争议引发的开源生态巨变
🔄 Redis:从开源宠儿到许可证争议中心让我们把时间拨回2024年3月。缔造内存键值存储神话的Redis公司,做出了震惊社区的重大决定——放弃宽松的BSD 3条款许可证,改用双许可证模式:• Redis源代码可用许可证v2(RSALv2)• 服务器端公共许可证v1(SSPLv1)官方说辞:...
5-1 8:51
551
SQL优化困局:从90秒延迟到18秒响应的实战突围
🚪 令人抓狂的性能陷阱那是个普通的周二。我端着咖啡,听着Spotify专注歌单,Power BI仪表盘持续加载...等待...继续等待。刚触发的查询又一次陷入无限等待。当时我在开发客户留存看板,需要关联订单历史、计算最近购买间隔、过滤流失用户并按区域展示结果。预期耗时几...
5-1 8:49
497
<<
<
…
14
15
16
17
18
19
20
21
22
23
…
>
>>
阅读排行
深入WPF数据绑定:Converter...
5827
C#异步定时器:精准定期执行...
5946
WPF应用中融入ASP.NET Core...
5053
在C# .NET 8中使用MediatR实...
4930
精准数字处理:C#中四舍五入...
4835
.NET Core 中集成Dapper高级...
4421
延迟等待的艺术:C#中Task.D...
4370
串口通信利器:RJCP.DLL.Ser...
4428
.NET 性能分析:.NET 8 中的...
4246
轻松上传:C#中HTTP POST mu...
4465
WPF中轻松生成动态图表:实...
4214
C# 中的并发性:使用 Blocki...
4086
C#中轻松实现二维码和条形码...
4017
C#屏幕截图:轻松捕获活动窗...
4100
深入了解SOAPCore:在.NET 6...
4078
MediatR让进程内通信如此简...
5090
在 .NET8 中通过 RabbitMQ实...
3859
Microsoft.Extensions.Loggi...
3784
ASP.NET 后端开发:全面的路...
3728
C#串口通讯实战:基础功能及...
3838
WPF中轻松操控GIF动画:WpfA...
3810
ASP .NET Core 8+ 中的全局...
3657
.net中OpenCVSharp+Zxing读...
3768
解决WPF界面卡死等待问题:...
4827
解密C#中允许HttpClient使用...
3581
C#文件编码检测:轻松解析文...
3579
.NET —ToList 和 ToArray ...
3556
实现WPF多语言支持:简单灵...
3678
使用OpenXML在.NET 6中导出E...
3662
C#中Task.Run怎么用?能解决...
3655
.NET 9中ToList 和 ToArray ...
3528
WPF神器揭秘:一键截图,轻...
3508
在 ASP.NET Core Web API 中...
3503
还在到处加异常日志记录?试...
3602
掌握System.Text.Json中的多...
3592
.NET 中的 UUID 和 ULID:最...
3463
掌握ImageSharp:图像处理的...
3567
打造真实感十足的速度表盘:...
3567
轻松实现.NET应用自动更新:...
3560
深入理解WPF中的Dispatcher...
3532
ASP.NET Core .NET 8 中间件...
3372
C# 中的弱事件 — 如何避免...
3278
C# .NET 8中的自动映射器Aut...
3224
ZLogger v2 架构:利用 .NET...
3175
FluentFTP实战:轻松操控FTP...
3220
WPF魔法:轻松实现依赖注入...
4306
解密C# Socket通信:克服粘...
3193
WPF开发新境界:MVVM设计模...
3189
WPF大展示专业指南:轻松实...
3235
C# Socket通信:灵活传输DTO...
3012