zoukankan      html  css  js  c++  java
  • 1. 个人经验总结

    • 多线程
      • 耗时长的操作尽量不在界面主线程里做,另外起线程
        • 如果其中又需要更新界面,那么要找某种方式来进行(比如winform中要用BeginInvoke,BeginInvoke的原理是?)
        • 同时注意合理使用“loading...”文本或者图片或者progress bar
      • 由于和web应用相比,桌面应用大量自行处理多线程,所以要特别注意数据同步等问题
      • 如果在窗体的构造函数中使用多线程,要注意线程中操作窗体元素可能会出问题,因为有可能主线程的窗体还未创建完成
        • 调试时可能是Ok的,是因为断点在子线程停住了,主线程自己跑完了,所以这时候窗体是创建完成了,但实际运行过程中是不同的,很可能为创建完成
        • 如在winform中,可以选择将构造函数中的多线程逻辑放到Form的Shown生命周期时间中去处理,这样可以保证运行这段代码时,窗体肯定加载完成了
    • 尽量将UI操作和逻辑/数据操作分开
      • 当然WPF等框架正常使用的话,应该已经分清楚了
      • 如果是在winform这种没有从框架级别上区分开的技术中,尽量分别作为独立的类或者函数
  • 相关阅读:
    Delphi中 弹出框的用法
    VC++代码上传到VSS上 注意事项
    VC++ 屏蔽掉警告
    IIS LocalDB 登录失败
    SVN版本回滚实战
    Git常用命令图解
    C# 百度API地址坐标互相转换
    Quartz.NET浅谈一 : 简单Job使用(定时发送QQ邮件)
    发布自己的类库包到Nuget
    C# 常用日期取得
  • 原文地址:https://www.cnblogs.com/wyp1988/p/11387824.html
Copyright © 2011-2022 走看看