PDA

View Full Version : Newcomer to Delphi



MikeS
13-06-2004, 07:12 AM
Hello DGDev community, :)

First off, I can't believe I found a Delphi community as rare as they seem to be, let alone for Game Development. ;)
Funny enough, I found the post at GameDev where you first started this community. (I'll search for it later, if you want for sentimental value, hehe)(Heck, even Alimonster helped me out a long time ago on GameDev on a Delphi question. Well, I'm back again. ;))

Anyway, I'm inspired to learn Delphi, but have all kinds of questions.

First off, my programming backround.
I'm highly experienced in the language DarkBasic Professional, but I'm ready to move on. Here's something I just cooked up today in DBP.
http://curvedbasic.dbspot.com/DBPBenchMark5.0.JPG
Ok, this is a Delphi forum though, and I'm wanting Delphi.(*Focus*)

Anyway, right now I'm down to 3 choices.
1.) Go the dreaded way...
2.) PureBasic
3.) Delphi

Let me elaborate a little. (whew, this post is getting long, time for an intermission http://tvtime.sourceforge.net/screenshots/25-feb-03-simpsons.jpg)


1.) Okay, by all means C++ isn't a bad thing. C++ I've tried(All the way on Page 2 on Gametutorials.com), but it's so tiresome to learn. I do want to get a job in the game industry one day, yet I can wait.

2.) If I'm not going to floow through in Delphi, I'm going to purchase Pure Basic. Pure Basic is by far one of the most powerful basic languages around, letting you access any API, has multi-platoform capibilities(linux,windows,amiga), and easy to use gadgets.

3.) Ok, after reading the description of the above two you're confused about why I come to Delphi. Personally, I just love the Delphi community. Delphi also has a lot more resources than something such as Pure Basic.
Delphi also has syntax easier to read, rather than a bunch of {{{ }}}.

However, there are some concerns I have with Delphi, and hopefully you all can help me. *Ready, brace yourself, I'm coming in*

First, here's what I want to achieve with Delphi. I want to make Web applications, databases,Dll's, multi-platform(Windows+Linux),graphical apps, and Games. (Extensive list that I know Delphi can do.)

1.) Delphi.Net, does that mean I'm limited to Windows?

2.) Kylix 3. Is this the only way to get myself from being stuck to windows.
How easily is the code to transfer from one platform to the next?

3.) OpenGL. Does OpenGL go hand in hand as far as portibility. Assuming I have Kylix and Delphi, can I easily (as in, not too much change) transfer programs using OGL to each platform?

4.) Can Delphi compile to Linux's version of DLL's natively? Or will I have to use Kylix for that?

5.) Seen any good deal's on Delphi 7 Pro or Delphi 8.net lately. ;)

Wow that's it I guess. If I think of some more questions I'll do a search and maybe post here.

Notes: I also posted a similar thread at GameDev, so don't drive yourself crazy anwsering the same questions twice.
Here's my previous programming knowledge. Maybe sometime soon I'll get a Delphi section in there if I choose to use Delphi.
http://curvedbasic.dbspot.com/

Hmm, can't think of anything else right now, but to thank you all for your time or any suggustions, comments you have. I'll try to linger around and here for a little while and anwser some questions myself perhaps.

Word Count: 534

8)

Harry Hunt
13-06-2004, 09:06 AM
1.) Delphi.Net, does that mean I'm limited to Windows?

As far as I know, it means you're limited to Windows running the MS .NET framework. Windows XP ships with the framework pre-installed, other versions of Windows can be updated.
If you want to write "real" Windows apps, get Delphi 7 or below.


2.) Kylix 3. Is this the only way to get myself from being stuck to windows.
How easily is the code to transfer from one platform to the next?

The conversion from Delphi to Kylix can be quite easy if you restrict yourself to using only native Delphi features and no platform specific APIs such as Windows GDI, MMSystem, DirectX, etc.
As a matter of fact, in most cases programs written in Delphi will compile directly under Kylix with no changes at all.
If you want to compile your programs under other platforms as well, you might want to consider compiling it with the Free Pascal compiler which exists for many platforms. However, that might require a few changes.


3.) OpenGL. Does OpenGL go hand in hand as far as portibility. Assuming I have Kylix and Delphi, can I easily (as in, not too much change) transfer programs using OGL to each platform?

That depends. In general: yes. I think both Delphi and Kylix ship with OpenGL headers and they should be compatible. However, there are a few 3rd party header translations for OpenGL and they might rely on Windows DLLs which obviously do not work under Linux.


4.) Can Delphi compile to Linux's version of DLL's natively? Or will I have to use Kylix for that?

Sorry, can't answer that question.


5.) Seen any good deal's on Delphi 7 Pro or Delphi 8.net lately. ;)

Nope. Unfortunately not. I've been updating since version 2.0 and that saved me quite a lot of money. But buying Delphi 7/8 Pro or Enterprise will cost you quite a lot of money no matter where you buy it.


