zoukankan      html  css  js  c++  java
  • 使用lambda会降低代码可读性吗?

    看到下属的程序员有这么一段代码(filename就是图片url地址的用逗号拼接的字符串,功能就是用,分割出来批量插入数据库,filename前面已经做了非空检查),觉得实在太罗嗦,忍不住重构了一下,并且在某条晒了出来。 

    if (fileName.Contains(','))
                {
                    string[] arr = fileName.Split(',');
                    foreach (var itme in arr)
                    {
                        list.Add(new Resource { Category = ResourceCategory.Inquire, Relate_ID = relateID, FileName = itme });
                    }
                }
                else
                {
                    list.Add(new Resource { Category = ResourceCategory.Inquire, Relate_ID = relateID, FileName = fileName });
                }
    
    
    if (list != null && list.Count > 0)
                {
                    using (var trans = db.Database.BeginTransaction())
                    {
                        try
                        {
                            foreach (var item in list)
                            {
                                db.Resource.Add(item);
                            }
                            db.SaveChanges();
                            trans.Commit();
                        }
                        catch (Exception ex)
                        {
                            message = ex.Message;
                            trans.Rollback();
                        }
                    }

    我改了写法如下(注意fileName不为空前面已经判断过了)

    await db.AddRangeAsync(fileName.Split(',').Select(p => new Resource { Category = ResourceCategory.Inquire, Relate_ID = relateID, FileName = p }));
    await db.SaveChangesAsync();

      但是真没想到的是大部分居然说重构后可读性差,我真的是郁闷。微软推出linq和lambda10多年了,我也写了10多年了,从来没觉得可读性差,现在的年轻程序员是怎么回事呢?确实是我的问题?是我太落后了?

    这文章实在没有什么技术含量,我是不好意自己推荐到首页首选区,但我真的很好奇想问问院子的兄弟,因为这里应该是国内.net的水平比较高的程序员集中营了吧,问一下使用lambda有什么问题吗?

  • 相关阅读:
    Windows 配置JAVA的环境变量
    不直接用NSLog
    Mongodb for Mac 安装
    Redis Mac 安装及简单命令使用
    第十五天和十六天学习笔记
    第十四天学习笔记
    第十三天学习笔记
    第十二天学习笔记
    第十一天学习笔记
    第十天学习笔记
  • 原文地址:https://www.cnblogs.com/lindping/p/14078859.html
Copyright © 2011-2022 走看看