מילים שמורות

‏ • 3 באפריל, 2002



מהי מילה שמורה?

מילה שמורה הינה מילה או ביטוי אשר מהווה חלק מובנה מפשת תכנות כלשהי. לדוגמא, מילת התנאי if הינה חלק מובנה בשפות VBS, JS ועוד רבות אחרות.
יש להמנע משימוש במילים שמורות בכתיבת הקוד. שמות משתנים, פונקציות וביטויים שונים, אסור שיהיו מילה שמורה.
במקרה הטוב, שימוש במילה שמורה תגרום לשגיאה, קלה או קשה יותר להבנה, אשר תצריך את תיקון הקוד כדי לאפשר את הרצת התוכנית.
במקרה הגרוע – שימוש במילה שמורה תגרום לטעיות לוגיות, אשר אינן גוררות הודעת שגיאה, ולכן האיתור שלה יהיה קשה יותר.

אז איך נמנעים מזה?

רצוי לתת שמות משמעותיים וייחודיים למשתנים, פונקציות וגם לטבלאות או שדות אם מדובר בבניית בסיס נתונים.
מתן שמות למשתנים / שדות :
בעת מתן שם למשתנים או לשדות בטבלה, נהוג לציין גם את סוג המשתנה או השדה ולצרפו לשם.
לדוגמא:
strName – משתנה מסוג מחרוזת המכיל שם כלשהו
intNum – משתנה מסוג מספר שלם
txtTitle – שדה מסוג Text, המכיל כותרת
objConn – אובייקט החיבור
להרגל זה שני ייתרונות ברורים:


  • השם לעולם לא יהיה מילה שמורה
  • הקוד יהיה מובן וברור יותר, אם לא נצטרך לנחש כל פעם מהו סוג המשתנה/שדה.

מתן שמות לטבלאות:
נהוג, כקידומת לשם הטבלה, להוסיף את הקיצור tbl, כדי להקל על ההבנה שמדובר אכן בטבלה בבסיס הנתונים, וכדי למנוע שימוש במילים שמורות:
tblPeople – טבלת האנשים
tblLinks – טבלת הקישורים

רשימת המילים השמורות ב- MS-Access ושפת ה-SQL:















































































































































































































































































































































































































































A
ADDALLAlphanumericALTERAND
ANYApplicationASASCAssistant
AUTOINCREMENTAvg   
B
BETWEENBINARYBITBOOLEANBY
BYTE    
C
CHARCHARACTERCOLUMNCompactDatabaseCONSTRAINT
ContainerCountCOUNTERCREATECreateDatabase
CreateFieldCreateGroupCreateIndexCreateObjectCreateProperty
CreateRelationCreateTableDefCreateUserCreateWorkspaceCURRENCY
CurrentUser    
D
DATABASEDATEDATETIMEDELETEDESC
DescriptionDISALLOWDISTINCTDISTINCTROWDocument
DOUBLEDROP   
E
EchoElseEndEqvError
F
EXISTSExitFALSEFieldFields
FillCacheFLOATFLOAT4FLOAT8FOREIGN
FormFormsFROMFullFUNCTION
G
GENERALGetObjectGetOptionGotoPageGROUP
GROUP BYGUID   
H
HAVING    
I
IdleIEEEDOUBLEIEEESINGLEIfIGNORE
ImpINInINDEXIndex
IndexesINNERINSERTInsertTextINT
INTEGERINTEGER1INTEGER2INTEGER4INTO
IS    
J – K
JOINKEY   
L
LEFTLevelLikeLOGICALLOGICAL1
LONGLONGBINARYLONGTEXT  
M
MacroMatchMaxMinMod
MEMOModuleMONEYMove
N
NAMENewPasswordNONotNULL
NUMBERNUMERIC   
O
ObjectOLEOBJECTOFFONOpenRecordset
OPTIONOROrORDEROuter
OWNERACCESS    
P
ParameterPARAMETERSPartialPERCENTPIVOT
PRIMARYPROCEDUREProperty  
Q
QueriesQueryQuit  
R
REALRecalcRecordsetREFERENCESRefresh
RefreshLinkRegisterDatabaseRelationRepaintRepairDatabase
ReportReportsRequeryRIGHT 
S
SCREENSECTIONSELECTSETSetFocus
SetOptionSHORTSINGLESMALLINTSOME
SQLStDevStDevPSTRINGSum
T
TABLETableDefTableDefsTableIDTEXT
TIMETIMESTAMPTOPTRANSFORMTRUE
Type    
U
UNIONUNIQUEUPDATEUser 
V
VALUEVALUESVarVarPVARBINARY
VARCHAR    
W – Z
WHEREWITHWorkspaceXorYear
YESYESNO   

רשימת המילים השמורות בשפת VBS



















































































































































A – D
AndAsBooleanByRefByte
ByValCallCaseClassConst
CurrencyDebugDimDoDouble
E – H
EachElseElseIfEmptyEnd
EndIfEnumEqvEventExit
FalseForFunctionGetGoTo
I – L
IfImpImplementsInInteger
IsLetLikeLongLoop
LSet    
M – P
MeModNewNextNot
NothingNullOnOptionOptional
OrParamArrayPreservePrivatePublic
Q – T
RaiseEventReDimRemResumeRSet
SelectSetSharedSingle
StaticStopSubThenToTrue
TypeTypeOf   
U – Z
UntilVariantWendWhileWith
Xor    

רשימת המילים השמורות בשפת Jscript










































































A – D
breakcasecatchclassconst
continuedebuggerdefaultdeletedo
E – H
elseenumexportextendsfalse
finallyforfunction  
I – L
ifimportininstanceof 
M – S
newnullreturnsuperswitch
T – Z
thisthrowtruetrytypeof
varvoidwhilewith 

תגיות: , , , ,

תגובות בפייסבוק