Anyway, welcome to the world of Delphi :P
I found the Delphi community to be one of the most helpful and friendly community around. I bet you will feel right at home here.
So good luck with learning Delphi and if you need any help, don't hesitate to ask.

Also, forget BASIC. Delphi has everything you need and much more. And it's pretty easy to learn, especially since you already know how to program.

MikeS
13-06-2004, 03:55 PM
Thanks very much for the reply Harry Hunt.

Regarding question 4, I don't think it's possible for Delphi to compile to Linux DLL's(.so I think they're called). This isn't a problem though.

I'll probebly look into buying Delphi 5 or 6 at first. I agree that Delphi is expensive, but from the trial version's I've run it is definitly worth it. ;)

Until then I think I'll stick around a little while and pick up some tips from you pros here. ;)

-Mike-

WILL
18-06-2004, 05:28 AM
Hi MikeS,

Glad to see you on these forums taking an interest in Delphi. It's an awesome development enviroment and I doubt I'll stop using it any time soon, myself. We have recently expanded our focus from just Delphi to all Pascal oriented Game Development. This includes Kylix and Free Pascal, which with the support of the opensource community wil grow more and more compatable with Object Pascal(used in Delphi). You'll find alot of tallented people here that can tell you lots about game developing, programing and Delphi and Pascal as a whole. I hope you stick with us as we are a growing community and need your support to continue to do so. I often gloat that we are THE Pascal Game Development community... so far noone has complained. :lol:

Just a few quick things before I try my hand at answering your questions. Take note that Delphi is just the IDE and not the language it's self(This very often gets confused by many newcomers to the Delphi/Object Pascal world). Delphi's compiler and IDE uses a variation of Pascal, much like C++ is to C, only the syntax is very much the same. It is called Object Pascal. The main difference being that It's Object Oriented, enabled Pascal. Kylix makes use of this aswell as the traditional C/C++ languages. And Free Pascal uses something more close to ANSI Pascal(the original, correct me if I'm wrong guys?). However they are becoming more and more compatable with Object Pascal as the versions come along. All 3 are quite functional, the most by far developed one being Delphi. Kylix is quite new and Free Pascal was developed some time shortly after Borland gave up on their old DOS Pascal compilers and started working on Delphi for Pascal for Windows and eventually Win32. Just a bit of a back history and a situational awareness for ya. ;)


1.) Okay, by all means C++ isn't a bad thing. C++ I've tried(All the way on Page 2 on Gametutorials.com), but it's so tiresome to learn. I do want to get a job in the game industry one day, yet I can wait.

Ah... the evil C word. :) Trust me my friend, there are jobs for programmers that know Delphi and Kylix. They are mostly business oriented and many of them have to do with playing with database work, however there is a few select small business that mke ample use of Delphi to make games and other fun projects. The gaming side is in need of growing, but it all else fails learn some Database stuff and you'll have a jobs available using it for sure, just not as many as the lemmingly, loved C/C++.


2.) If I'm not going to floow through in Delphi, I'm going to purchase Pure Basic. Pure Basic is by far one of the most powerful basic languages around, letting you access any API, has multi-platoform capibilities(linux,windows,amiga), and easy to use gadgets.

Cross-platform capable compilers; Delphi/Kylix will allow you to make applications and other programs for Windows & Linux. Some say others too? With Delphi 8 for .NET youcan also include any platform that runs off of the .NET platform. ie. Palm PC, etc. Free Pascal however seems the most cross-platform capable out of the mix. Including FreeBSD, Mac OS X, good old DOS and the more popular Windows(Win32) and Linux. As a matter of accessing common APIs(DLL or SO take your pick) Delphi/Kylix and as far as I know FreePascal are all quite capable of ]3.) Ok, after reading the description of the above two you're confused about why I come to Delphi. Personally, I just love the Delphi community. Delphi also has a lot more resources than something such as Pure Basic.
Delphi also has syntax easier to read, rather than a bunch of {{{ }}}.

However, there are some concerns I have with Delphi, and hopefully you all can help me. *Ready, brace yourself, I'm coming in*

First, here's what I want to achieve with Delphi. I want to make Web applications, databases,Dll's, multi-platform(Windows+Linux),graphical apps, and Games. (Extensive list that I know Delphi can do.)[/quote]

Ah... this is all very, very do-able! :) There is an API called Indy you'll want to check out for networking(however with some patience you could use DirectPlay from the DirectX set of APIs or just use Delphi's included internet units). There are many many graphics wrappers and libraries that you can try. The most popular for beginners being DelphiX that uses all kinds of APIs from DirectX, but is limited to Win32 programs obviously. Many other projects and libraries and suites for 2D and 3D graphics using DirectDraw, Direct3D and OpenGL(2D and 3D applications) for graphics. JEDI-SDL is a really nice API for making games with esp. if paired with OpenGL and OpenAL for sound. If you want to make Win32/Linux cross=platforms games Delphi/Kylix is your paired compilers. However as an alternative you can still use Pascal and pretty much the same APIs(like JEDI-SDL and OpenGL) to be even more cross-compatable with Mac OS X, FreeBSD, BeOS, PlayStation, etc... even plans for a 64 bit version of it. lots of good stuff here. For databases, you've got it covered, I don't know a single language or compiler that has as many database interfacecs components or libraries as Delphi has. And you can bet that if Delphi supports it and it's NOT Win32 specific, then Kylix will be just as helpful.


