• .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();
            });
        }
    }
    
  • 相关阅读:
    scp命令(基于ssh上传文件等)
    mac上安装ruby
    Access denied for user ''@'localhost' to database 'mysql'
    3.ruby语法基础,全部变量,实例变量,类变量,局部变量的使用和注意的要点
    2.ruby基本语法,类的定义
    1.ruby基本格式
    neo4j在linux下的安装
    mongodb导入json文件
    mongodb 安装启动
    Junit4
  • 原文地址:https://www.cnblogs.com/dudu/p/11827652.html
走看看 - 开发者的网上家园