Loading...
 

Xojo linee guida programmazione

Xojo Naming

Costanti

  • Inizia con la lettera ”k” minuscola, seguita da title case: kMaxUsers

Variabili locali

  • usare camel case: Dim customerName as Text

  • ridurre al minimo l’uso delle abbreviazioni, usare customerName, non custName

  • l’uso di singole lettere e accettabile solo per i cicli

Array

  • usare il plurale: Dim Customers() As Text

Proprietà

  • usare title case: SustomerName

  • Una proprietà privata usata per salvare una Computed Property dovrebbe iniziare con “m” e il resto del testo title case: mCustomerName

Metodi

  • usare title case: SaveCustomer
  • i parametri del metodo dovrebbero sere cammeo case: SaveCustomer(customerName As Text)

Controlli

  • usare title case, con un suffisso che indica il tipo di controllo: OkButton, di seguito alcuni esempi

Controllo

Suffisso

Esempio

PushButton, WebButton, iOSButton, BevelButton

Button

SaveButton

ListBox, WebListBox

List

CustomerList

SegmentedControl, WebSegmentedControl, iOSSegmentedControl

Selector

TaskSelector

CheckBox, WebCheckBox

Check

TaxableCheck

PopupMenu, WebPopupMenu

Popup

StatePopup

RadioButton, RadioGroup

Radio

SourceRadio

TextField, WebTextField, iOSTextField

Field

NameField

TextArea, WebTextArea, iOSTextArea

Area

DescriptionArea

Canvas, WebCanvas, iOSCanvas

Canvas

GraphCanvas

Label, WebLabel, iOSLabel

Label

NameLabel

PagePanel

Panel

MainPanel

TabPanel

Panel

MainPanel

ProgressWheel, ProgressBar, WebProgressWheel, WebProgressBar, iOSProgressBar, iOSProgressWheel

Progress

DownloadProgress

HTMLViewer, WebHTMLViewer, iOSHTMLViewer

Viewer

DocViewer

ImageWell, WebImageView, iOSImageView

Image

ProfileImage

GroupBox

Group

BusinessGroup

 

Classi (tipo/Definizione)

  • usare title case con suffisso _Class: Rubrica_Class

  • eventuali sottoclassi dovrebbero usare il nome della classe originale come suffisso: Clienti_Rubrica_Class

Finestre Window Form

  • usare title case con suffisso “Window”: RubricaWindow

Interfacce

  • usare title case con suffisso “_Interface

Formattazione

  • usare title case per le parole chiave del linguaggio: For Each i As Customer in Customers

  • usare title case per i tipi di dato: Dim count As Integer

  • inserire gli spazi tra argomenti o parametri : SaveCustomer(nome, cognome, localita)

  • non mettere spazi prima e dopo le parentesi

  • i metodi chiamati senza parametri non dovrebbero includere le parentesi: Metodo no Metodo()

  • i metodi con parametri dovrebbero sempre includere le parentesi: Metodo(parametro) e non Metodo parametro 

  • lasciare linee di codice bianche per aumentare la leggibilità

  • usare uppercase per i comandi SQL: SELECT * FROM Rubrica EHERE City = “Roma”

Coding

  • Dim definire la variabili locali vicino/nel punto dove sono usate, e definirne una per riga

  • i metodi non utilizzati al di fuori della classe/modulo dovrebbero essere privati

  • evitare di avere più Rerurn per un metodo

  • preferibilmente usare la notazione a punti quando possibile: Dim lenght As Integer = nome.Len

  • non usare mail Me al posto di Self

  • limitare l’uso di globals/variabili globali

  • preferibilmente usare metodi/proprietà condivisi invece di metodi/proprietà globali nei moduli

  • classi, metodi, proprietà, ecc. contenuti in un modulo dovrebbero essere Private o Protected se possibile