HOME

TheInfoList



OR:

The Xojo
programming environment An integrated development environment (IDE) is a software application that provides comprehensive facilities for software development. An IDE normally consists of at least a source-code editor, build automation tools, and a debugger. Some ...
and
programming language A programming language is a system of notation for writing computer programs. Programming languages are described in terms of their Syntax (programming languages), syntax (form) and semantics (computer science), semantics (meaning), usually def ...
is developed and commercially marketed by Xojo, Inc. of
Austin, Texas Austin ( ) is the List of capitals in the United States, capital city of the U.S. state of Texas. It is the county seat and most populous city of Travis County, Texas, Travis County, with portions extending into Hays County, Texas, Hays and W ...
for
software development Software development is the process of designing and Implementation, implementing a software solution to Computer user satisfaction, satisfy a User (computing), user. The process is more encompassing than Computer programming, programming, wri ...
targeting
macOS macOS, previously OS X and originally Mac OS X, is a Unix, Unix-based operating system developed and marketed by Apple Inc., Apple since 2001. It is the current operating system for Apple's Mac (computer), Mac computers. With ...
,
Microsoft Windows Windows is a Product lining, product line of Proprietary software, proprietary graphical user interface, graphical operating systems developed and marketed by Microsoft. It is grouped into families and subfamilies that cater to particular sec ...
,
Linux Linux ( ) is a family of open source Unix-like operating systems based on the Linux kernel, an kernel (operating system), operating system kernel first released on September 17, 1991, by Linus Torvalds. Linux is typically package manager, pac ...
,
iOS Ios, Io or Nio (, ; ; locally Nios, Νιός) is a Greek island in the Cyclades group in the Aegean Sea. Ios is a hilly island with cliffs down to the sea on most sides. It is situated halfway between Naxos and Santorini. It is about long an ...
, Android, the
Web Web most often refers to: * Spider web, a silken structure created by the animal * World Wide Web or the Web, an Internet-based hypertext system Web, WEB, or the Web may also refer to: Computing * WEB, a literate programming system created by ...
and
Raspberry Pi Raspberry Pi ( ) is a series of small single-board computers (SBCs) developed in the United Kingdom by the Raspberry Pi Foundation in collaboration with Broadcom Inc., Broadcom. To commercialize the product and support its growing demand, the ...
. Xojo uses a proprietary
object-oriented Object-oriented programming (OOP) is a programming paradigm based on the concept of '' objects''. Objects can contain data (called fields, attributes or properties) and have actions they can perform (called procedures or methods and impleme ...
language.


History

In 1996, FYI Software, founded by Geoff Perlman, bought CrossBasic, which had been marketed by its author Andrew Barry as a
shareware Shareware is a type of proprietary software that is initially shared by the owner for trial use at little or no cost. Often the software has limited functionality or incomplete documentation until the user sends payment to the software developer. ...
product. CrossBasic got its name from its ability to compile the same programming code for the
classic Mac OS Mac OS (originally System Software; retronym: Classic Mac OS) is the series of operating systems developed for the Mac (computer), Macintosh family of personal computers by Apple Computer, Inc. from 1984 to 2001, starting with System 1 and end ...
and the
Java virtual machine A Java virtual machine (JVM) is a virtual machine that enables a computer to run Java programs as well as programs written in other languages that are also compiled to Java bytecode. The JVM is detailed by a specification that formally descr ...
(although the
integrated development environment An integrated development environment (IDE) is a Application software, software application that provides comprehensive facilities for software development. An IDE normally consists of at least a source-code editor, build automation tools, an ...
was Mac only). A public beta was released in April 1996. The CrossBasic name was trademarked by another company, so the product was renamed REALbasic. Prior to version 2, the Java target was dropped and later replaced with a Windows target and database support. The option to compile for
Linux Linux ( ) is a family of open source Unix-like operating systems based on the Linux kernel, an kernel (operating system), operating system kernel first released on September 17, 1991, by Linus Torvalds. Linux is typically package manager, pac ...
was added in 2005 and the
integrated development environment An integrated development environment (IDE) is a Application software, software application that provides comprehensive facilities for software development. An IDE normally consists of at least a source-code editor, build automation tools, an ...
(IDE) was ported to Windows and as a free public beta for Linux platforms. The new IDE employed a redesigned
user interface In the industrial design field of human–computer interaction, a user interface (UI) is the space where interactions between humans and machines occur. The goal of this interaction is to allow effective operation and control of the machine fro ...
. In 2004, REAL software announced the "Made with REALbasic Showcase" program to highlight applications created with the product. In 2009, a migration assistant was launched to help move code from Visual Basic. In 2010, to combat the perception that it was similar to the original BASIC, it was renamed Real Studio. The company announced Real Studio
Web Web most often refers to: * Spider web, a silken structure created by the animal * World Wide Web or the Web, an Internet-based hypertext system Web, WEB, or the Web may also refer to: Computing * WEB, a literate programming system created by ...
Edition, allowing developers to compile
web application A web application (or web app) is application software that is created with web technologies and runs via a web browser. Web applications emerged during the late 1990s and allowed for the server to dynamically build a response to the request, ...
s without the knowledge of multiple web technologies. On June 4, 2013 the company officially changed their name to Xojo, Inc. and Real Studio was renamed Xojo. Also on this date they released Xojo 2013 Release 1 which included an all-new user interface, full support for Cocoa on
OS X macOS, previously OS X and originally Mac OS X, is a Unix, Unix-based operating system developed and marketed by Apple Inc., Apple since 2001. It is the current operating system for Apple's Mac (computer), Mac computers. With ...
, improved support for web applications, all new documentation and a new ''Introduction to Programming Using Xojo'' textbook that was designed for beginners to learn the fundamentals of object oriented programming. Xojo, Inc. calls it "the spiritual successor to Visual BASIC". The Xojo IDE is currently available for
Microsoft Windows Windows is a Product lining, product line of Proprietary software, proprietary graphical user interface, graphical operating systems developed and marketed by Microsoft. It is grouped into families and subfamilies that cater to particular sec ...
,
macOS macOS, previously OS X and originally Mac OS X, is a Unix, Unix-based operating system developed and marketed by Apple Inc., Apple since 2001. It is the current operating system for Apple's Mac (computer), Mac computers. With ...
, 32-bit x86
Linux Linux ( ) is a family of open source Unix-like operating systems based on the Linux kernel, an kernel (operating system), operating system kernel first released on September 17, 1991, by Linus Torvalds. Linux is typically package manager, pac ...
, and can compile 32-bit and 64-bit applications for Windows (Windows XP and higher), macOS (running on
Intel Intel Corporation is an American multinational corporation and technology company headquartered in Santa Clara, California, and Delaware General Corporation Law, incorporated in Delaware. Intel designs, manufactures, and sells computer compo ...
or
Apple silicon Apple silicon is a series of system on a chip (SoC) and system in a package (SiP) processors designed by Apple Inc., mainly using the ARM architecture family, ARM architecture. They are used in nearly all of the company's devices including Mac ...
Macs using the Cocoa frameworks),
x86 x86 (also known as 80x86 or the 8086 family) is a family of complex instruction set computer (CISC) instruction set architectures initially developed by Intel, based on the 8086 microprocessor and its 8-bit-external-bus variant, the 8088. Th ...
Linux,
iOS Ios, Io or Nio (, ; ; locally Nios, Νιός) is a Greek island in the Cyclades group in the Aegean Sea. Ios is a hilly island with cliffs down to the sea on most sides. It is situated halfway between Naxos and Santorini. It is about long an ...
, Android, the web, and Raspberry Pi. Xojo is self-hosted: the Xojo IDE is built with the current release of Xojo. The 2015r3 release includes 64-bit support for Desktop, Web and Console targets as well as a new platform, Raspberry Pi. Xojo added many new features in 2018 and 2019, including support for macOS and iOS light/dark modes, a GraphicsPath for drawing Bézier curves, and a new DateTime class. In 2020, Xojo introduced a new web framework, which is a ground-up re-write that adds modern-looking new controls, support for Bootstrap themes, two layout modes and more. The new web framework takes advantage of all that modern web browsers have to offer, providing a more robust foundation to build responsive web apps. Xojo has ranked among the top 100 most popular programming languages as published by TIOBE, a company which rates the quality of software.


Timeline


1990s

* In 1996, Geoff Perlman founds the company that is now Xojo in Austin, Texas. * CrossBasic is acquired in 1997. * In 1998, REALbasic 1.0 released and introduced at MacWorld Expo. This first release made it easy for anyone, not just developers, to create apps for the Mac System 7 running on a 680x0 or
PowerPC PowerPC (with the backronym Performance Optimization With Enhanced RISC – Performance Computing, sometimes abbreviated as PPC) is a reduced instruction set computer (RISC) instruction set architecture (ISA) created by the 1991 Apple Inc., App ...
processor. * Windows support was added in 1999 with the release of REALbasic 2.0, making it a true cross-platform development tool.


2000s

* Support for Mac OS X is added to REALbasic in 2001. * In 2002, the first Windows IDE of REALbasic is announced. * In September 2005, REALbasic is updated to include support for building Linux apps. REALbasic now compiles for three desktop platforms from a single code base. * Continuing to keep up with the rapidly changing needs of developers and hobbyists, Intel-based Mac support is added in 2006.


2010s

* Expanding beyond desktop platforms, support for building web applications is added in 2010. * REALbasic becomes Xojo in 2013. * Xojo Cloud, Xojo's one-click deployment service for Xojo web apps, is launched in early 2014. * In December 2014, Xojo iOS, Xojo's first mobile platform, is released. * After much interest from the community, Xojo Pi is released, letting users build applications for Raspberry Pi with Xojo in 2015. * Support for
macOS Mojave macOS Mojave ( ; version 10.14) is the fifteenth major release of macOS, Apple Inc.'s desktop operating system for Macintosh computers. Mojave was announced at Apple's Worldwide Developers Conference on June 4, 2018, and was released to the ...
Dark Mode for the Xojo IDE and compiled apps was added in Xojo 2018 Release 3. * In 2019, Xojo Pi licenses are for free for building both console and desktop apps. * Xojo introduces new API in Xojo 2019 Release 2, which includes new classes and updated method and property names for better consistency across platforms. * In December 2019, Xojo formed the MVP program to facilitate community communication and serve as an informal advisory committee.


2020s

* Xojo announced the 2020 Xojo Design Award winners during a video keynote on March 25, 2020. * On July 15, 2020, Xojo released an update for Xojo to run on
macOS Big Sur macOS Big Sur (version 11) is the seventeenth software versioning, major release of macOS, Apple Inc., Apple's operating system for Macintosh computers. It was announced at Apple's Worldwide Developers Conference (WWDC) on June 22, 2020, and w ...
as well as
Apple silicon Apple silicon is a series of system on a chip (SoC) and system in a package (SiP) processors designed by Apple Inc., mainly using the ARM architecture family, ARM architecture. They are used in nearly all of the company's devices including Mac ...
. * Xojo released their new web framework on August 26, 2020 for developing web apps with Xojo. * Xojo shipped 2020 Release 2 on November 24, 2020 with support for building native applications for
Apple silicon Apple silicon is a series of system on a chip (SoC) and system in a package (SiP) processors designed by Apple Inc., mainly using the ARM architecture family, ARM architecture. They are used in nearly all of the company's devices including Mac ...
(M1), making it the first cross-platform development tool to do so. * Xojo 2021 Release 1 added support for the Xojo IDE and XojoScript to run native on M1 Macs. * Xojo shipped 2021 Release 3 on November 18, 2021 that brings back cross-compilation from Windows and Linux to macOS. This release also introduces Dark Mode support for Windows. * On November 18, 2021, Xojo announces that their Android framework is in public pre-release testing. * Xojo released support for building applications for Windows ARM with Xojo 2022 Release 2, available on July 25, 2022. * At their Xojo Developer Conference in London, Xojo announced that their support for Android will be shipping in the next release of Xojo, 2023r2 and, as it is a new platform, it will be marked as beta. * On August 9, 2023 Xojo shipped 2023 Release 2, which added the ability to build mobile applications for Android. It also added Dark Mode support for web applications and a DesktopXAMLContainer control to access modern looking Windows user interface controls. * On March 26, 2024 Xojo shipped 2024 Release 1, which added the ability to build Linux desktop and console apps from Linux, macOS, or Windows, for free. Xojo 2024r1 also upgraded all Xojo Lite licenses to include the text project file format for better compatibility with version control systems, making it much easier to share and contribute to open-source projects.


Editions of IDE

The Xojo IDE is free to use for learning and development. Compiling or deploying applications with Xojo requires a license. Multiple license levels are available for purchase, enabling Desktop, Web, iOS and Android. Building applications for Linux Desktop and Console, including for Raspberry Pi, is free. Licenses can be purchased a la carte, in any combination required, and include 1 year of access to new releases. Xojo Pro, a bundle offered by Xojo, includes the ability to compile for Desktop, iOS, Android, Web and Console, along with technical support, access to consulting leads, and a license that will work on three machines. Xojo also has a Pro Plus license that includes everything in Xojo Pro, plus additional support benefits and can be installed on up to six devices (for a single user). The default database used with Xojo is
SQLite SQLite ( "S-Q-L-ite", "sequel-ite") is a free and open-source relational database engine written in the C programming language. It is not a standalone app; rather, it is a library that software developers embed in their apps. As such, it ...
. Unlike most programming environments, project
source code In computing, source code, or simply code or source, is a plain text computer program written in a programming language. A programmer writes the human readable source code to control the behavior of a computer. Since a computer, at base, only ...
is not stored in
plain text In computing, plain text is a loose term for data (e.g. file contents) that represent only characters of readable material but not its graphical representation nor other objects ( floating-point numbers, images, etc.). It may also include a lim ...
files by default, but in a proprietary, single-file format. However, source code can be saved to a plain-text format for use with
version control Version control (also known as revision control, source control, and source code management) is the software engineering practice of controlling, organizing, and tracking different versions in history of computer files; primarily source code t ...
systems and can be exported to
XML Extensible Markup Language (XML) is a markup language and file format for storing, transmitting, and reconstructing data. It defines a set of rules for encoding electronic document, documents in a format that is both human-readable and Machine-r ...
format as well.


Xojo Cloud

On March 11, 2014, Xojo launched Xojo Cloud, their cloud hosting service for Xojo web applications. *In July 2014, Xojo Cloud added the ability to transfer files to the server using a client other than the Xojo IDE. *In March 2015, Xojo added
MySQL MySQL () is an Open-source software, open-source relational database management system (RDBMS). Its name is a combination of "My", the name of co-founder Michael Widenius's daughter My, and "SQL", the acronym for Structured Query Language. A rel ...
and
Postgres PostgreSQL ( ) also known as Postgres, is a free and open-source software, free and open-source relational database management system (RDBMS) emphasizing extensibility and SQL compliance. PostgreSQL features transaction processing, transactions ...
databases to Xojo Cloud.Xojo Cloud Databases: Add, Connect & Manage – Xojo Programming Blog
/ref> In addition, they also enabled the creation of SSH Tunnels for a direct connection to databases using a third party management tool. *In 2018, Release 1, Xojo added server stats for Xojo Cloud. *A new Xojo Cloud control panel was introduced in August 2020; it is built using the new Xojo web framework. Other recent updates to Xojo Cloud include the ability to point domains at individual applications.


Example code

The Xojo
programming language A programming language is a system of notation for writing computer programs. Programming languages are described in terms of their Syntax (programming languages), syntax (form) and semantics (computer science), semantics (meaning), usually def ...
looks similar to
Visual Basic Visual Basic is a name for a family of programming languages from Microsoft. It may refer to: * Visual Basic (.NET), the current version of Visual Basic launched in 2002 which runs on .NET * Visual Basic (classic), the original Visual Basic suppo ...
. The following code snippet placed in the Open event of a Window displays a message box saying " Hello, World!" as the window loads: // Display a simple message box that says "Hello, World!" MessageBox("Hello, World!") This code populates a ListBox with the values from an array: Var names() As String = Array("Red Sox", "Yankees", "Orioles", "Blue Jays", "Rays") For i As Integer = 0 To names.LastRowIndex ListBox1.AddRow(names(i)) Next


See also

*
Visual Basic Visual Basic is a name for a family of programming languages from Microsoft. It may refer to: * Visual Basic (.NET), the current version of Visual Basic launched in 2002 which runs on .NET * Visual Basic (classic), the original Visual Basic suppo ...
* Gambas *
Lazarus (IDE) Lazarus is a Cross-platform software, cross-platform, integrated development environment (IDE) for rapid application development (RAD) using the Free Pascal compiler. Its goal is to provide an easy-to-use development environment for developing w ...
* Comparison of programming languages


References


External links


Xojo, Inc.
makers of Xojo {{DEFAULTSORT:Xojo BASIC programming language family IOS development software Integrated development environments Linux integrated development environments MacOS programming tools Programming tools for Windows Self-hosting software Web development software User interface builders