Published by wig on Nov 23rd, 2007200720072007 in Gamblog with No Comments
Gambas Naming Conventions
De naamgevingsafspraken worden niet strikt opgelegd door de compiler. Maar programma’s die deze conventies volgen zijn gemakkelijker te lezen door andere programmeurs.
Variable names
Het underscore teken _ wordt voorbehouden voor de IDE waar het de scheiding vormt tussen een element in de grafische omgeving en een bewerking erop als “klikken”:
lsbxName_Click
Een punt wordt gebruikt voor de eigenschap van zo’n element:
lsbxName.text
Alle “private” variabele namen van een “class” beginnen met het dollarteken $
en kunnen binnen de class overal gebruikt worden; hier ter vergelijking een parameter met dezelfde naam:
FCommit.class
PRIVATE $sChange AS String
...
PUBLIC SUB Run(sChange AS String) AS Boolean
$sChange = sChange
Bij variabelen wordt met een eerste letter het type aangegeven, behalve bij
- de publieke eigenschappen (variabelen) van een classe
- de PROPERTY in een classe
- de PRIVATE CONST worden met hoofdletters geschreven
(blijkt uit de source van de IDE).
De eerste kleine letter geeft het type van variabele aan:
Letter
|
Type
|
a
|
Array
|
b
|
Boolean
|
c
|
Collection
|
f
|
Float
|
h
|
Object (Handle)
|
i
|
Integer, Long, Short, Byte.
|
n
|
An integer storing a number of objects.
|
s
|
String
|
as
|
array of strings
|
Voorbeeld
PRIVATE $iLast AS Integer
PRIVATE $sLast AS String
PRIVATE $hEditor AS Object
PRIVATE $sOldVal AS String
PRIVATE $bFreeze AS Boolean
PUBLIC FUNCTION getData (cDataCol AS Collection) AS Collection
DIM sInputString AS String
DIM hFileIn AS File
DIM sFileName AS String
DIM asItems AS String[]
...
PUBLIC SUB Form_Resize()
DIM iWidth AS Integer
...
'FForm.class
PUBLIC Name AS String
PRIVATE $bDoNotModify AS Boolean
Form element names
Als je in de Gambas-IDE een nieuw element op een “form” maakt, krijgt het een naam als "Label1" "Label2" …
Nog voor je een “methode” toewijst aan (code schrijft voor) het nieuwe element hernoem je het best zo "btnStart" or "lstAddressSelect".
De eerste twee a drie letters zijn klein en geven het type aan volgens deze definitie:
| | Form-Elements Officieel:
Letter
|
Type
|
btn
|
button
|
chk
|
CheckBox
|
cvw
|
ColumnView
|
cmb
|
ComboBox
|
dwg
|
DrawingArea
|
dlg
|
FontChooser
|
edt
|
GambasEditor
|
frm
|
Frame
|
grd
|
GridView
|
spl
|
HSplit
|
iv
|
IconView
|
lbl
|
Label
|
lst
|
ListBox
|
lvw
|
ListView
|
pan
|
Panel
|
img
|
PictureBox
|
opt
|
RadioButton
|
svw
|
ScrollView
|
spb
|
SpinBox
|
tab
|
TabStrip
|
tim
|
Timer
|
txa
|
TextArea
|
txt
|
TextBox
|
txv
|
TextView
|
tbt
|
ToolButton
|
trv
|
TreeView
|
spl
|
VSplit
|
Een project dat deze stijlvoorschriften volgt is gambas2-1.9.28/ apps/src/gambas2
De Gambas IDE zelf!
(ps: Klein nadeel: beetje inconsequent; bij lst kan je niet onmiddellijk zien of het listbox of lstview is.)
|
|
Een kleine afwijking: Zelf hou ik meer van een vaste combinatie van twee letters.
Letter
|
Type
|
bt
|
button |
tb
|
togglebutton
|
bx
|
box
|
vw
|
View
|
ar
|
area
|
lb
|
label
|
fr
|
frame
|
pn
|
pannel
|
sl
|
slider
|
st
|
strip
|
sp
|
split
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
samen-
|
gesteld:
|
|
|
txbx
|
textbox
|
vlbx
|
valuebox
|
lsbx
|
listbox
|
txlb
|
textlabel
|
txar
|
textarray
|
grvw
|
gridview
|
scbr
|
scrollbar
|
prbr
|
progressbar
|
cmbx
|
combobox
|
chbx
|
checkbox
|
clvw
|
columnview
|
1 Hoofdletter *
|
vrij voor:
|
|
|
M
|
Module
|
F
|
Form
|
C
|
Class
|
(Dat
|
Data)
|
(Sql
|
SQL statement)
|
(*) Linkse kolom die hiƫrarchie toont in IDE is smal.
1 Hoofdletter is genoeg, er is geen verwarring mogelijk.
Rest van de ruimte beter te gebruiken om relevante namen te geven aan de Forms, Modules en Classes.
(ik gebruikte voordien 3 letters: FrmKlant ClsFactuur, ModCommon)
|
From the Gambas Documentation - see Gambas website
Zie ook Gambas Index
Tags: