C#做项目时的一些经验分享

1、对于公用的类型定义,要单独抽取出来,放到单独的DLL中。

2、通过大量定义interface接口,来提高模块化程度,不同功能之间通过实现接口来面向接口编程。

3、如果项目中存在很多非常相似,但是又存在一些差异的类,最好的办法是进一步抽象,得到它们的共同基类,将相同点放到基类中实现,然后通过派生类实现差异。使用方根据实际情况决定自己要使用的类。

4、项目中,经常会遇到一些全局范围内有且只有一个实例的类,该怎么办呢?此时,请一定要想起单例模式。定义一个类,该类只开放一个静态方法GetInstance,在该方法中,要么直接返回已经创建过的实例,要么创建一个新的返回其引用。

5、对于异常捕获来说,并非将全部代码都放到try-catch中就是好的做法,好的做法是只将必要的代码,以及可能会出现异常的代码放到里面,同时为了避免未捕获的异常导致程序意外退出,需要在Program中添加捕获未处理异常的代码,此时还应该区分UI线程和工作者线程都可能产生未处理的异常,程序应该同时捕获并处理它们(记录到日志)。

6、对于使用this.invoke转发工作者线程处理结果,或者处理的中间状态信息的地方,不需要加try-catch。如果要加,只需要加到invoke之后即可。

7、有时候,界面上可能存在设计时和运行时状态不一样,请想起来DesignMode属性。

8、基本上,每个项目都会涉及系统的一些运行参数的序列化问题。常见的两种处理方案:

1、使用ini来保存。

2、可以写个类,使用静态属性来保存所有设置,然后提供save方法,load方法,reload方法,然后将值都序列化到二进制文件中去。

时间: 2024-07-30 17:42:10

C#做项目时的一些经验分享的相关文章

做项目时需要考虑的安全性问题

在开发一个项目的时候,大家经常会忽略项目的安全性问题,有很多的安全性问题其实就是一个意识的问题,解决起来并不复杂,但是因为这些疏忽,却可能会给我们的用户带来很大的风险.下面就列举一些在做项目的时候应该考虑的一些安全性问题. 密码保存 保存密码的第一准则是不能明文保存密码,之前CSDN密码泄露一事还记忆犹新.通常的做法是对密码进行不可逆加密,加密时不要使用MD5或者SHA系列的算法加密,现在对这两个算法的破解研究工作已经有了相当的进展.推荐使用bcrypt. CI服务器的安全性 CI服务器和Bui

公司做项目的几点经验总结(个人经验)

首先作为一个低级码农,写这篇文章是需要一点勇气的..哈哈哈...毕竟自己也才做了几个小项目而已,没有资格高谈阔论.反正就是希望给一些不知道的人一些思路,知道的活就不用看了.本文是从程序员视角进行分析. 1.项目的注释. 这是一个很大的而且很严重的问题,一般只要公司不做强制性要求的话,至少我们部门,我很少看到能有自觉写注释的人.这就导致了一个问题,如果那个人的方法写得很复杂,或者命名不规范的话,又没有注释,当然雪上加霜了,结果就是,其他人看那个人写的代码,不说看不懂,调不通,至少也会花费大量的时间

今天做项目时,用到了好多关于js的知识点,有的忘记了,然后晚上回来自己整理一番,明天继续整理。哈哈,分享给大家。

javascript 数据类型 typeof (直接量/变量)-------判断数据类型 简单数据类型(栈,空间小,速度快) string字符串 用引号引起来的文本 number数字 所有数字 NaN 当运算发生错误时会显示 IsNaN 判断数据是不是非数字 true false boolean布尔 表示一个数据是否是正确的 true false undefined 未定义的变量 定义但没赋值的变量 null在栈中开辟一块空间 复杂数据类型(变量名在栈,内容在堆,通过地址连接) object对象

微信小程序豆瓣电影项目的改造过程经验分享

在学习微信小程序开发过程中,一部分的难点是前端逻辑的处理,也就是对前端JS的代码编辑:一部分的难点是前端界面的设计展示:本篇随笔基于一个豆瓣电影接口的小程序开源项目进行重新调整,把其中遇到的相关难点和改进的地方进行讨论介绍,希望给大家提供一个参考的思路,本篇随笔是基于前人小程序的项目基础上进行的改进,因此在开篇之前首先对原作者的辛劳致敬及感谢. 1.豆瓣电影接口的小程序项目情况 豆瓣电影接口提供了很多相关的接口给我们使用,豆瓣电影接口的API地址如下所示:https://developers.d

做项目时自己的心得体会

这段时间一直在和小伙伴们一起搞那个辅助教学的网站,虽然刚起步,但是还是有许多体会. 对于学习建设网站,我还是个新手,所以又得学习一门或者多门编程语言,但对于学习新语言 来说,急功近利是大忌,但是又必须在一定的时间内学会这些知识,这又是一大难点,但是呢, 就我自己这两周来的经验,我发现一味的看书或者一味的模仿别人视频做都是没效果的,要能做 到快速学会这些技能,实战是免不了的.在我们小组经常聚在一起讨论和建设的过程中,边用边学 边查就成为了一个快速入门的方法.我们先画出大概的网站规划图,照着图纸来做

做项目时应怎样注意外键关系

对于 外键不同公司处理的机制不同的. 某些公司, 是不显示定义外键的.表关联的时候, 自己 写关联条件.这种方式的好处是, 开发阶段, 可能要经常清理数据. 没有外键约束, 可以自由清除.缺点嘛, 就是 如果你的项目,访问数据库的代码, 是 ORM 工具生成的话. 例如 微软的 Linq to SQL 或者 Entity Framework. 如果你没有外键, 工具不会自动生成关联. 某些公司, 是显示定义外键的.好处就是 数据完整性有保障.ORM 工具生成代码的时候,可以帮你把关联属性生成出来

SqlDbHelper备份,做项目时方便应用(目前不太全,把自己项目中的逐渐转移过来)

****************************************** 这是官网新闻左侧类别那部分用到的 **************************************** public string ConnectionString = ConfigurationManager.ConnectionStrings["GsWebDbEntities"].ConnectionString; public myDBHelper() { // //TODO: 在此

近期做项目时遇到的一些问题

1.首先就是代码质量不高,把功能实现了就没有去管代码写得怎么样 逻辑一定要清晰,无意义的代码不能有.代码应该变得简洁,不到万不得已不能使用hard code,不要在一个方法里面写很多的功能代码,应该提炼出来,分成几个方法.完成一个功能后就应该重读几遍所写的代码,保证代码质量过关. 2.变量名取得要有意义,能达到见名知义的效果.

【经验分享】响应式网站项目实操过程中的那些事儿

本次网站改版升级是我来到新公司的第一个项目,需求之初并没有提及要做响应式,在首次评审时领导和研发均认为响应式处理与我们网站相对契合,就这样我开始了我职场生涯中第一个响应式网站设计.下面就跟大家分享响应式网站设计中的那些事儿. 因为本人之前并没有接触过响应式设计,在项目开始前便恶补了一些响应式的基础知识.理论性资料网上众多,为了使各位对响应式有初步印象和认知,我在这里只做简单描述,各位若想要更全面深入的了解可自行百度. 1什么叫响应式设计,为什么要做响应式设计 (1)页面的设计和开发应当根据用户行