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

大连网站建设方案案例个人网页设计理念

大连网站建设方案案例,个人网页设计理念,北京海淀区开发导航的公司,怎么利用代码做网站前言 在工作了一年多之后#xff0c;我发现静态方法的耦合问题实在是头疼。如果可以尽量不要使用静态方法存储数据#xff0c;如果要存储全局数据就把数据放在最顶层的主函数里面。 静态方法问题 耦合问题#xff0c;不要用静态方法存储数据 我这里有两个静态方法#…前言 在工作了一年多之后我发现静态方法的耦合问题实在是头疼。如果可以尽量不要使用静态方法存储数据如果要存储全局数据就把数据放在最顶层的主函数里面。 静态方法问题 耦合问题不要用静态方法存储数据 我这里有两个静态方法A和B。A和B都各种存储A_Data和B_Data。如果两个静态方法一直互相调用就会导致耦合过高无法控制数据流向的问题。 #mermaid-svg-oxIK6VskzTexiwlh {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-oxIK6VskzTexiwlh .error-icon{fill:#552222;}#mermaid-svg-oxIK6VskzTexiwlh .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-oxIK6VskzTexiwlh .edge-thickness-normal{stroke-width:2px;}#mermaid-svg-oxIK6VskzTexiwlh .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-oxIK6VskzTexiwlh .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-oxIK6VskzTexiwlh .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-oxIK6VskzTexiwlh .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-oxIK6VskzTexiwlh .marker{fill:#333333;stroke:#333333;}#mermaid-svg-oxIK6VskzTexiwlh .marker.cross{stroke:#333333;}#mermaid-svg-oxIK6VskzTexiwlh svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-oxIK6VskzTexiwlh .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#mermaid-svg-oxIK6VskzTexiwlh .cluster-label text{fill:#333;}#mermaid-svg-oxIK6VskzTexiwlh .cluster-label span{color:#333;}#mermaid-svg-oxIK6VskzTexiwlh .label text,#mermaid-svg-oxIK6VskzTexiwlh span{fill:#333;color:#333;}#mermaid-svg-oxIK6VskzTexiwlh .node rect,#mermaid-svg-oxIK6VskzTexiwlh .node circle,#mermaid-svg-oxIK6VskzTexiwlh .node ellipse,#mermaid-svg-oxIK6VskzTexiwlh .node polygon,#mermaid-svg-oxIK6VskzTexiwlh .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-oxIK6VskzTexiwlh .node .label{text-align:center;}#mermaid-svg-oxIK6VskzTexiwlh .node.clickable{cursor:pointer;}#mermaid-svg-oxIK6VskzTexiwlh .arrowheadPath{fill:#333333;}#mermaid-svg-oxIK6VskzTexiwlh .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-oxIK6VskzTexiwlh .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-oxIK6VskzTexiwlh .edgeLabel{background-color:#e8e8e8;text-align:center;}#mermaid-svg-oxIK6VskzTexiwlh .edgeLabel rect{opacity:0.5;background-color:#e8e8e8;fill:#e8e8e8;}#mermaid-svg-oxIK6VskzTexiwlh .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-oxIK6VskzTexiwlh .cluster text{fill:#333;}#mermaid-svg-oxIK6VskzTexiwlh .cluster span{color:#333;}#mermaid-svg-oxIK6VskzTexiwlh div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-oxIK6VskzTexiwlh :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;} A Method_A_1 Data_B Method_A_2 Method_A_3 Data_A B Method_B_1 Method_B_2 Method_B_3 可以看到这个已经乱成一锅粥了 Mermaid源码 graph LRA-- Method_A_1--Data_B A-- Method_A_2--Data_B A-- Method_A_3--Data_A A---Data_AB-- Method_B_1--Data_A B-- Method_B_2--Data_A B-- Method_B_3--Data_B B---Data_B所以静态方法尽量只存放方法不要存放变量。比如字符串切割数组拼接敏感字去除。 扩展方法 这里推荐使用扩展方法来解决扩展方法很好的限制了输入和输出不会出现耦合数据的情况 微软扩展方法文档 如何改变面向过程的思维 喜欢用静态方法其实还是面向过程的思维就是在写方法的时候就已经知道我可以直接去拿Static_A的静态参数。静态方法最容易出现的就是配置文件的读取。 面向过程直接去静态函数里面拿参数 #mermaid-svg-HgYoTj9dmhmzcMIG {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-HgYoTj9dmhmzcMIG .error-icon{fill:#552222;}#mermaid-svg-HgYoTj9dmhmzcMIG .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-HgYoTj9dmhmzcMIG .edge-thickness-normal{stroke-width:2px;}#mermaid-svg-HgYoTj9dmhmzcMIG .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-HgYoTj9dmhmzcMIG .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-HgYoTj9dmhmzcMIG .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-HgYoTj9dmhmzcMIG .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-HgYoTj9dmhmzcMIG .marker{fill:#333333;stroke:#333333;}#mermaid-svg-HgYoTj9dmhmzcMIG .marker.cross{stroke:#333333;}#mermaid-svg-HgYoTj9dmhmzcMIG svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-HgYoTj9dmhmzcMIG .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#mermaid-svg-HgYoTj9dmhmzcMIG .cluster-label text{fill:#333;}#mermaid-svg-HgYoTj9dmhmzcMIG .cluster-label span{color:#333;}#mermaid-svg-HgYoTj9dmhmzcMIG .label text,#mermaid-svg-HgYoTj9dmhmzcMIG span{fill:#333;color:#333;}#mermaid-svg-HgYoTj9dmhmzcMIG .node rect,#mermaid-svg-HgYoTj9dmhmzcMIG .node circle,#mermaid-svg-HgYoTj9dmhmzcMIG .node ellipse,#mermaid-svg-HgYoTj9dmhmzcMIG .node polygon,#mermaid-svg-HgYoTj9dmhmzcMIG .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-HgYoTj9dmhmzcMIG .node .label{text-align:center;}#mermaid-svg-HgYoTj9dmhmzcMIG .node.clickable{cursor:pointer;}#mermaid-svg-HgYoTj9dmhmzcMIG .arrowheadPath{fill:#333333;}#mermaid-svg-HgYoTj9dmhmzcMIG .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-HgYoTj9dmhmzcMIG .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-HgYoTj9dmhmzcMIG .edgeLabel{background-color:#e8e8e8;text-align:center;}#mermaid-svg-HgYoTj9dmhmzcMIG .edgeLabel rect{opacity:0.5;background-color:#e8e8e8;fill:#e8e8e8;}#mermaid-svg-HgYoTj9dmhmzcMIG .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-HgYoTj9dmhmzcMIG .cluster text{fill:#333;}#mermaid-svg-HgYoTj9dmhmzcMIG .cluster span{color:#333;}#mermaid-svg-HgYoTj9dmhmzcMIG div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-HgYoTj9dmhmzcMIG :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;} 直接调用 直接调用 直接调用 Static_A Data A Method_A B Method_B C Method_C 这样是面向过程的思想,ABC可以直接去拿Static_A的参数 如果参数A被污染就会导致参数不可控,非常的危险 面向对象在构造函数里面将参数注入 #mermaid-svg-ZvejxbCEho065Re8 {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-ZvejxbCEho065Re8 .error-icon{fill:#552222;}#mermaid-svg-ZvejxbCEho065Re8 .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-ZvejxbCEho065Re8 .edge-thickness-normal{stroke-width:2px;}#mermaid-svg-ZvejxbCEho065Re8 .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-ZvejxbCEho065Re8 .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-ZvejxbCEho065Re8 .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-ZvejxbCEho065Re8 .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-ZvejxbCEho065Re8 .marker{fill:#333333;stroke:#333333;}#mermaid-svg-ZvejxbCEho065Re8 .marker.cross{stroke:#333333;}#mermaid-svg-ZvejxbCEho065Re8 svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-ZvejxbCEho065Re8 .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#mermaid-svg-ZvejxbCEho065Re8 .cluster-label text{fill:#333;}#mermaid-svg-ZvejxbCEho065Re8 .cluster-label span{color:#333;}#mermaid-svg-ZvejxbCEho065Re8 .label text,#mermaid-svg-ZvejxbCEho065Re8 span{fill:#333;color:#333;}#mermaid-svg-ZvejxbCEho065Re8 .node rect,#mermaid-svg-ZvejxbCEho065Re8 .node circle,#mermaid-svg-ZvejxbCEho065Re8 .node ellipse,#mermaid-svg-ZvejxbCEho065Re8 .node polygon,#mermaid-svg-ZvejxbCEho065Re8 .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-ZvejxbCEho065Re8 .node .label{text-align:center;}#mermaid-svg-ZvejxbCEho065Re8 .node.clickable{cursor:pointer;}#mermaid-svg-ZvejxbCEho065Re8 .arrowheadPath{fill:#333333;}#mermaid-svg-ZvejxbCEho065Re8 .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-ZvejxbCEho065Re8 .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-ZvejxbCEho065Re8 .edgeLabel{background-color:#e8e8e8;text-align:center;}#mermaid-svg-ZvejxbCEho065Re8 .edgeLabel rect{opacity:0.5;background-color:#e8e8e8;fill:#e8e8e8;}#mermaid-svg-ZvejxbCEho065Re8 .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-ZvejxbCEho065Re8 .cluster text{fill:#333;}#mermaid-svg-ZvejxbCEho065Re8 .cluster span{color:#333;}#mermaid-svg-ZvejxbCEho065Re8 div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-ZvejxbCEho065Re8 :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;} 构造函数注入 Data A_Data_ Method_A调用Data 这个才是面向对象的思想。 如果参数过多怎么办 方法1将参数写对象 method(string a,int b,int [] c)//改成method(Data a)class Data{public string a {get;set;}public int b {get;set;}public int[] c {get;set;} } 方法2通过委托实现回调 这里不展开说 方法3依赖注入和IOC控制反转 这里不展开说
http://www.dnsts.com.cn/news/100846.html