1.) Delphi.Net, does that mean I'm limited to Windows?

Thankfully there will be no Delphi.NET like there is VB.NET(We all hope) thats sort of an oxymoron in its self. There is however Delphi 8 for .NET which yes, makes programs for the .NET platform under Microsoft platforms. ie. Windows CE, Windows XP(and any other Win32 variations that are .NET capable) and a few others I'm sure. There will be a Delphi 8 for Win32 coming out sometime in 2005 and we're all waiting anxiously.


2.) Kylix 3. Is this the only way to get myself from being stuck to windows.
How easily is the code to transfer from one platform to the next?

This can depend on a few things. The actual language and syntax will be 100% compatable. You will however have to use CLX instead of VCL(which is basically just as elaborate and cloned form VCL anyhow) and only use APIs that will be available for all the platforms you with to develop for. Opensource has been an excelent resource in this respect.

Free Pascal as an alterante should be able to support many if not all of your needs soon enough. It already supports most of the major players like Linux, Win32, FreeBSD, BeOS, working on Mac OS X right now. But it's compatablility of many of the game related APIs have not been as researched as they have in Delphi.


3.) OpenGL. Does OpenGL go hand in hand as far as portibility. Assuming I have Kylix and Delphi, can I easily (as in, not too much change) transfer programs using OGL to each platform?

You should be happy to hear that OpenGL is *the* API for cross-platform graphics. If you can get it working for your respective compiler then you should have no need to change your code or usage of the functions derived from the OpenGL libraries, provided that the wrappers(aka headers in C) you're using are up to date current with what you are using.


4.) Can Delphi compile to Linux's version of DLL's natively? Or will I have to use Kylix for that?

Delphi does not create Linux or X11 executables, you'll need Kylix on a Linux machine to do this.

Free Pascal on the other hand, I'm not too sure. I think it's the same deal.


5.) Seen any good deal's on Delphi 7 Pro or Delphi 8.net lately. ;)

There has been a version of Delphi 6 Personal that is claimed to be free. Or was actively advertized by Borland some time ago. I myself have been caught using Delphi 5 and 7. If you get nothing below 5 you should be alright.


Wow that's it I guess. If I think of some more questions I'll do a search and maybe post here.

Notes: I also posted a similar thread at GameDev, so don't drive yourself crazy anwsering the same questions twice.
Here's my previous programming knowledge. Maybe sometime soon I'll get a Delphi section in there if I choose to use Delphi.
http://curvedbasic.dbspot.com/

Hmm, can't think of anything else right now, but to thank you all for your time or any suggustions, comments you have. I'll try to linger around and here for a little while and anwser some questions myself perhaps.

Word Count: 534

8)

Thank you. :) You'll find that the community here at DGDev and soon to be PGD are full of helpful people and most have accomplished quite a bit with Delphi themselves. I wish you luck in your projects and hope it turns out well for you.

And trust me... if you have a Delphi or Pascal game development related question there'll be no better place to ask than here. :)

MikeS
31-07-2004, 05:26 AM
Wow thanks for all your helpful responses Will. (Sorry I'm replying a month late though. ;) )

In my abscense I've been trying all sorts of other programming languages. C++(again, though now I remember why I turned away),VB, and other freeware languages.

I'm pretty much set on the Delphi/Kylix route though. I heard something disturbing from a source(can't remember where), that Kylix 3 was going to be discontinued. Was this a rumor, a lie, or is something better coming for Linux!

Again, thanks for all the information you've provided and the warm welcome.

-Mike-

Oh, btw. I got an e-mail from www.ProgrammersParadise.com and they have some great deals for Borland software for anyone interested.

Useless Hacker
01-08-2004, 10:40 PM
Last time I tried Kylix it was rubbish, though maybe it has improved since then. If you want to do cross-platform development, you should try Free Pascal (http://www.freepascal.org/), which supports most of the Delphi extensions to pascal, and can compile on loads of different platforms, including Linux.

MikeS
02-08-2004, 12:25 AM
Thanks Useless Hacker,

I downloaded it a few nights ago to with the Dev-Shed IDE. Just want to introduce myself to the language a little and I'm excited I'll be able to also compile to linux,windows and other platforms.

:)

blackvoid
05-09-2006, 08:34 PM
You could also try freepascal, which is more platform independent than Delphi and is free. I use Delphi by the way....

JSoftware
05-09-2006, 08:58 PM
hehe 2 year old thread :P