מילים שמורות
מהי מילה שמורה?
מילה שמורה הינה מילה או ביטוי אשר מהווה חלק מובנה מפשת תכנות כלשהי. לדוגמא, מילת התנאי if הינה חלק מובנה בשפות VBS, JS ועוד רבות אחרות.
יש להמנע משימוש במילים שמורות בכתיבת הקוד. שמות משתנים, פונקציות וביטויים שונים, אסור שיהיו מילה שמורה.
במקרה הטוב, שימוש במילה שמורה תגרום לשגיאה, קלה או קשה יותר להבנה, אשר תצריך את תיקון הקוד כדי לאפשר את הרצת התוכנית.
במקרה הגרוע – שימוש במילה שמורה תגרום לטעיות לוגיות, אשר אינן גוררות הודעת שגיאה, ולכן האיתור שלה יהיה קשה יותר.
אז איך נמנעים מזה?
רצוי לתת שמות משמעותיים וייחודיים למשתנים, פונקציות וגם לטבלאות או שדות אם מדובר בבניית בסיס נתונים.
מתן שמות למשתנים / שדות :
בעת מתן שם למשתנים או לשדות בטבלה, נהוג לציין גם את סוג המשתנה או השדה ולצרפו לשם.
לדוגמא:
strName – משתנה מסוג מחרוזת המכיל שם כלשהו
intNum – משתנה מסוג מספר שלם
txtTitle – שדה מסוג Text, המכיל כותרת
objConn – אובייקט החיבור
להרגל זה שני ייתרונות ברורים:
- השם לעולם לא יהיה מילה שמורה
- הקוד יהיה מובן וברור יותר, אם לא נצטרך לנחש כל פעם מהו סוג המשתנה/שדה.
מתן שמות לטבלאות:
נהוג, כקידומת לשם הטבלה, להוסיף את הקיצור tbl, כדי להקל על ההבנה שמדובר אכן בטבלה בבסיס הנתונים, וכדי למנוע שימוש במילים שמורות:
tblPeople – טבלת האנשים
tblLinks – טבלת הקישורים
רשימת המילים השמורות ב- MS-Access ושפת ה-SQL:
A ADD ALL Alphanumeric ALTER AND ANY Application AS ASC Assistant AUTOINCREMENT Avg B BETWEEN BINARY BIT BOOLEAN BY BYTE C CHAR CHARACTER COLUMN CompactDatabase CONSTRAINT Container Count COUNTER CREATE CreateDatabase CreateField CreateGroup CreateIndex CreateObject CreateProperty CreateRelation CreateTableDef CreateUser CreateWorkspace CURRENCY CurrentUser D DATABASE DATE DATETIME DELETE DESC Description DISALLOW DISTINCT DISTINCTROW Document DOUBLE DROP E Echo Else End Eqv Error F EXISTS Exit FALSE Field Fields FillCache FLOAT FLOAT4 FLOAT8 FOREIGN Form Forms FROM Full FUNCTION G GENERAL GetObject GetOption GotoPage GROUP GROUP BY GUID H HAVING I Idle IEEEDOUBLE IEEESINGLE If IGNORE Imp IN In INDEX Index Indexes INNER INSERT InsertText INT INTEGER INTEGER1 INTEGER2 INTEGER4 INTO IS J – K JOIN KEY L LEFT Level Like LOGICAL LOGICAL1 LONG LONGBINARY LONGTEXT M Macro Match Max Min Mod MEMO Module MONEY Move N NAME NewPassword NO Not NULL NUMBER NUMERIC O Object OLEOBJECT OFF ON OpenRecordset OPTION OR Or ORDER Outer OWNERACCESS P Parameter PARAMETERS Partial PERCENT PIVOT PRIMARY PROCEDURE Property Q Queries Query Quit R REAL Recalc Recordset REFERENCES Refresh RefreshLink RegisterDatabase Relation Repaint RepairDatabase Report Reports Requery RIGHT S SCREEN SECTION SELECT SET SetFocus SetOption SHORT SINGLE SMALLINT SOME SQL StDev StDevP STRING Sum T TABLE TableDef TableDefs TableID TEXT TIME TIMESTAMP TOP TRANSFORM TRUE Type U UNION UNIQUE UPDATE User V VALUE VALUES Var VarP VARBINARY VARCHAR W – Z WHERE WITH Workspace Xor Year YES YESNO
רשימת המילים השמורות בשפת VBS
A – D And As Boolean ByRef Byte ByVal Call Case Class Const Currency Debug Dim Do Double E – H Each Else ElseIf Empty End EndIf Enum Eqv Event Exit False For Function Get GoTo I – L If Imp Implements In Integer Is Let Like Long Loop LSet M – P Me Mod New Next Not Nothing Null On Option Optional Or ParamArray Preserve Private Public Q – T RaiseEvent ReDim Rem Resume RSet Select Set Shared Single Static Stop Sub Then To True Type TypeOf U – Z Until Variant Wend While With Xor
רשימת המילים השמורות בשפת Jscript
A – D break case catch class const continue debugger default delete do E – H else enum export extends false finally for function I – L if import in instanceof M – S new null return super switch T – Z this throw true try typeof var void while with
תגובות בפייסבוק