现在有一个常见现象:企业想要更快更便宜地构建软件。这当然是一个可以理解和值得称赞的目标。且每个工程师都应该全心全意支持这个目标。然而事与愿违。虽然并非是故意的,但是随着时间的推移,我们会因为软件构建中..
我之所以写这篇文章是因为有一个朋友最近决定跻身软件工程行业。我的这位朋友聪明,精力充沛,品貌兼优,又善于学习:每个人都认为这样的人才必将有一番作为。但是,在踏出第一步时,他依然有很多东西需要学习。我和..
前言这是我《回顾我的开发经历》系列的第二篇,聚焦于我与代码生成器的故事。从最初的简单工具到最终演变成一个功能强大的ORM框架,这段经历不仅让我在技术上得到了极大的提升,也让我深刻理解了重构、设计模式和系..
二十多年前,刚从大学毕业,对软件开发认识非常有限,掌握的技能也不多。第一份工作第一份工作是搭建一个BBS论坛,模仿当时流行的三夫户外论坛。那时,对知识如饥似渴。由于买不起书,我常常去书店找到相关的ASP书籍..
原则#1:存在的原因软件系统存在的原因:为用户提供价值。所有的决定都应该考虑到这一点。在指定系统需求之前,在关注系统的各个功能之前,在确定硬件平台或开发过程之前,问问自己以下问题:这是否能为系统真正增加..
最近招聘面试测试工程师,发现很多测试工程师都是半路出家,对一些基本的测试概念,思路与技术没有认知。在设计测试用例的时候只是基于直觉与经验去测试。这就导致测试用例的设计既不全面,也不科学。一般功能测试指..
html2canvas 是一个开源的 JavaScript 库,用于将网页上的 HTML 元素渲染成图像。它通过遍历页面的 DOM 树和计算样式,然后将其绘制到 <canvas> 元素上,最终生成图片。该库不依赖服务器端,而是通过浏览器端的 Java..
在 C# 中,通过自定义 Attribute 并结合一些技术(如动态代理、反射等)可以实现 AOP(面向切面编程)。AOP 通常用于日志记录、性能监控、权限验证等横切关注点。以下是一个使用 C# Attribute 实现 AOP 功能的示例。..
在使用 .NET Core 开发中,图片处理是一个常见需求,如图像缩放、裁剪、格式转换和添加水印等。以下是一些推荐的 .NET Core 图片处理库,它们功能强大且支持多种图像处理功能:1. ImageSharp简介:ImageSharp 是一个..
以下是10款.NET开发中常用的代码分析和质量工具列表,以及它们的主要功能和使用场景:1. SonarQube简介:一个流行的开源静态代码分析平台,用于检测代码中的漏洞、错误、技术债务等问题。主要功能:支持代码质量监测..
在 .NET 9 中,System.Text.Json 进行了多个重要的更新和增强,进一步提升了 JSON 处理的性能、灵活性和易用性。以下是 .NET 9 中 System.Text.Json 的一些主要新增功能:1. 类型转换器 (Type Converters) 支持.NET ..
.NET 爱好者!我刚刚偶然发现了一个非常酷的新 PR,它被合并到 .NET 运行时存储库中,我想分享一个例子。希望您能为新的 .NET 版本大肆宣传!在即将到来的 .NET 9 版本中,我们预计会有一个名为 .它在这里让您的异步..
单元测试是确保代码质量和可靠性的重要手段。当我们的代码依赖于外部系统、数据库或第三方服务时,编写有效的单元测试可能会变得复杂且耗时。为了简化这一过程,模拟(Mocking)技术应运而生。在 .NET 生态系统中,M..
在网页设计和开发中,CLS(Cumulative Layout Shift)是指页面布局的累计偏移量。当一个用户与页面互动时,如果页面的某些元素突然改变位置或大小,导致整个布局发生偏移,就会产生布局偏移。这种偏移可能会影响用户..
随着科技的飞速发展,计算机领域成为了一个充满机遇和挑战的领域。对于计算机这个行业,我一直有着浓厚的兴趣,这份兴趣驱使我不断学习,不断成长。在这篇文章中,我将分享我的编程经历以及一些建议,希望能够给那些..
在与一个第三方接口对接时,发现对方无法用GZip解压我发过去的数据,看了对方PHP的示例代码,发现对方使用的是PHP的$file = iconv("IOS-8859-1","UTF-8",gzencode($data_json));大致意思是要先压缩,在把压缩的数组..
一、Software Architecture篇 这个领域没有什么"畅销书",可能读者中本来就是开发设计人员与项目经理占了多数,真正定位为架构师而且做的也是架构师工作的不多吧。 1.《Software Architect Bootcamp--软件架构师教..
HTML5规范终于在今年正式定稿,对于从事多年HTML5开发的人员来说绝对是一个重大新闻。数字天堂董事长,DCloud CEO王安也发表了文章,从开发者和用户两个角度分析了HTML对两个人群的优势。 1. HTML5 Maker 在未来的..
在软件系统里面,功能性需求是面向用户、详细明确的需求,由产品人员根据市场的需要提炼出来,是产品生命周期里最重要的一环。比如电商系统里面的优惠券功能,通常包含需求:优惠券分类、细分领券人群、核销优惠券等..
微软官网是一个非常好的资源,可以学习和了解.NET的基础知识和最新的技术。但是,如果您想深入学习.NET,建议购买相关的书籍,这些书籍通常比官方文档更详细、更全面,同时也提供更多的实际案例和示例代码,可以帮助..