相关文章:

  • 外贸公司如何运营郑州网站建设专业乐云seo
  • ps做汽车网站下载地址团风做网站
  • 河南省网站建设哪家好快站app制作教程
  • 甘孜州建设局网站济南建站公司哪有
  • 公司网站设计建议秦皇岛市教育考试院官网
  • 怎么做自己的彩票网站网站建设与实践模板
  • 聊城专业网站设计公司所有网站的名字大全
  • 便捷网站建设创意设计公司经营范围
  • 网站备案需要年检吗蔚县网站建设
  • 求一个网站开发接项目的平台周口seo 网站
  • 做车身拉花的网站网站的权限管理怎么做
  • 如何评价一个网站设计的好坏怎么建立自己的网站免费
  • 好公司的网站设计地方性资讯门户网站
  • wordpress做社交网站长沙百度首页优化排名
  • 国内网站搭建自己怎么创建免费网站
  • 重庆建设公司网站百度一下你就知道下载安装
  • 网站开发从入门到实战优质的邵阳网站建设
  • 秦皇岛做网站哪家好济南上门做睫毛的网站
  • 怎样创办网站网络营销的4p策略
  • 国内物流公司网站建设wordpress加个微信登录
  • pageadmin做网站如何建设一个企业网站
  • 农林科技公司网站模板服务器怎么用数据库建设网站
  • 阿里云Windows网站建设西安网站托管公司招聘
  • 中卫网站设计公司排名网站开发公司能否挣钱
  • 网站网页建设一般多少钱淘宝网站制作多少钱
  • 微网站建设价格对比淄博易宝网站建设
  • 怎么搭建一个视频网站河南住房与建设厅网站
  • 网络游戏排行榜前十名2022简单建优化网站无需技术
  • 手机 网站 翻页 外部wordpress后台下载
  • 网站建设用户调查问卷wordpress本地编辑