当前位置: 首页 > news >正文

贵州国高建设工程有限公司 网站龙华做网站联系电话

贵州国高建设工程有限公司 网站,龙华做网站联系电话,云客网平台,徐州百度关键词优化很多年前看过Bill Wagner的《Effective C#》第一版#xff0c;涵盖了C#2.0相关语言特性的最佳实践#xff0c;教我们怎样更优雅地去编写C#代码#xff0c;当时觉得受益匪浅。最近拿到了《More Effective C#》第二版#xff0c;目前看了大概三分之二#xff0c;让我对C#的的… 很多年前看过Bill Wagner的《Effective C#》第一版涵盖了C#2.0相关语言特性的最佳实践教我们怎样更优雅地去编写C#代码当时觉得受益匪浅。最近拿到了《More Effective C#》第二版目前看了大概三分之二让我对C#的的应用有了更深入的了解书虽没看完但还是要推荐一下。《More Effective C#》第二版涵盖到了C#7.0的特性全书分为5个大的章节类型处理、API设计、异步编程、并行处理和动态编程我觉得深入理解前三章便能让您在工作中如虎添翼学习和了解C#中的一些特性并且能知道在什么场景下使用这些特性真正做到了知其然也知其所以然。只要涉及到编程总会回归到各种数据类型的操作怎样合理的使用数据类型怎样避免一些陷进这些在第一章中都会涉及到比如在判断两个对象相等有下面一些原则不只是给出了实践的方法更是说清楚了其中的原委。一个有追求的程序员一定不甘心每天只做CRUD随着经验的增长您可能需要去编写更下游的程序需要提供安全、好用、可扩展的方法或接口供上游调用即便您只是写写WebAPI依然会被各种端去调用第二章的API设计会让您少走很多弯路。比如我们平时在设计类时碰到需要做拷贝的就会很自然想到去实现ICloneable接口书中告诉了我们为什么不要去实现ICloneable接口以及什么情况下可以去实现ICloneable接口。还有在调用.NET一些底层方法时有时会出现很多的重载版本那么在我们写代码时会去借鉴也会写出有很多重载版本的方法。书中建议我们在初次设计方法时可以利用可选参数和命名参数来设计方法的参数可以减少方法的重载版本但发布后如果有调整建议添加重载版本。第三章讲述了怎样使用异步编程内容虽然不是很多但如果您已经使用过异步编程这些会让您理解更加深刻。下面举一个小例子。在C#7中加入了本地方法的特性可以让我们在方法的内部写方法代码如下static void LocalMethod(){    string name  oec2003;    string name1  oec2004;    Console.WriteLine(AddPrefix(name));    Console.WriteLine(AddPrefix(name1));    string AddPrefix(string n)    {        return $Hello {n};    }}    string name  oec2003;    string name1  oec2004;    Console.WriteLine(AddPrefix(name));    Console.WriteLine(AddPrefix(name1));    string AddPrefix(string n)    {        return $Hello {n};    }}可能您知道有这么一个特性但并不知道该什么时候用在不知道的情况下为了去使用某个特性可能出现滥用。书中给出了该特性的一个应用场景。看下面一段示例代码public Taskstring LoadMessage(string userName){    if (string.IsNullOrWhiteSpace(userName))    {        throw new AggregateException(message: username is null);    }    return LoadMessageImpl();    async Taskstring LoadMessageImpl()    {        var name  await LoadMessageAsync();        var message  name ?? No Message;        return message;    }}Taskstring LoadMessageAsync(){    var task  Task.Run(()     {        Thread.Sleep(5000);        return oec2003;    });    return task;}    if (string.IsNullOrWhiteSpace(userName))    {        throw new AggregateException(message: username is null);    }    return LoadMessageImpl();    async Taskstring LoadMessageImpl()    {        var name  await LoadMessageAsync();        var message  name ?? No Message;        return message;    }}Taskstring LoadMessageAsync(){    var task  Task.Run(()     {        Thread.Sleep(5000);        return oec2003;    });    return task;}本文是我阅读到现在的一个最直观的感受书中的内容我在理解、消化并进行实践后会继续分享出来。总之好书是需要反复阅读的直到看到某一小节的名称便能说出它的来龙去脉才是真正的掌握。
http://www.huolong8.cn/news/140299/

相关文章:

  • 做网站首页的表格的代码温州seo推广公司
  • 网站正在建设中a _手机版做骗子曝光网站是否违法
  • 浙江虎霸建设机械有限公司网站贵州省城乡建设部官方网站
  • 烟台做网站打电话话术为什么什么网站都在维护
  • 不再更新的网站导购类网站怎么做
  • 秦皇岛网站推广排名处室网站建设思路
  • 厦门市建设局网站规划标准北京网站开发需要多少钱
  • 镇江网站定制2022中国企业500强
  • 做ppt好的模板下载网站公众号做视频网站
  • 做一个介绍网站多少钱dw怎么做连接到另外一个网站
  • 河南省建设部省厅网站手机+显示器自适应wordpress+主题
  • 网站开发的基本流程文库建设网站平台合同范本
  • wordpress网站无法登陆网站建设灬金手指下拉
  • 网站上有声的文章是怎么做的个人邮箱登录登录入口
  • 安庆做网站电话在线证件照生成器
  • 网站开发用什么软件开发南宁网站建设产品
  • 做网站 报价 需要了解求个网址老哥们2021
  • 国际空间站vs中国空间站类似知乎可以做推广的网站
  • 做手机网站网站建设的总结
  • 福建建设银行网站百度域名是什么意思
  • 货源网站辅助网站建设
  • 深圳网站建设民治大道做网站的用多少钱
  • 建设网站的工作流程专门做调查的网站
  • 网站后台无编辑器单页网站建站
  • 淘宝做导航网站有哪些功能自学网站建设哪个网站好
  • 网站营销策划公司不用服务器做网站
  • 黄岛建设厅官方网站商城网站建设价格费用
  • 西宁网站设计高端预付网站建设费会计处理
  • 为什么做织梦网站时图片出不来技术号的网站建设
  • 新公司做网站怎么弄成都微信网站建设推