欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    2022年聚集大全C代码优化的一些案例.docx

    • 资源ID:79915929       资源大小:111.76KB        全文页数:15页
    • 资源格式: DOCX        下载积分:4.3金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要4.3金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    2022年聚集大全C代码优化的一些案例.docx

    精选学习资料 - - - - - - - - - C#代码优化的案例1. 代码简洁代码简洁,削减代码量,初始值尽可能在属性上设置,而不是编写代码;合同统计分析中 JToolComBox_ColmunType_SelectedIndexChanged 方法中:switch jToolComBox_ColmunType.SelectedIndex.ToString case"0" : / 执行金额 jWebChart1.chartId = ;"9cc897e5-99dd-468d-84db-3390a18f0e22"; jWebChart1.SetUrlbreak ;case"1" : / 变更金额 jWebChart1.chartId = ;"9cc897e5-99dd-468d-84db-3390a18f0e23"; jWebChart1.SetUrlbreak ;case"2" : / 索赔金额 jWebChart1.chartId = ;"9cc897e5-99dd-468d-84db-3390a18f0e24"; jWebChart1.SetUrlbreak ;case"3" : / 付款批复金额 jWebChart1.chartId = ;"9cc897e5-99dd-468d-84db-3390a18f0e25"; jWebChart1.SetUrlbreak ;case"4" : / 实际支付金额 jWebChart1.chartId = ;"9cc897e5-99dd-468d-84db-3390a18f0e26"; jWebChart1.SetUrlbreak ;case"5" : / 合同份数 jWebChart1.chartId = ;"9cc897e5-99dd-468d-84db-3390a18f0e27"; jWebChart1.SetUrlbreak ;default: / 执行金额;"9cc897e5-99dd-468d-84db-3390a18f0e22"; jWebChart1.chartId = jWebChart1.SetUrlbreak ; 重构后:switch jToolComBox_ColmunType.SelectedIndex.ToString 1 / 9 名师归纳总结 - - - - - - -第 1 页,共 9 页精选学习资料 - - - - - - - - - case"0" : / 执行金额 jWebChart1.chartId = "9cc897e5-99dd-468d-84db-3390a18f0e22";break ;case"1" : / 变更金额 jWebChart1.chartId = "9cc897e5-99dd-468d-84db-3390a18f0e23";break ;case"2" : / 索赔金额 jWebChart1.chartId = "9cc897e5-99dd-468d-84db-3390a18f0e24";break ;case"3" : / 付款批复金额 jWebChart1.chartId = "9cc897e5-99dd-468d-84db-3390a18f0e25";break ;case"4" : / 实际支付金额 jWebChart1.chartId = "9cc897e5-99dd-468d-84db-3390a18f0e26";break ;case"5" : / 合同份数 jWebChart1.chartId = "9cc897e5-99dd-468d-84db-3390a18f0e27";break ;default: / 执行金额"9cc897e5-99dd-468d-84db-3390a18f0e22"; jWebChart1.chartId = break ; jWebChart1.SetUrl;合同综合查询中 jTabControl8_SelectedIndexChanged 方法中多个 If 语句 3 个以上 ,改写为 switch 合同综合查询中 JeMisQuery_V_HT_CONTRACT_SHOW_TJ_OnQueryFinished 方法中/ 请填写脚本decimal de_SIGN_AMOUNT = 0;decimal de_ALTER_AMOUNT = 0;decimal de_ALL_CLAIM_AMOUNT = 0;decimal de_PAY_AMOUNT = 0;decimal de_ALL_RP_AMOUNT = 0;decimal de_EXE_AMOUNT = 0;decimal de_APPLY_AMOUNT = 0;decimal de_APPLY_APPROVE_AMOUNT = 0string str_where = eMisQuery_V_HT_CONTRACT_SHOW.UserCustomCondition ;string sql = "select count* as ht_contract_count,sumSIGN_AMOUNT as SIGN_AMOUNT,sumALTER_AMOUNT as ALTER_AMOUNT,""sumALL_CLAIM_AMOUNTas ALL_CLAIM_AMOUNT,sumPAY_AMOUNT as PAY_AMOUNT, sumALL_RP_AMOUNT as ALL_RP_AMOUNT, sumEXE_AMOUNT as EXE_AMOUNT"2 / 9 名师归纳总结 - - - - - - -第 2 页,共 9 页精选学习资料 - - - - - - - - - ",sumAPPLY_AMOUNT as APPLY_AMOUNT, sumAPPLY_APPROVE_AMOUNT as APPLY_APPROVE_AMOUNT from GCMIS.v_ht_contact_show t where " + str_where; DataSet ds = eMisSurface1.ExecQuerySqlsql;if ds .= null && ds.Tables.Count > 0 / 有意义不,确定为 True DataRow dr = ds.Tables0.Rows0;.ToString; / 为什么要 jLabel_Jl.Text = dr"ht_contract_count"object obj = dr"SIGN_AMOUNT" ;is DBNull . 0.00 : obj de_SIGN_AMOUNT = Convert.ToDecimalobj 先转成 Decimal ,再转成 String jLabel_QD.Text = de_SIGN_AMOUNT.ToString"0.00" ; obj = dr"ALTER_AMOUNT" ; de_ALTER_AMOUNT = Convert.ToDecimalobj is DBNull . 0.00 : obj; jLabel_BG.Text = de_ALTER_AMOUNT.ToString"0.00" ; obj = dr"ALL_CLAIM_AMOUNT" ; de_ALL_CLAIM_AMOUNT = Convert.ToDecimalobj is DBNull . 0.00 : obj jLabel_SP.Text = de_ALL_CLAIM_AMOUNT.ToString"0.00" ; obj = dr"PAY_AMOUNT" ; de_PAY_AMOUNT = Convert.ToDecimalobj is DBNull . 0.00 : obj; jLabel_ZF.Text = de_PAY_AMOUNT.ToString"0.00" ; obj = dr"ALL_RP_AMOUNT" ; de_ALL_RP_AMOUNT = Convert.ToDecimalobj is DBNull . 0.00 : obj; jLabel_JF.Text = de_ALL_RP_AMOUNT.ToString"0.00" ; obj = dr"EXE_AMOUNT" ; de_EXE_AMOUNT = Convert.ToDecimalobj is DBNull . 0.00 : obj; jLabel_ZX.Text = de_EXE_AMOUNT.ToString"0.00" ; obj = dr"APPLY_AMOUNT" ; de_APPLY_AMOUNT = Convert.ToDecimalobj is DBNull . 0.00 : obj; jLabel_SQ.Text = de_APPLY_AMOUNT.ToString"0.00" ; obj = dr"APPLY_APPROVE_AMOUNT" de_APPLY_APPROVE_AMOUNT = Convert.ToDecimalobj is DBNull . 0.00 : obj jLabel_PF.Text = de_APPLY_APPROVE_AMOUNT.ToString"0.00" ; Else / 永久不会执行 3 / 9 名师归纳总结 - - - - - - -第 3 页,共 9 页精选学习资料 - - - - - - - - - jLabel_Jl.Text = " 0" ; jLabel_QD.Text = "0.00" ;应当直接在属性中设置初始值 jLabel_BG.Text = "0.00" ; jLabel_SP.Text = "0.00" ; jLabel_ZF.Text = "0.00" ; jLabel_JF.Text = "0.00" ; jLabel_ZX.Text = "0.00" ; jLabel_SQ.Text = "0.00" ;jLabel_PF.Text = "0.00" ;return ; 2. 提升代码的执行效率尽量削减不必要的运算、循环等,提升代码的效率合同统计分析 GET_CONTRACT_COLLECT_SOURCE decimal de_SIGN_AMOUNT = 0;decimal de_ALTER_AMOUNT = 0;decimal de_ALL_CLAIM_AMOUNT = 0;decimal de_PAY_AMOUNT = 0;decimal de_ALL_RP_AMOUNT = 0;decimal de_EXE_AMOUNT = 0;decimal de_APPLY_AMOUNT = 0;decimal de_APPLY_APPROVE_AMOUNT = 0 decimal de_FINAL_AMOUNT = 0;int conatratCount = dt.Rows.Count;if conatratCount = 0 this .jLabel_Contrat_Count.Text = " 0" ; jLabel_SIGN_AMOUNT.Text = "0.00" ; jLabel_ALTER_AMOUNT.Text = "0.00" ; jLabel_CLAIM_AMOUNT.Text = "0.00" ; jLabel_PAY_AMOUNT.Text = "0.00" ; jLabel_RP_AMOUNT.Text = "0.00" ; jLabel_EXE_AMOUNT.Text = "0.00" ; jLabel_APPLY_AMOUNT.Text = "0.00" ; jLabel_APPROVE_AMOUNT.Text = "0.00" ;return ; 4 / 9 名师归纳总结 - - - - - - -第 4 页,共 9 页精选学习资料 - - - - - - - - - DataTable cloneTable = dt.Clone;foreach DataRow item in dt.Rows string code = item"ZONE_CODE" .ToString;string codeLength = code.Split'_' ;if codeLength.Length = 3 DataRow copyRow = cloneTable.NewRow;asobject ; copyRow.ItemArray = item.ItemArray.Clone cloneTable.Rows.AddcopyRow object obj = cloneTable.Compute "sumCONTACT_COUNT" , "true" ;string count = Convert.ToStringobj is DBNull . 0 : obj;this .jLabel_Contrat_Count.Text = count; obj = cloneTable.Compute "sumSIGN_AMOUNT", "true" ; de_SIGN_AMOUNT = Convert.ToDecimalobj is DBNull . 0.00 : obj;this .jLabel_SIGN_AMOUNT.Text = de_SIGN_AMOUNT.ToString "0.00" ; obj = cloneTable.Compute "sumALTER_AMOUNT" , "true" ; de_ALTER_AMOUNT = Convert.ToDecimalobj is DBNull . 0.00 : obj;this .jLabel_ALTER_AMOUNT.Text = de_ALTER_AMOUNT.ToString "0.00" ; obj = cloneTable.Compute "sumALL_CLAIM_AMOUNT", "true" ; de_ALL_CLAIM_AMOUNT = Convert.ToDecimalobj is DBNull . 0.00 : obj;this .jLabel_CLAIM_AMOUNT.Text = de_ALL_CLAIM_AMOUNT.ToString "0.00" ; obj = cloneTable.Compute "sumPAY_AMOUNT", "true" ; de_PAY_AMOUNT = Convert.ToDecimalobj is DBNull . 0.00 : obj;this .jLabel_PAY_AMOUNT.Text = de_PAY_AMOUNT.ToString "0.00" ; obj = cloneTable.Compute "sumALL_RP_AMOUNT" , "true" ; de_ALL_RP_AMOUNT = Convert.ToDecimalobj is DBNull . 0.00 : obj;this .jLabel_RP_AMOUNT.Text = de_ALL_RP_AMOUNT.ToString "0.00" ; obj = cloneTable.Compute "sumEXE_AMOUNT", "true" ; de_EXE_AMOUNT = Convert.ToDecimalobj is DBNull . 0.00 : obj;this .jLabel_EXE_AMOUNT.Text = de_EXE_AMOUNT.ToString "0.00" ; obj = cloneTable.Compute "sumAPPLY_AMOUNT" , "true" ; de_APPLY_AMOUNT = Convert.ToDecimalobj is DBNull . 0.00 : obj;5 / 9 名师归纳总结 - - - - - - -第 5 页,共 9 页精选学习资料 - - - - - - - - - this .jLabel_APPLY_AMOUNT.Text = de_APPLY_AMOUNT.ToString "0.00" ; obj = cloneTable.Compute "sumAPPLY_APPROVE_AMOUNT " , "true" ; de_APPLY_APPROVE_AMOUNT = Convert.ToDecimalobj is DBNull . 0.00 : obj;this .jLabel_APPROVE_AMOUNT.Text = de_APPLY_APPROVE_AMOUNT.ToString "0.00" ; obj = cloneTable.Compute "sumFINAL_AMOUNT ", "true" ; de_FINAL_AMOUNT = Convert.ToDecimalobj is DBNull . 0.00 : obj;this .jLabel_FINAL_AMOUNT.Text = de_FINAL_AMOUNT.ToString "0.00" ;重构后:DataRow hz_Row = dt.Select "ZONE_CODE='DT'" ;if hz_Row.Length = 0 return ; DataRow cur_hzRow = hz_Row0;this .jLabel_Contrat_Count.Text = cur_hzRow "CONTACT_COUNT" .ToString;this .jLabel_SIGN_AMOUNT.Text = cur_hzRow "SIGN_AMOUNT" .ToString;this .jLabel_ALTER_AMOUNT.Text = cur_hzRow "ALTER_AMOUNT" .ToString;this .jLabel_CLAIM_AMOUNT.Text = cur_hzRow "ALL_CLAIM_AMOUNT" .ToString;this .jLabel_PAY_AMOUNT.Text = cur_hzRow "PAY_AMOUNT" .ToString;this .jLabel_RP_AMOUNT.Text = cur_hzRow "ALL_RP_AMOUNT" .ToString;this .jLabel_EXE_AMOUNT.Text = cur_hzRow "EXE_AMOUNT" .ToString;this .jLabel_APPLY_AMOUNT.Text = cur_hzRow "APPLY_AMOUNT" .ToString;this .jLabel_APPROVE_AMOUNT.Text = cur_hzRow "APPLY_APPROVE_AMOUNT" .ToString;this .jLabel_FINAL_AMOUNT.Text = cur_hzRow "FINAL_AMOUNT".ToString;合同统计分析 JBtn_Query_Click 方法if jCHK_ALL.Checked .= true if jCHK_FENG.Checked sb.Append" G.PROJECT_TYPE IN'1'" ; if jCHK_HUO.Checked if sb.Length = 0 sb.Append" G.PROJECT_TYPE IN'0'" ; else sb.Append",'0'" ;6 / 9 名师归纳总结 - - - - - - -第 6 页,共 9 页精选学习资料 - - - - - - - - - if jCHK_SHUI.Checked if sb.Length = 0 sb.Append" G.PROJECT_TYPE IN'2'" ; else sb.Append",'2'" ; if sb.Length > 0 sb.Append "" ;if jCHK_OTHER.Checked if sb.Length > 0 sb.Append" AND G.PROJECT_TYPE NOT IN'0','1','2'" ; else sb.Append" G.PROJECT_TYPE NOT IN'0','1','2'" ; 3. 削减网络传输时间削减数据查询次数,削减结果数据集;合同统计分析GET_CONTRACT_COLLECT_SOURCE, ;DataView dv = eMisSurface1.ExecProcedureSQL"GCMIS", "p_ht_contrat_collect"param.Tables0.DefaultView;, dv.RowFilter = string.Format "ZONE_ID='0' OR PARENT_ID='1'"eMisSurface1.CurUserZoneActorInfo.Zoneid, eMisSurface1.CurUserZoneActorInfo.Zoneid DataTable dt = dv.ToTable; jTreeGridV_V_HT_CONTRAT_COLLECT.DataSource = dt;多个查询控件,但查询的是同一个表,能否一次查询,再过滤;(如合同综合查询中的查询控件)7 / 9 名师归纳总结 - - - - - - -第 7 页,共 9 页精选学习资料 - - - - - - - - - 4. 常量常量尽可能进行定义,而不是直接写在代码中;5. 代码重构代码重构和设计是互补的 重构使设计方案更简洁重构能防止过度设计重构代码的目的:1:提高效率 2:代码简洁、整齐 3:代码更易读在什么时机重构代码:1:增加新功能时 2:修改 Bug 时 3:代码走读6. 代码走读建议设计人员进行各自模板的代码走读;建议每周每人抽半天时间可以任意挑选部分代码进行走读,一方面是发觉问题,二是 相互沟通、学习;参考资料: 重构 -改善既有代码的设计8 / 9 名师归纳总结 - - - - - - -第 8 页,共 9 页精选学习资料 - - - - - - - - - 9 / 9 名师归纳总结 - - - - - - -第 9 页,共 9 页

    注意事项

    本文(2022年聚集大全C代码优化的一些案例.docx)为本站会员(H****o)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开