Xojo#XojoScript

{{Short description|Programming environment and programming language}}

{{Infobox software

| name = Xojo

| logo = Logomark Xojo Company.svg

| logo_size = 140px

| screenshot =

| caption =

| developer = Xojo, Inc.

| latest release version = Xojo 2023R3.1

| latest release date = {{Start date and age|2023|10|25}}[https://www.xojo.com/download/ Xojo: Downloads]

| operating system = {{Plainlist|

}}

| language = English

| genre = Programming

| license = Freemium

| website = {{url|https://xojo.com/}}

}}

The Xojo programming environment and programming language is developed and commercially marketed by Xojo, Inc. of Austin, Texas for software development targeting macOS, Microsoft Windows, Linux, iOS, Android, the Web and Raspberry Pi. Xojo uses a proprietary object-oriented language.{{cite web |url=https://www.xojo.com/company/news/2014r3.php |title=Xojo, Inc. Announces Xojo 2014 Release 3; Includes Support For Developing Native iOS Applications |date=December 9, 2014 |last=Xojo |access-date=2014-12-09 |publisher=Xojo }}{{cite web |url=https://prmac.com/release-id-72290.htm |title=Xojo Includes Support For Developing Native iOS Applications |date=December 9, 2014 |last=prMac |access-date=2014-12-09 |publisher=prMac }}{{cite book|last1=Lorenzo|first1=Mark|title=The History of The Basic Programming Language|date=May 15, 2018|publisher=SE Books|location=Philadelphia|isbn=978-1-974-27707-0|page=160}}

History

In 1996, FYI Software, founded by Geoff Perlman, bought CrossBasic,{{cite web|url=https://lowendmac.com/lists/realbasic.shtml|title=REALbasic-NUG|work=lowendmac.com}}{{cite web|url=http://www.databaseskill.com/362406/|title=REALbasic development history of cross-platform development tools|work=databaseskill.com}}{{cite web|url=https://tidbits.com/article/5043|title=Yes, Virginia, There Is a REALbasic|work=tidbits.com|date=17 August 1998 }} which had been marketed by its author Andrew Barry{{cite book|url=https://books.google.com/books?id=6vk2vvxFw2EC&pg=PR19|title=REALbasic: The Definitive Guide|isbn=9780596001773|last1=Neuburg|first1=Matt|year=2001|publisher="O'Reilly Media, Inc." }} as a shareware product. CrossBasic got its name from its ability to compile the same programming code for the classic Mac OS and the Java virtual machine (although the integrated development environment was Mac only). A public beta was released in April 1996.{{cite web|url=http://www.headgap.com/applecore/Mac%20Conferences/MacWay?msg_id=-1319319305&which=next%7ctitle=PR--REALbasic|title=Operator Headgap Web Conferencing|work=headgap.com}}{{cite web|url=https://www.macobserver.com/archive/1997/june.shtml|title=CrossBasic: Shareware BASIC Environment}} The CrossBasic name was trademarked by another company, so the product was renamed REALbasic.{{cite web|url=http://41160df63757fc043cfd-66287f38a83954e31a54d1dbe33e0650.r4.cf2.rackcdn.com/Documentation/EN-PDF/UpgradeGuide.pdf|title=Upgrade Guide}}

Prior to version 2, the Java target was dropped and later replaced with a Windows target and database support.{{cite web|url=https://tidbits.com/article/5361|title=REALbasic 2.0 Shipping|date=19 April 1999 }}{{cite web|url=http://www.applelinks.com/articles/3900/03/20000313043709.shtml |title=REALbasic 2.0 Standard Edition Review |url-status=dead |archive-url=https://web.archive.org/web/20131029210059/http://www.applelinks.com/articles/3900/03/20000313043709.shtml |archive-date=October 29, 2013 }} The option to compile for Linux{{cite web |url=http://www.jupiterbroadcasting.com/6941/real-software-on-linux-las-s16e04/ |title=Real Software on Linux |publisher=jupiter broadcasting}} was added in 2005 and the integrated development environment (IDE) was ported to Windows and as a free public beta for Linux platforms. The new IDE employed a redesigned user interface.{{Cite web|url=https://www.theregister.co.uk/2005/06/15/realbasic_2005_ships/|title=REALbasic 2005 ships for Mac, WinXP, Linux|last=at 09:19|first=Tony Smith 15 Jun 2005|website=www.theregister.co.uk|language=en|access-date=2019-12-19}}

In 2004, REAL software announced the "Made with REALbasic Showcase" program to highlight applications created with the product.{{cite web|url=https://www.macobserver.com/tmo/article/REAL_Software_Now_Accepting_Entries_For_Made_With_REALbasic_Showcase|title=MacObserver}} In 2009, a migration assistant was launched to help move code from Visual Basic.{{cite web|url=http://www.macnn.com/articles/09/08/04/vb.migration.asst.ships/|title=REALbasic launches Visual Basic Migration Assistant}} In 2010, to combat the perception that it was similar to the original BASIC, it was renamed Real Studio.{{cite web|url=http://41160df63757fc043cfd-66287f38a83954e31a54d1dbe33e0650.r4.cf2.rackcdn.com/Documentation/EN-PDF/UpgradeGuide.pdf|title=Upgrade Guide|quote=...hearing a development environment with the word "basic" in the name caused many of your colleagues’ eyes to roll...Some developers found they were no longer battling the reputation of BASIC while others were confused because we continued to call the language itself, REALbasic. }}{{cite web|url=http://forums.realsoftware.com/viewtopic.php?t=28866|title=REALbasic Name}}

The company announced Real Studio Web Edition, allowing developers to compile web applications without the knowledge of multiple web technologies.{{cite web |url=http://www.itworld.com/software/175433/3-tools-accelerate-web-application-development?page=0,0 |title=3 Tools to Accelerate Web Development |date=June 2011 |last=Frank |first=Ohlhorst |access-date=2011-06-17 |publisher=IDG }}

On June 4, 2013 the company officially changed their name to Xojo, Inc. and Real Studio was renamed Xojo.{{cite web |url=https://www.xojo.com/company/news/xojo_name.php |title=Xojo Press Releases |date=June 4, 2013 |last=Xojo |access-date=2013-06-08 |publisher=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, improved support for web applications, all new documentation and a new Introduction to Programming Using Xojo textbook{{cite web

|url=https://www.xojo.com/download/extras.php |title=Review: Xojo Book Download Page |date=June 4, 2013

|last=Xojo |access-date=2013-06-04 |publisher=Xojo }} that was designed for beginners to learn the fundamentals of object oriented programming.{{cite web |url=https://www.xojo.com/company/news/xojo.php |title=Xojo Release Press Release |date=June 4, 2013 |last=Xojo |access-date=2013-06-08 |publisher=Xojo}} Xojo, Inc. calls it "the spiritual successor to Visual BASIC".{{cite web|url=https://www.xojo.com/visualbasic/|title=Xojo: Alternative to Visual Basic|quote=Xojo is the spiritual successor to Visual Basic...the programming language will look very familiar to you}}{{cite web |last1=Proven |first1=Liam |title=Nostalgic for VB? BASIC is anything but dead |url=https://www.theregister.com/2023/03/28/nostalgic_for_basic/ |website=The Register |access-date=30 March 2023}}

The Xojo IDE is currently available for Microsoft Windows, macOS, 32-bit x86 Linux,{{cite web |url=http://programming.linux.com/programming/05/08/03/1639214.shtml?tid=22 |title=Review: REALBasic 2005 for Linux |date=August 4, 2005 |last=Barr |first=Joe |access-date=2010-02-09 |publisher=Linux.com |archive-date=2006-03-29 |archive-url=https://web.archive.org/web/20060329201613/http://programming.linux.com/programming/05/08/03/1639214.shtml?tid=22 |url-status=dead }} and can compile 32-bit and 64-bit applications for Windows (Windows XP and higher), macOS (running on Intel or Apple silicon Macs using the Cocoa frameworks), x86 Linux, iOS, Android, the web, and Raspberry Pi. Xojo is self-hosted: the Xojo IDE is built with the current release of Xojo.{{cite web

|url=https://www.xojo.com/company/news/2014r3.php |title=Xojo, Inc. Announces Xojo 2014 Release 3; Includes Support For Developing Native iOS Applications |date=December 9, 2014

|last=Xojo |access-date=2014-12-09 |publisher=Xojo }} The 2015r3 release includes 64-bit support for Desktop, Web and Console targets as well as a new platform, Raspberry Pi.{{cite web

|url=http://www.bkeeneybriefs.com/2015/05/xdc-2015-recap/ |title=XDC 2015 Recap|date=May 6, 2015 }}

{{cite web

|url=https://www.xojo.com/company/news/2015r3.php |title=Xojo 2015 Release 3 Now Available Recap|date=October 20, 2015 }}

Xojo added many new features in 2018 and 2019, including support for macOS and iOS light/dark modes,{{Cite web|url=https://macosxnews.com/2018/10/25/xojo-2018-release-3-is-now-available-adds-support-for-mojave-dark-mode/|title=Xojo 2018 Release 3 Adds Support For Mojave Dark Mode {{!}} MacOSX News|language=en-US|access-date=2019-12-19}}{{Cite web|url=https://www.mactech.com/2019/12/11/xojo-2019-release-3-adds-dark-mode-support-for-ios-13/|title=Xojo 2019 Release 3 adds Dark Mode support for iOS 13|website=MacTech.com|language=en-US|access-date=2019-12-19}}{{Cite web|url=https://techwok.hu/2019/12/19/xojo-2019-release-3-sajat-appok-sotet-modban/|title=Xojo 2019 Release 3: saját appok sötét módban, további extrákkal|date=2019-12-19|website=Techwok|language=hu|access-date=2019-12-19}} a GraphicsPath for drawing Bézier curves, and a new DateTime class.

In 2020, Xojo introduced a new web framework,[https://www.xojo.com/company/press/2020r1.php Xojo: Xojo 2020r1 Adds New Web Framework, PDF Support] 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[https://graffitisuite.com/news/from-anthony-my-adventures-with-web-2-0/ From Anthony: My Adventures with Web 2.0 – GraffitiSuite] to build responsive web apps.

Xojo has ranked{{Cite web|url=https://www.tiobe.com/tiobe-index/|title=TIOBE Index {{!}} TIOBE - The Software Quality Company|date=2021-06-07|website=Tiobe Index|access-date=2021-06-07}} among the top 100 most popular programming languages as published by TIOBE,{{Cite web|url=https://www.tiobe.com/tiobe-index/|title=TIOBE Index {{!}} TIOBE - The Software Quality Company|date=2019-08-29|archive-url=https://web.archive.org/web/20190829133958/https://www.tiobe.com/tiobe-index/|access-date=2019-12-19|archive-date=2019-08-29}} 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.{{cite web| url=https://tidbits.com/1998/08/17/yes-virginia-there-is-a-realbasic/| title = Yes, Virginia there is a REALbasic | date = 1998-08-17}}
  • 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 processor.
  • Windows support was added in 1999 with the release of REALbasic 2.0, making it a true cross-platform development tool.{{cite web| url=https://www.macworld.com/article/1015369/realbasic.html| title = REALbasic 2.0 | date = 1999-10-01}}

=2000s=

  • Support for Mac OS X is added to REALbasic in 2001.{{cite web| url=https://www.macworld.com/article/1020887/realbasic.html| title = REALbasic 3.1 for Mac OS X arrives | date = 2001-03-22}}
  • In 2002, the first Windows IDE of REALbasic is announced.{{cite web| url=https://www.macworld.com/article/1007117/realbasic.html| title = REALbasic 5- with Mac and Windows support - previewed | date = 2002-10-01}}
  • In September 2005, REALbasic is updated to include support for building Linux apps.{{cite web| url=https://www.macworld.com/article/1029640/realbasic.html| title = REALbasic 5.5 adds Linux, enhances Mac support | date = 2004-02-25}} 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.{{cite web| url=https://lockergnome.com/2013/06/11/start-programming-free-xojo//| title = Start Programming Free with Xojo | date = 2013-06-11}}
  • 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.{{cite web| url=https://www.bkeeneybriefs.com/2015/10/xojo-64-bit-apps-and-raspberry-pi/| title = Xojo 64-bit apps and Raspberry Pi | date = 2015-10-20}}
  • Support for macOS Mojave 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 [https://www.xojo.com/mvp/ Xojo: Xojo MVP Program] MVP program to facilitate community communication and serve as an informal advisory committee.

=2020s=

  • Xojo announced the 2020 [https://www.xojo.com/designawards Xojo: Xojo Design Awards] 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 as well as Apple silicon.
  • 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 (M1), making it the first cross-platform development tool to do so.
  • [https://www.xojo.com/company/press/2021r1.php Xojo: Xojo 2021 Release 1 Adds 275+ Improvements to Popular Xojo Programming Language and IDE] Xojo 2021 Release 1 added support for the Xojo IDE and XojoScript to run native on M1 Macs.
  • Xojo shipped 2021 Release 3{{cite press release |title=Xojo Adds General Improvements To Cross-Platform Software Development Environment |url=https://www.prnewswire.com/news-releases/xojo-adds-general-improvements-to-cross-platform-software-development-environment-301339485.html |website=Cision |publisher=PR Newswire}} 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{{cite web |last1=Lefebvre |first1=Paul |title=Xojo Android Pre-Release is now in testing |url=https://blog.xojo.com/2021/11/18/xojo-android-pre-release-is-now-in-testing/ |website=Xojo Blog |publisher=Xojo, Inc. |access-date=19 November 2021}} that their Android framework is in public pre-release testing.
  • Xojo released support for building applications for Windows ARM with Xojo 2022 Release 2,{{cite web |url=https://www.xojo.com/company/press/2022r2.php |website=Xojo |access-date=26 July 2022|title=Xojo: Latest Update to Development Environment and Programming Language Xojo Adds Ability to Build Apps for Windows ARM' }} available on July 25, 2022.{{cite web |last1=Proven |first1=Liam |title=Nostalgic for VB? BASIC is anything but dead |url=https://www.theregister.com/2023/03/28/nostalgic_for_basic/ |website=The Register |access-date=6 May 2023}}
  • 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.{{cite web |last1=Zeedar |first1=Marc |title=The Last XDC? |url=https://rsd.gumroad.com/l/fsdlg?layout=profile |website=xDev Magazine |access-date=6 May 2023}}
  • On August 9, 2023 Xojo shipped 2023 Release 2,{{cite web |title=Xojo Empowers Developers with Android App Building Support in Latest Release |url=https://xojo.com/company/press/2023r2.php |website=Xojo, Inc. |access-date=9 August 2023}} which added the ability to build mobile applications for Android.{{cite web |last1=Krypczyk |first1=Veikko |title=Cross-Plattform-Entwicklung mit dem RAD-Tool Xojo |url=https://www.dev-insider.de/cross-plattform-programmierung-rad-tools-xojo-a-f7029fe1a6ec77b0fd3f1ee79ebf5f8f/?pt=64c8deae3e6b2 |website=Dev Insider |date=August 2023 |access-date=9 August 2023}} 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,{{cite web |title=Version Control Ready Xojo Lite and Free Xojo Linux Lite for Everyone |url=https://blog.xojo.com/2024/03/26/version-control-ready-xojo-lite-and-free-xojo-lite-linux-for-everyone/|website=Xojo, Inc. |access-date=26 March 2024}} 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).{{cite web |url=https://www.xojo.com/store/index.php |title=Xojo Store Information|date=June 4, 2013 |last=Xojo |access-date=2013-06-08 |publisher=Xojo}}

The default database used with Xojo is SQLite.

Unlike most programming environments, project source code is not stored in plain text 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 systems and can be exported to XML format as well.

Xojo Cloud

On March 11, 2014, Xojo launched Xojo Cloud, their cloud hosting service for Xojo web applications.{{cite web|url=http://www.macnews.com/2014/03/12/xojo-announces-xojo-cloud-deployment-web-apps |title=Xojo Announces Xojo Cloud For Deployment Of Web Apps |date=March 11, 2014 |access-date=2014-03-13 |publisher=Mac News }}

  • 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 and Postgres databases to Xojo Cloud.[http://blog.xojo.com/2015/03/19/xojo-cloud-databases-add-connect-manage/ Xojo Cloud Databases: Add, Connect & Manage – Xojo Programming Blog] 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 looks similar to Visual Basic.

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

References

{{Reflist}}