1. 个人经验总结 - 桌面开发经验总结

  • 多线程
    • 耗时长的操作尽量不在界面主线程里做,另外起线程
      • 如果其中又需要更新界面,那么要找某种方式来进行(比如winform中要用BeginInvoke,BeginInvoke的原理是?)
      • 同时注意合理使用“loading...”文本或者图片或者progress bar
    • 由于和web应用相比,桌面应用大量自行处理多线程,所以要特别注意数据同步等问题
    • 如果在窗体的构造函数中使用多线程,要注意线程中操作窗体元素可能会出问题,因为有可能主线程的窗体还未创建完成
      • 调试时可能是Ok的,是因为断点在子线程停住了,主线程自己跑完了,所以这时候窗体是创建完成了,但实际运行过程中是不同的,很可能为创建完成
      • 如在winform中,可以选择将构造函数中的多线程逻辑放到Form的Shown生命周期时间中去处理,这样可以保证运行这段代码时,窗体肯定加载完成了
  • 尽量将UI操作和逻辑/数据操作分开
    • 当然WPF等框架正常使用的话,应该已经分清楚了
    • 如果是在winform这种没有从框架级别上区分开的技术中,尽量分别作为独立的类或者函数

posted on 2019-08-21 11:35  碎羽love星谊  阅读(177)  评论(0编辑  收藏  举报

导航