Full featured object oriented
modern BASIC programming language for Mac only
- Full featured IDE
- Modern BASIC syntax
- State of the art interface designer
- Get the power of Objective-C and Cocoa
- Extend native Objective-C classes using inheritance
- Create small and fast native executables without runtime dependencies
- Create universal binaries
- Complete documentation
-
No vendor lock when using Objective-Basic,
You always have got your Objective-Basic program in Objective-C as well
News: Objective-Basic is comming soon (2rd/3th quarter/2008)
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . .
Learn more
Objective-Basic enables you develop full features
modern GUI applications with well known BASIC syntax in a modern fashion. It
comes with truly Objective-C object orientation and support
for Objective-C and C. Objective-Basic combines the expressive power of
object-oriented languages like Objective-C with the familiarity and ease
of use of BASIC.
You can develop anything on Mac with the newest technologies available on
Mac and you can create very fast and small programs with it.
Objective-Basic's text editor is written in Cocoa.
It is designed to be easy and intuitive to start off.
Some of its features are support for syntax colouring for many different
languages, functions list, support for text encodings, snippets, a toolbar, a
status bar, split window, multi-document find and replace with regular
expressions, full screen editing and running commands from within the IDE.
Objective-Basic's GUI editor is Interface Builder (developed by Apple).
Providing you with the newest Cocoa and Aqua user interface features.
You have got the same power as Objective-C developers. Be no
more limited to your development environment. Be open and free to use all
features of Mac OS X.
Technology you may use within Objective-Basic are Cocoa (any
frameworks may be used), Carbon, MySQL, PostgreSQL, SQLite and much more.
Cocoa is an object-oriented application environment designed
specifically for developing Mac OS X-only native applications quickly and
efficiently. The Cocoa frameworks include a complete set of classes, and for
developers starting new Mac OS X-only projects, Cocoa provides the fastest way
to full-featured, extensible, and maintainable applications. You can bring
applications from UNIX and Windows to Mac OS X quickly by using Cocoa to build
state-of-the-art Aqua user interfaces while retaining most existing core code.
Apple recommends that all new applications written for Mac OS X use Cocoa.
Cocoa is a collection of software objects that implement almost all features
common to Mac OS X applications. Programmers extend the Cocoa objects to
provide application-specific features. The Cocoa objects are reused in every
Cocoa application so that programmers can concentrate on adding unique value
with each line of code rather than constantly reimplementing common features or
struggling to access operating system services. Significant applications can be
built with very little code.
Cocoa is distinguished from other object-oriented development environments in
several ways: Cocoa is mature, consistent, and broad. Cocoa is
extraordinarily extensible and flexible and dynamic.
Because you use Cocoa and the default compiler of Apple (gcc) through
Objective-Basic the number of possible bugs, when you create your Mac
application, is strongly reduzed nearly to zero. In fact, Objective-Basic is a
mature tool, ready for production!
FREE for non-commercial applications
FREE but without support for non-commercial
developers at home. You get the product for free and you must release
products for FREE under the license of GPL v2 as published by the Free Software
Foundation. Please include a "Made with Objective-Basic" statement in the
about box.
If you would like to develop a commercial
application or using Objective-Basic working at an organisation (e.g.
university, school, public service), you must buy a valid license. Please see
the order page for details.
Who are we?
People around the world join Objective-Basic (ObjB) - inspired by the idea to make software available for everybody: a programming language that is easy to use, and a development platform that is stable, reliable and available at a low price or for FREE for non-commercial applications.
We communicate by different means, most of them on the
Internet. The following selection enables you to stay up-to-date, extend and
explore your Objective-Basic experience, find new friends, and have fun in
general.
Technology used
The core programming language is written in pure C++ and is
based on KBasic Software Atelier (www.kbasic.com). The IDE is based on Cocoa
and pure Objective-C.
Show your support
Where's the fun using Objective-Basic if others don't know? Buy a Objective-Basic Professional License today, and support us!
Join us!
The Objective-Basic community rests on dedicated volunteers to further improve our programming language and development platform in a number of different ways. Whatever your skills, there are lots of places to start contributing. Please write an email to us.
Feature Overview
-
Deploy native applications for Mac OS X
-
OOP RAD features deliver high productivity
-
Much cheaper than other BASIC's. It is FREE for non-commercial development.
-
"backward" support for Objective-C and C and "forward" support for inheritance and other OOP features
-
Familiar development process and environment
-
Similar syntax as VB, Java and Objective-C
-
Easy to learn: language reference and many examples
-
Low price for Professional Edition
-
Familiar language features: OOP, single inheritance, exceptions, etc.
-
Drag & drop GUI development with Interface Builder (the best GUI editor on Mac)
-
Native Mac OS X widgets (third party controls not provided by Apple can be used as well)
-
Familiar editing features: easy and fast browsing of your source code
-
Familiar editing features II: Auto-Completion of builtin-functions and datatypes
-
A Lots of Documentation!
Objective-Basic comes with extensive documentation. It ships with lots of small and some medium-sized example programs that teach you how to implement various tasks with Objective-Basic. Most of them will show how to use a certain class, others aim at programming techniques and basics, and some of them simply want to show you what is possible.
Note that most of the examples assume that you have some experience with Objective-Basic and Object-oriented programming and therefore are not commented extensively. If you are interested in a line-by-line coverage please refer to the The Objective-Basic Manual. -
Open File Format
Objective-Basic's files *.b, *.i, *.m, *.h are text based non-binary files, which means you can easily access and edit them. A project is a directory containing all files of that project. The project directory is logical structured and easy to use. You can easily add and remove files with Apple's Finder like Images or other resources. -
Visual Design Tools
Use Objective-Basic's design tool to create instantly your Aqua interfaces in a few minutes (it is Interface Builder, the best GUI editor on Mac, provided by Apple).
It is very powerful and easy to use.
Feature Detail
-
is object oriented with objects and classes, single inheritance and polymorphism and private, public, protected scope of objects' elements
-
named arguments [mySub(param1 := 23, param2 := 100)]
-
label and goto
-
modern error management through exception handling
Objective-Basic is not only one programming language but also three.
Through one of the following command you can switch Objective-Basic into one
mode.
If you want to use Objective-Basic
<b ... b> or just leave out it
If you want to use Objective-C code use
<c ... c> or [ ... ] e.g. [NSString init]
For pure C code use:
<c ... c> or @ before every commad e.g. @printf("hello")
It is possible to use all three modes in one of your program, e.g. one source
file uses one mode and the source other file of your program use another mode.
You can mix the languages in your file as well. Having Objective-Basic,
Objective-C and C code in one source file!
The @ is needed in front of constanst, variables or function calls, if they are
declared in a library written in C/Objective-C or in source parts, which are
declared as C/Objective-C code. If you use Cocoa classes, functions or
methods you do not need to write it in front of calling Cocoa methods.
If you declare variables etc in Objective-Basic code, you do not need to use @
as well.
Of course like other programming languages, Objective-Basic comes with commands for control flow, conversion/casts, error handling, events and library functions like for gui, input or output, maths and so on. See the examples for more.
But besides this you should be familiar with the following main parts:
-
Class
-
Sub / Function / Method
-
Variable / Constant
-
Array
-
Type
-
Enumeration
If you start working on your first Objective-Basic program keep in mind
that is very similar to Objective-C and Java. You have classes and
interface elements, which work together. Events/actions in your interface are
triggered by the user and you can react to them within your program. That's it.
Annotations
Type
-
class
-
local
class static method
class instance method
-
static
-
arguments by reference or by value
-
recursive calls are possible
-
non-primitive local var
-
exception handling
-
class static
-
class instance
-
local
Variable / Constant / Enumeration
Variable Scope
Array
Sub / Function / Method
Scope
-
instance methods (works on variables of an object of a class)
-
static methods (works without any relation to an object)
-
instance variables (private, public, protected), variables of an object of a class
-
static variables (works without any relation to an object)
-
variables (private, protected, public)
-
constants (private, protected, public)
-
types / enum can be private or public
Class
In other words Objective-Basic is a full featured Object oriented modern BASIC language particularly designed for Mac OS X.
Code editing
-
Syntax highlighting: Use different colors to distinguish between variables, keywords, code and comments.
-
Window creating
Drag and drop / onto a window to build your user interface.
-
Native support of controls of all Mac OS X Aqua interface elements including buttons, labels, lists, and much more.
Language features
-
Modern and object-oriented version of BASIC: Supports polymorphism and inheritance
-
Advanced new language: The Objective-basic language is either strongly or loosely typed depending on using Objective-C features and has try/catch exception handling
-
Memory management: Works automatically
-
Royalty-free
-
You are free to sell the applications you create with Objective-Basic or deploy them for free without ever paying a fee, if you are a license holder
Time is money as well
When creating commercial software, time is money. The longer it takes you to create an application, the longer it takes to get to market and turn a profit. Objective-Basic is a rapid application development environment that enables you to write, test and deploy software faster.
Professional Strength
Do not let the "BASIC" in Objective-Basic fool you! It is not a toy. It is a fully object-oriented language that supports exceptions, polymorphism and many other syntax features you can expect from a modern programming language.
Native look and feel
Objective-Basic creates a proper user interface using native Aqua controls. It helps you to create the best user interface with a top of the art GUI designer: Interface Builder developed by Apple.
Teaching and Learning
When you teach computer programming, you teach logical problem-solving skills students can apply wherever life takes them in the future. Using Objective-Basic, students learn programming by creating real programs like games.
Students simply use drag and drop to create the software interface, then add code snippets and see the results of their work, at once. As well, Objective-Basic's powerful features like auto-completion and extensive documentation make learning easy and fun, right from the beginning.
Prepare for the Future
Because Objective-Basic is an object-oriented language that uses a common syntax, your students' Objective-Basic skills can easily be applied to other languages like Objective-C, Java, VB.NET and C++ that they may find in the future.
Learn Step By Step
Objective-Basic is designed from the ground up to make it easy for anyone to learn to program. With Objective-Basic, simply drag and drop a button onto a window and run your first program in no time. As you need to do more, you learn more. It is a nice approach designed specifically to help you learn as you go.
The first step in programming with Objective-Basic is to design the user interface normally. With Objective-Basic, this is as simple as point-and-click. As you work on your interface, you make your program unique.
Learn Modern Programming
Learning Objective-Basic means you are learning modern, object-oriented programming. Once you learn Objective-Basic, learning other languages like Objective-C, VB6, Java or C++ is much easier. Objective-Basic can take you from learning the basics of programming to building high-quality software for you.
Lots of Help Included
Objective-Basic comes with a complete Programming manual as well as hundreds of examples to help you.
Make great use of your time
Objective-Basic is the right environment to use for fun programming projects. Programming as a hobby has never been easier or more fun. Objective-Basic is a visual development environment that makes it easy to make entertaining and useful software. Objective-Basic has tips and other features that help you along your way. Help is just a click a way. Why do not you create your own games? Create graphical games, strategy games, even action games. All you need is the right idea and Objective-Basic to get started.
Migrating to Cocoa
Leaving REALbasic
Objective-Basic provide you with a familiar syntax of BASIC. Additionally, many
GUI components are familiar. And it is possible to develop GUI applications
with BASIC syntax in a modern fashion. So it comes with Objective-C-like object
orientation and backward support for Objective-C and C. Objective-Basic
combines the expressive power of object-oriented languages like Objective-C or
C++ with the familiarity and ease of use of BASIC.
Why Objective -Basic succeeds
Traditionally, BASIC languages have suffered from the
attitude that they are slow and interpreted. But with Objective-Basic
you have full access to all existing Objective-C, C, Carbon or Cocoa
functionallity. Even it is compiled without runtime dependencies. So your
programs are fast and very small.
Why is Objective-Basic a
BASIC language alternative compiler for Mac OS X?
Objective-Basic is extremely well built,
is a powerfull programming language and has a nice IDE. Additional,
Objective-Basic can compile Mac OS X applications combined with Objective-C and
C code. Objective-Basic language includes a visual designer (Interface
Builder) to build GUI with all the major elements such as windows, menu and
data aware controls, such as buttons, labels and frames, textboxes, radio
buttons...
The only true official
alternative to REALbasic: The project started in 2000 as an open source
project... Objective-Basic is a professional development tool, cause this
language offers all the elements to design and create professional products.
Objective-Basic gives a single, easy-to-use API for writing GUI applications
and the application will adopt the look and feel appropriate to native Mac OS X
(in fact, you can use Cocoa natively). The language structure, the
statements and functions are really simple to understand and the documentation
is well written and complete. It comes with a very well done printable manual
with more than 140 pages which describe in detail the great number of commands,
statements and functions.
A powerful and fully featured
Basic-like language: It is completely object-oriented and binary
compiled. The syntax is very similar to Java and REALbasic. It is a fully
object-oriented languages which uses inheritance and polymorphism.
The IDE offers syntax highlighting of the source code, code
completion and much more. The main characteristic
of Objective-Basic is that it has been created to allow developers with BASIC
experience to start programming for Mac OS X without having to learn deeply a
new language.
Objective-Basic is a high level professional Basic for Mac OS X and
its very good Basic language is constantly improved and updated.
Porting BASIC Applications to Mac OS X
See a comparision of REALBasic and Objective-Basic,
the following short paragraphs show you where they are different in ways that
is related to porting your project.
Objective-Basic produces fast programs as Objective-C or C does. In fact, it
uses the same compiler as Objective-C. When using Objective-Basic you can use
any existing Cocoa, Carbon, or C/C++, without difficulties.
Porting means learning and using new keywords and new ideas in general.
Actually, why should you switch to Objective-Basic? After learning a new
language (Objective-Basic), significantly changing your source code base would
be involved, but it is worth it! Cocoa is a great development
environment. When you use Objective-Basic you automatically use Cocoa the
full featured modern framework of Mac OS X.
Do switch to
Objective-Basic ! It gives you full Mac OS X support, no huge
runtime, minimal system requirements.
At least, you should try Objective-Basic. You might find
Objective-Basic right for you and a clear path to the future.
About us
KBasic Software is a small software company with
headquarter in Frankfurt am Main / Germany. Its flagship products
are KBasic Professional, the multi-platform BASIC programming language and
environment and Objective-Basic for Mac.
KBasic Software was founded in 2003, although, Bernd Noetscher started the
development of KBasic in 2000, which is the base for Objective-Basic's compiler
and lanuage.
I know that it is crucial for my customers to have good tools for making good
software. Therefore, I do not compromise our demands for superior design and
technical quality when I develop my products. At KBasic Software, I continously
work to improve and expand Objective-Basic to ensure that it always represents
the state of the art in usability, look and feel, performance, and stability.
Objective-Basic has received international recognition from users, industry
experts and media.
Address
Bernd Noetscher's KBasic Software
Boseweg 9
60529 Frankfurt am Main
Germany
email: info@objective-basic.com
sales related issues: sales@objective-basic.com
Copyright © 2008, KBasic Software.
Hosted by KBasic Software.
Products named on this website are trademarks of their respective owners.