Algorithm

A set of step or instructions about how to do something

An algorithm is not necessarily programming code although programming code blocks are generally sets of instructions for computers. You can, for example, write an algorithm for how to make a peanut butter sandwich in ordinary English or French.

Array

An array is a variable that can hold a range of values.

Dim a(3) as array //an array with 3 members

a(0) = “Mary”
a(1) = “Betty”
a(2) = “Sam”

Boolean

A data type. It can be “true” or “false”

Dim b as boolean

if b = true then
//do something
else
//do something else
end if

Class

a group of properties, methods, and events that define an object

A PushButton is a subclass of a RectControl. The PushButton inherits all of the RectControls properties, methods, and events and also includes its own unique properties, methods, and events.

Control

An interface object that users can interact with such a a PushButton, an EditField, a ListBox or a PopupMenu

Data Structure

Data organization such as in a table

 

Data Type

Data types include:
Strings, Booleans, Integers, Doubles, etc.

 

Delimiter

A character used to separate chunks (or fields) of data; as in a database.

Encapsulation

objects are self-contained with their own properties, events, and methods; code telling an object how to respond to its events is within the object itself

A PushButton “knows” what to do when it is clicked because code in its Action event tells it what to do.

Event

an activity to which an object can respond. You must add code to an object’s event handler to give it the ability to do something in response to an event

A PopupMenu can respond to events such as: Change, MouseDown, DropObject, etc.

Function

method that returns a value to the code that called it. (This is the only difference between a subroutine and a function.)

This function converts theText passed to it into an integer:

Function StringToNumber(theText as string) as integer
 return val(theText)
End 
Function

To call this function you would use something like:
theNumber = StringToNumber(editfield1.text)

Global

a property or method added to a module that is available to all objects in a project.

Properties and methods added to a window are directly available only to the window that contains them. Properties and methods added to a Module are directly available to all windows and their objects.

Handler

the generic term for a block of programming code such as a method, a subroutine, or a function.

Inheritance

subclasses inherit all of the properties, events, and methods of their super class.

 

Instance

A version of an object.

When you add a PushButton to a window that PushButton is an instance of the PushButton class. Each PushButton that you add to the window is a separate instance of the PushButton class.

Loop

when a block of code is used repetitively

For i = 0 to ListBox1.listcount -1
theTotal = theTotal + val(ListBox1.list(i))
Next

Menu Handler

a block of code that responds to the user selecting a particular menu item.

The following could be used in a File-Close menu handler:

Function Action as Boolean
self.close
End 
Function

Method

any subroutine or function. Besides entering methods into object events you can define your own.

The following could be in a PushButton’s Action event:

Sub Action()
window2.show
End Sub

Module

A container for a collection of code.

A Module can contain: methods, properties, and constants. You add modules to your project from the File menu.

OOP

Object Oriented Programming

See What’s An OOP?

Parameter

a value passed to a method that is used by the method in some way

The parameter “theText” is being passed to the function:

Function StringToNumber(theText as string) as integer
     return val(theText)
End Function

Parse

Breaking down code or text in order to process it.

To process a tab delimited string you need to “parse” it in order to get the chunks of the string that are separated by tab characters.

Property

a characteristic of an object such as height, width, color, etc.

PushButton1.caption = “Cancel”

Recursion

when a block of code calls itself

See the example method called “CopyFileOrFolder” in the FolderItem Class section of the Xojo Language Reference

Scope

The “lifetime” or range of a variable or method

A property that is “dimmed” in a particular method only exists (has scope) as long as the code of that method is running. However, if you put a property or method in a module it will have global scope. This means it exists as long as the program is running.

Subroutine (Sub)

a block of programming code.

The following could be in a PushButton’s Action event:

Sub Action()
PopupMenu1.ListIndex = 0
End 
Sub

Variable

A data container.

Variables are always one of a variety of data types.

dim s as string //”s” is a variable of type “string”