请教大家平日编程时应该注意哪些细节问题

香肠 2012-03-05 10:44:21
最近编程时总觉得自己的一些细节方面有很多困惑,比如...
情况1:

private void UpdateMPointsInStations()
{
foreach (BaseItem item in itemPanel3.Items)
{
ButtonItem btn = item as ButtonItem;
int MPID = Convert.ToInt32(btn.Tag);
Dictionary<string, string> data = new Dictionary<string, string>();
data.Add("StatID", "null");
db.Update("MPoints", data, string.Format("MPID = {0}", MPID));
}
}

这样的代码在循环里重复声明和生成变量再销毁,是不是很浪费资源或者说性能会很受影响?

情况2:

private void Initialize() {

//初始化传感器名字的列表
InitSenList(SenList);
//显示在当前工作站下,已选择的工作站
showSelectedPointsInLeftPanel(itemPanel4);
//初始化剩余未被部署的测点于itemPanel中
InitRestUnSelectedMPointsInRightPanel(itemPanel3);
//初始化剩余未被分配的传感器于itemPanel中
InitRestUnSelectedSensorInRightPanel(itemPanel5);
//初始化表格信息
InitDataGridViewForMap(dataGridViewX1);
//每次刷新时先清空itemPanel6
InitItemPanel6(itemPanel6);
}

我习惯于在调用方法的时候每一步写上注释说明,而不是每个函数定义的部分写上注释,这也是我个人的编程习惯和爱好。但是同事读我代码时他老是说不方便。

所以我想问问平时编写代码时应该注意哪些细节?我知道我现在编写的程序只是一些小的应用,但我只希望趁我还年轻,能够有一个好的编程习惯和风格。
真心求助,谢谢大家~
...全文
99 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
香肠 2012-03-05
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 q107770540 的回复:]

PS:
变量命名也不规范
MPID 全大写的命名,一般只用于常量

int MPID = Convert.ToInt32(btn.Tag);
这句,当btn.Tag为空或为非数字时,不是又要抛异常了,同学?
[/Quote]

谢谢提醒,我也觉得
Dictionary<string, string> data = new Dictionary<string, string>();

这句放在foreach里有些不妥,只是有些不确定。

“全大写的命名,一般只用于常量”,这下我记住了~

“btn.Tag”提到这个,也是我想问到的一个问题:我明明知道它在我的代码都有值,而且都是数字,那我还有必要去抓抓异常吗?或许就是因为这一点,我就怕我的东西叫上去会“明明当初我编的时候都是正常的,不报错的,怎么项目拿上去提交测试的时候就是各种问题呢?”

回复3楼:我用的Devcomponents的那个组件里的itempanel里的,整个代码只用到了buttonitem,我还有必要去检查类型吗?
bdmh 2012-03-05
  • 打赏
  • 举报
回复
因为不知道 你的类是什么类型,ButtonItem btn = item as ButtonItem;这个是否有必要呢
q107770540 2012-03-05
  • 打赏
  • 举报
回复
PS:
变量命名也不规范
MPID 全大写的命名,一般只用于常量

int MPID = Convert.ToInt32(btn.Tag);
这句,当btn.Tag为空或为非数字时,不是又要抛异常了,同学?
q107770540 2012-03-05
  • 打赏
  • 举报
回复
1.
Dictionary<string, string> data = new Dictionary<string, string>();
data.Add("StatID", "null");

data完全没必要定义在foreach里呀


2. VS提供了xml格式 (///)的注释你不用
弯月满弦 2012-03-05
  • 打赏
  • 举报
回复
每个函数也要写啊。函数的作用,参数意义,返回值,这些是让别人知道你这个方法的具体信息,而不是调用时候的意思
弯月满弦 2012-03-05
  • 打赏
  • 举报
回复
private void UpdateMPointsInStations()
{
Dictionary<string, string> data = new Dictionary<string, string>();
data.Add("StatID", "null");
foreach (BaseItem item in itemPanel3.Items)
{
ButtonItem btn = item as ButtonItem;
int MPID = Convert.ToInt32(btn.Tag);
db.Update("MPoints", data, string.Format("MPID = {0}", MPID));
}
}

110,529

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