编程基础
de之梦-御风
我是工作了11年的老程序员,是一个未来的架构师,我会经常分享一下自己的知识和心得
展开
-
优秀的软件工程师需要具备什么
优秀的软件工程师不仅要具备深厚的技术能力,还需要良好的沟通、团队协作和解决问题的能力。此外,他们要有持续学习的动力和对高质量工作的追求。通过不断积累经验,培养这些能力,软件工程师不仅能提高自身技术水平,还能推动整个团队和项目的成功。原创 2024-09-28 09:51:17 · 380 阅读 · 0 评论 -
【进阶编程】横向设计和纵向设计-常用的设计模式
在软件工程设计中,和是两种不同的设计思维方式或方法,涉及系统的架构布局、模块划分以及系统的耦合方式。这两种设计方法常用于大型软件系统的结构化设计中,以便更好地处理系统的复杂性、扩展性和维护性。原创 2024-09-28 09:50:17 · 341 阅读 · 0 评论 -
【进阶编程】领域驱动设计也没有那么神秘,试着去尝试使用它
为跨多个实体的业务逻辑提供一个独立的操作逻辑层。当某些业务逻辑不能自然地放入某个具体的实体或值对象时,使用领域服务封装这些操作。例如,“资金转账” 涉及多个账户,因此可以定义一个 “转账服务” 来处理这种逻辑。创建复杂对象或聚合,确保其符合业务规则。当创建聚合涉及复杂业务逻辑或对象的初始化时,可以通过工厂模式来封装创建逻辑,确保对象始终被正确构建。工厂可以是简单的静态方法,也可以是独立的工厂类。原创 2024-09-28 09:49:10 · 424 阅读 · 0 评论 -
【进阶编程】多态实现中虚方法和公共方法的区别以及使用
多态性virtual 方法支持运行时多态,子类可以通过 override 提供不同实现,运行时根据对象实际类型决定调用的版本。普通 public 方法不支持多态性,方法调用是静态绑定,调用的版本在编译时确定。重写virtual 方法允许子类重写。普通 public 方法不能被重写,只能被隐藏(通过 new 关键字)。调用方式通过父类引用或对象调用 virtual 方法时,会根据对象的实际类型执行重写后的方法。通过父类引用调用普通 public 方法时,执行的始终是父类版本的方法。原创 2024-09-28 09:47:52 · 98 阅读 · 0 评论 -
【进阶编程】“约定优于配置” 软件设计原则
约定优于配置是一种通过合理的默认行为减少配置的设计原则。它通过简化配置、提高开发效率和代码可读性,广泛应用于现代开发框架和工具中。虽然可能在某些情况下略微降低了灵活性,但它大大简化了开发工作,是软件设计中的重要原则之一。原创 2024-09-28 09:42:54 · 345 阅读 · 0 评论 -
软件设计的主要目标
软件设计的主要目标包括可维护性可扩展性可重用性灵活性高内聚低耦合性能健壮性可读性和清晰性安全性以及用户体验。这些目标相互关联,软件设计需要在多个方面取得平衡,以确保系统的长期健康和稳定发展。原创 2024-09-28 09:39:15 · 271 阅读 · 0 评论 -
接口和抽象类的使用区别
共同基础行为:如果你希望不同的类共享一些共同的行为或状态,但每个类也有自己的实现方式,抽象类是最佳选择。例如,你可以创建一个 Animal 抽象类,其中包含所有动物的共有行为(如 Eat()),但每种动物可能有不同的吃饭方式。部分实现和重用:抽象类允许你在父类中提供部分实现,子类可以复用这些实现,也可以选择覆盖它们。模板方法模式:在需要创建模板方法模式时,抽象类是理想选择。模板方法模式允许你定义一个算法的骨架,而具体步骤由子类实现。示例接口。原创 2024-09-28 09:37:38 · 153 阅读 · 0 评论 -
一键生成Web API客户端
在“添加服务引用”窗口中,选择 “Web” 选项卡,然后选择 “Web API”。你可以通过URL指定Web API的Swagger文档(通常是`swagger.json`或`openapi.json`文件)。在解决方案资源管理器中,右键点击你的项目,然后选择 **“添加”** > **“服务引用...”**。Visual Studio会根据API描述生成所需的C#代码,包括用于调用API的客户端类和方法。通过这些步骤,你就可以快速生成Web API的客户端代理,减少手动编写代码的工作量。原创 2024-09-28 09:27:25 · 83 阅读 · 0 评论 -
异步编程是多线程吗
工作十年了,刚开始对异步多线程了解的不深,曾经一度以为异步就是多线程实现的。:异步编程并不等同于多线程,但它们可以结合在一起使用。原创 2024-09-28 09:24:08 · 69 阅读 · 0 评论