10步让你成为更优秀的程序员
这篇文章要介绍的是我作为专业程序员这些年来学到的能真正提高我的代码质量和整体工作效率的10件事情。
1.永远不要复制代码
///
/// 一些函数含有部分重复代码
///
void OriginalA()
{
DoThingsA();
// unique code
DoThingsB();
}
///
/// 另外一个含有部分重复代码的函数
///
void OriginalB()
{
DoThingsA();
// 没有重复的代码
DoThingsB();
}
现在我们重构含有部分相同代码的函数,用delegate模式重写它们:
///
/// Encapsulate shared functionality
///
/// User defined action
void UniqueWrapper(Action action)
{
DoThingsA();
action();
DoThingsB();
}
///
/// New implmentation of A
///
void NewA()
{
UniqueWrapper(() =>
{
// unique code
});
}
///
/// New implementation of B
///
void NewB()
{
UniqueWrapper(() =>
{
// unique code
});
}
2.留意你开始分心的时候
3.不要匆忙赶任务而放弃原则
4.测试你完成的代码
5. 代码审查
6. 让代码更少
if (numMines > 0)
{
enabled=true;
}
else
{
enabled=false;
}
这时你应该写成这样:
enabled = numMines > 0;
7.为优雅的代码而努力
static public double GetConvexPolygonArea(Vector2[] vertices)
{
double area = 0;
for (int i = 0; i <</span> vertices.Length; i++)
{
Vector2 P0 = vertices[i];
Vector2 P1 = vertices[(i + 1) % vertices.Length];
area += P0.Wedge(P1);
}
return area / 2;
}
8.编写不言自明的代码
void DamagePlayer(Player player, int damageAmount)
{
if (!player.m_IsInvincible && !player.m_IsDead)
{
player.InflictDamage( damageAmount );
}
}
9.不要使用纯数字
10.不要做手工劳动
11.避免过早优化
好吧,我说是10个,但你却得到了额外赠送的一个!
这些就是我要说的,我希望它们能帮助你改进编程开发过程。
下次再见!祝快乐!
Cheers,Paul.
[本文英文原文链接:10steps to becoming a betterprogrammer