如何成为人尽皆知的C#开发人员

    这篇指导最终会教你如何成为你的同事中最受欢迎的人,您将成为他们在休息和工作时间的聊天的英雄,甚至可以说这篇指导能帮助减少你的工作,你能得到你的同事的慷慨帮助,他们想帮你做你的工作。因为你的名声!

1、变量命名可以显示你创造潜力,不要使用标识法和准则来烦扰你自己,这些全都会限制你的灵感,如果您使用一个未知的命名方案,你会得到赞扬,您的同事会尊敬你。

bool rAgeaggainStmaShine = false;
int dd44 = 12;
bool dude = true;

2、成为天才,给方法和参数取一些耐人寻味的名字

public int ViriableInflationModusOperandi(int variable, int inflator)
{
    
return variable * inflator;
}

3、用非常专业态度去注释你的代码。注释有助于正确的理解你的代码。

// This variable is named after my mom. Wyburga-Thomasia Flandrina. Remember it!
long wtf = 1;

4、你的代码不要写太多的注释。过多的注释让你的同事感到紧张-因为你认为他们不明白?如果你让他们有机会思考,他们会尊重你。

代码
/// <summary>
/// Perform image check.
/// </summary>
public static void ImageRoutine(Image image)
{
    
if ((image != null&& (imageInfoList != null))
    {
        
bool isReaderLockHeld = rwImgListLock.IsReaderLockHeld;
        LockCookie lockCookie 
= new LockCookie();
        threadWriterLockWaitCount
++;
        
try
        {
            
if (isReaderLockHeld)
            {
                lockCookie 
= rwImgListLock.UpgradeToWriterLock(-1);
            }
            
else
            {
                rwImgListLock.AcquireWriterLock(
-1);
            }
        }
        
finally
        {
            threadWriterLockWaitCount
--;
        }
        
try
        {
            
for (int i = 0; i < imageInfoList.Count; i++)
            {
                ImageInfo item 
= imageInfoList[i];
                
if (image == item.Image)
                {
                    
return;
                }
            }
        }
        
finally
        {
            
if (isReaderLockHeld)
            {
                rwImgListLock.DowngradeFromWriterLock(
ref lockCookie);
            }
            
else
            {
                rwImgListLock.ReleaseWriterLock();
            }
        }
    }
    
//Everything is done. Return.
}

5、使用封装。这是面向对象的关键原则之一。比较这两个例子:

Example #1:

public int AddTwo(int arg)
{
    
return arg + 2;
}

public int AddOne(int arg)
{
    
return arg + 1;
}

public void Main()
{
    
int calc = AddOne(AddTwo(5));
}

 Example #2:

public void Main()
{
    
int calc = 5 + 2 + 1;
}

很明显,Example #1看起来更加稳固。它有更多的代码,一切都被封装,并且代码看起来令人印象深刻。

6、编写更少的代码。这将导致更少的错误,更少的支援的时间和更多的娱乐时间。考虑下面的结构:

common.js:

代码
function deleteUser(userId)
{
    $.
get("sqlengine.ashx",
    { sql: 
"delete from [User] where Id = " + userId  } );
}

function insertUser(userName)
{
    $.
get("sqlengine.ashx",
    { sql: 
"insert into [User] values ('" + userName + "')" } );
}

sqlengine.ashx:

代码
public void ProcessRequest(HttpContext context)
{
    var con 
= new SqlConnection("connectionString");
    con.Open();
    var cmd 
= new SqlCommand(context.Request.QueryString["sql"]);
    cmd.Connection 
= con;
    cmd.ExecuteNonQuery();
    con.Close();
}

你得到:注重AJAX化的页面,快速开发,多层体系结构。

7、编写天才的代码。你的同事会感谢你的见解。

编写:

int year = 0x000007D9;

而不是:

int year = 2009;

编写:

var sb = new StringBuilder();
sb.Append(“Error:”);
sb.Append(
2001);
sb.Append(“.”);
return sb.ToString();

而不是:

return string.Format(“Error: {0}.”, 2001);

编写:

代码
/// <summary>
/// Does mysterious transformation of TRUE to FALSE and vice versa.
/// </summary>
public static bool TheGreatLifeTransformation(bool valueToTransform)
{
    
if (valueToTransform == true)
    {
        
return false;
    }
    
if (valueToTransform == false)
    {
        
return true;
    }

    
throw new ArgumentOutOfRangeException();
}

而不是:

!value

     如果您按照这些简单的步骤去做,你的名字将很快被你的所有同事知道。你将是一个非常受欢迎的人-你的同事会向你提供建议,聊天和握手。其中一些同事可能会问你的秘密。如果发生这种情况,你可以给他们如下答复(要用导师的声音说):
"Writing code is a transcendental process of transformation of infinite chaos into finite reality with coherence, of course"。

 参考原文:http://www.codeproject.com/KB/cs/Rumorous_Developer.aspx

 

 


posted @ 2010-01-15 10:29  麒麟  阅读(8472)  评论(71编辑  收藏  举报