Solved

where can I get the criterion of code writing ?

Posted on 2002-05-14
5
167 Views
Last Modified: 2010-05-18
   I want a criterion of VB code writing to standard my VB code and make it more effective. Can someone tell me how to get that?
0
Comment
Question by:Iaskyou
5 Comments
 
LVL 69

Expert Comment

by:Éric Moreau
ID: 7008141
1. Never use Variant/Object datatypes when you can use a native datatype.
0
 
LVL 100

Expert Comment

by:mlmcc
ID: 7008506
Are you looking for a programming standard to follow?

mlmcc
0
 
LVL 100

Expert Comment

by:mlmcc
ID: 7008543
0
 
LVL 22

Accepted Solution

by:
rspahitz earned 50 total points
ID: 7009481
Programming is not like assembly line building.  It is more of an artform with a very scientific result.

Generally, programmers have found that certain things work better than others, but many of these tactics are merely styles that vary by language.

For example, VB programmers often prefix their variables with a three-letter code to indicate the type of data held in the variable.  Many use all capital letters for CONSTANTS.

Those are the easy parts.  The actually coding itself is so unique that is you asked 10 programmers to write a simple loop to perform some calculation, you'd likely get 10 different and equally correct answers.

All that said, here are some tips:

* When writing code, write it with self-documenting variable names such as strName (a string variable that will hold a name) and intLetterCntr (an integer variable used for counting letters.)

* Create modules that are less than 50 lines of code.  Bigger than that, you should probably break it up into subroutines or functions

* Place all variables references for a given module at the top of that module.  Don't make them anything other than local unless you absolutely must have that variable's *information* used elsewhere.  A common mistake is to make a variable global because a certain functin is used over and over.  For example, don't make intCntr global; rather make multiple local copies as you need them.

* Anything that will be used many times should be placed into a separate subroutine or function.

* Any numeric or string constants that are not immediately obviously should be made into constants so they are self-documenting, such as Const PI = 3.14159.  This will ensure that your constants are used for their intended purpose and that other developers can easily understand and fix as needed (such as if more precision is needed or if the value was mistakenly entered as 3.14169.

* Subroutines should usually be private within a form module.  If there is a need to make it public, move it to a standard or class module.

...
You know, I could write an entire book on this stuff!
0
 
LVL 1

Expert Comment

by:Moondancer
ID: 7014678
You have 15 open questions, all of which need your attention.  Many are posted at less than the recommended minimum of 50 points for easy questions.  The maximum per question is 500 points.  .  ADMINISTRATION WILL BE CONTACTING YOU SHORTLY.  Moderators Computer101, Netminder or Mindphaser will return to finalize these if they are still open in 7 days.  Experts, please post closing recommendations before that time.

Below are your open questions as of today.  Questions which have been inactive for 21 days or longer are considered to be abandoned and for those, your options are:
1. Accept a Comment As Answer (use the button next to the Expert's name).
2. Close the question if the information was not useful to you, but may help others. You must tell the participants why you wish to do this, and allow for Expert response.  This choice will include a refund to you, and will move this question to our PAQ (Previously Asked Question) database.  If you found information outside this question thread, please add it.
3. Ask Community Support to help split points between participating experts, or just comment here with details and we'll respond with the process.
4. Delete the question (if it has no potential value for others).
   --> Post comments for expert of your intention to delete and why
   --> YOU CANNOT DELETE A QUESTION with comments; special handling by a Moderator is required.

For special handling needs, please post a zero point question in the link below and include the URL (question QID/link) that it regards with details.
http://www.experts-exchange.com/jsp/qList.jsp?ta=commspt
 
Please click this link for Help Desk, Guidelines/Member Agreement and the Question/Answer process.  http://www.experts-exchange.com/jsp/cmtyHelpDesk.jsp

Click you Member Profile to view your question history and please keep them updated. If you are a KnowledgePro user, use the Power Search option to find them.  

Questions which are LOCKED with a Proposed Answer but do not help you, should be rejected with comments added.  When you grade the question less than an A, please comment as to why.  This helps all involved, as well as others who may access this item in the future.  PLEASE DO NOT AWARD POINTS TO ME.

To view your open questions, please click the following link(s) and keep them all current with updates.
http://www.experts-exchange.com/questions/Q.20244115.html
http://www.experts-exchange.com/questions/Q.20248672.html
http://www.experts-exchange.com/questions/Q.20252933.html
http://www.experts-exchange.com/questions/Q.20253383.html
http://www.experts-exchange.com/questions/Q.20261042.html
http://www.experts-exchange.com/questions/Q.20261024.html
http://www.experts-exchange.com/questions/Q.20261446.html
http://www.experts-exchange.com/questions/Q.20278549.html
http://www.experts-exchange.com/questions/Q.20278616.html
http://www.experts-exchange.com/questions/Q.20279154.html
http://www.experts-exchange.com/questions/Q.20286865.html
http://www.experts-exchange.com/questions/Q.20291750.html
http://www.experts-exchange.com/questions/Q.20293365.html
http://www.experts-exchange.com/questions/Q.20300317.html
http://www.experts-exchange.com/questions/Q.20301140.html



*****  E X P E R T S    P L E A S E  ******  Leave your closing recommendations.
If you are interested in the cleanup effort, please click this link
http://www.experts-exchange.com/jsp/qManageQuestion.jsp?ta=commspt&qid=20274643
POINTS FOR EXPERTS awaiting comments are listed in the link below
http://www.experts-exchange.com/commspt/Q.20277028.html
 
Moderators will finalize this question if in @7 days Asker has not responded.  This will be moved to the PAQ (Previously Asked Questions) at zero points, deleted or awarded.
 
Thanks everyone.
Moondancer
Moderator @ Experts Exchange
0

Featured Post

IT, Stop Being Called Into Every Meeting

Highfive is so simple that setting up every meeting room takes just minutes and every employee will be able to start or join a call from any room with ease. Never be called into a meeting just to get it started again. This is how video conferencing should work!

Join & Write a Comment

Introduction While answering a recent question (http://www.experts-exchange.com/Q_27402310.html) in the VB classic zone, I wrote some VB code in the (Office) VBA environment, rather than fire up my older PC.  I didn't post completely correct code o…
Introduction While answering a recent question about filtering a custom class collection, I realized that this could be accomplished with very little code by using the ScriptControl (SC) library.  This article will introduce you to the SC library a…
As developers, we are not limited to the functions provided by the VBA language. In addition, we can call the functions that are part of the Windows operating system. These functions are part of the Windows API (Application Programming Interface). U…
Get people started with the process of using Access VBA to control Excel using automation, Microsoft Access can control other applications. An example is the ability to programmatically talk to Excel. Using automation, an Access application can laun…

743 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

10 Experts available now in Live!

Get 1:1 Help Now