zoukankan      html  css  js  c++  java
  • .NET Core 中的命名问题:Startup 中的 ConfigureServices 与 Configure

    一直不喜欢 Startup 中这两个可读性很比较差的糟糕命名 ConfigureServicesConfigureConfigureServices 用于配置依赖注入以在运行时根据依赖关系创建对象,Configure 用于配置中间件(middleware)以构建请求处理流水线。

    今天写代码写累后散步时思考了这两个命名问题,突然想到一个成语排兵布阵ConfigureServices排兵Configure布阵。如果对应公司运营,ConfigureServices 就是给工作岗位安排人员,Configure 是制定工作流程。

    根据排兵布阵,想到的英文命名是 ArrangeOrganize ,使用这2个命名改造后的 Starup 变成了这样:

    public class Startup
    {
        public Startup(IConfiguration configuration)
        {
            Configuration = configuration;
        }
    
        public IConfiguration Configuration { get; }
    
        public void ConfigureServices(IServiceCollection services)
        {
            Arrange(services);
        }
    
        public void Arrange(IServiceCollection services)
        {
            services.AddControllersWithViews();
        }
    
        public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
        {
            Organize(app, env);
        }
    
        public void Organize(IApplicationBuilder app, IWebHostEnvironment env)
        {
            var builder = env.IsDevelopment() ? app.UseDeveloperExceptionPage() : 
                app.UseExceptionHandler("/Home/Error");            
    
            app.UseStaticFiles();
    
            app.UseRouting();
    
            app.UseAuthorization();
    
            app.UseEndpoints(endpoints =>
            {
                endpoints.MapDefaultControllerRoute();
            });
        }
    }
    
  • 相关阅读:
    python常用包官网及包的安装方法
    二进制安装mysql-5.7.26
    ufw防火墙规则不生效
    Zabbix 3.0 配置企业微信报警(配置zabbix-web)
    Zabbix 3.0 配置企业微信报警(注册---测试)
    阿里云盾AliYunDun服务IO超高
    zabbix详解
    ntp时间同步
    zabbix解决中文乱码
    ssh登录服务器提示错误no hostkey alg
  • 原文地址:https://www.cnblogs.com/dudu/p/11827652.html
Copyright © 2011-2022 走看看