Munchy2007,
Select carefully from the language options that Ancient Lady posted.
Each option has it's own pros and cons. I'll list the most noteworthy differences:
TIER 1 - AppGameKit BASIC Dialect
Pros:
- With the AppGameKit Basic you will get started fast, because you will not need any other development tools to compile and run your programs.
- All of the TIER1 examples should compile and work in latest AppGameKit without a problem.
- Good enough for hobby development.
Cons:
- Often falls short on more serious projects.
- Rather lousy documentation!
- The included IDE for AppGameKit Basic has a number of shortcomings - no code folding, no function lists, etc.
- No debugger support!
- Platform support is limited to what TGC includes in AGK.
- Several important features missing from the language (not supported by the compiler).
- Compiler is based on technology that was developed around 10 years ago, and it's still not mature.
- Slower program performance due to the need for a "player" that runs the compiled bytecode.
TIER 2 - C++
Pros:
- Well defined, complete and mature language implementation.
- Fast program execution.
- Your program will have access to all platform specific functions and libraries via C++.
- You can include additional audio libraries, input libraries, etc.
- You can take advantage of the native debugging facilities of each development environment (see below).
Cons:
- You will need additional tools:
* On Windows, you will use Visual Studio 2010 (express or full).
* On a Mac, you will use XCode.
* For Android, you will use Eclipse.
- There is a significant setup overhead associated with Tier 2.
- There are problems with the code templates provided with AppGameKit that need to be sorted out.
- AppGameKit code samples for TIER2 are old and have not been updated in ages. They may not compile without some tweaking.
TIER 3 - Object Pascal
Pros:
- Well defined, complete and mature language implementation.
- AppGameKit functions
wrapped into a class model.
- Rather good and clear
documentation (if you're used to working with OOP and class models).
- Fast execution and a huge number of additional objects and classes for
DelphiXE3.
- Good debugger support in
DelphiXE3.
Cons:
- You will be somewhat reliant on
Erik van Bilsen, who is the builder of the Pascal wrapper for AGK.
* The latest AppGameKit betas are usually not usable. But Eric does a very good job at converting the stable releases (which are what you will usually want to use).
- DelphiXE3 is not free! (But you can also use the
Lazarus (IDE) with
Free Pascal.)
BRIEF SUMMARY
TIER 1 - Basic certainly is the worst of the language options by far! (At times it is just dreadful.) But it might be ok, if you're not that serious about programming.
TIER 2 - If you're going to develop something more or less professionally, then you'll be happiest with TIER 2 in the long run. There's a fairly steep learning curve though.
TIER 3 - Object pascal (wheather in DelphiXE or in Lazarus) is very pleasant to work with. If you're thinking about TIER 2, think about TIER 3 too! If you invest in Delphi XE3, I can guarantee that you won't be sorry.
AGK or DBPro
Both, of course. X)
Cheers,
AgentSam