 |
Cheat Engine The Official Site of Cheat Engine
|
| View previous topic :: View next topic |
| Author |
Message |
benlue Moderator
Reputation: 0
Joined: 09 Oct 2006 Posts: 2142
|
Posted: Thu May 24, 2007 1:04 am Post subject: Choosing your language . |
|
|
It is always a problem choosing which language to learn whether it be C , C++ , pascal , java and many more .
This thread will hopefully help you guys decide on which language to learn , and make sure you pay close attention as it may be the perfect language for you !
Now i will just lead you into your reading and choosing what language to learn .
C
C is usually easier to follow but C still has a GOTO statement , but its functionality is limited and it is only recommended as a last resort if structured solutions are much more complicated .
C is good for writing small and fast programs and is easy to interface with assembly language and is very standardised . It is very handy as versions on other platforms do not matter .
Though C is not easily support object-oriented techniques . Syntax can be difficult and lends itself to abuse .
While ANSI function calls are very portable , they are limited to control-flow, memory management, and simple file-handling . This means you have to write the user interface twice .
C++
C++ is probably known by everyone who has been browsing around the forums . Though there are features of C++ , like virtual functions, that add an extra layer of decision-making to function calls , and programmers are quick to point out that C++ programs can be larger and slower than C counterparts .
C++ is much better than C for organizing large programs and supports the object-oriented paradigm nicely . Libraries of common data structures, like linked lists and grow-able arrays , can remove much of the burden of having to deal with low-level details .
C++ is extremely large and complicated , like C, the syntax lends itself to abuse and can be slower than C . Not many compilers implement the entire language correctly which could be a problem .
Assembly
Assembly was the first computer language by default . It is actually a command-based representation of the actual instructions that your computer's processor runs . That means you will be dealing with the low-level details of your processor , like registers and stacks .
Anything you can do in any other language , you can do in assembly , only not as easily .
Assembly is the smallest and fastest language . When you get good enough , you can write programs that are faster than anything that can be done in other languages .
Assembly is difficult to learn, cryptic syntax, tough to do efficiently, and it takes much more code to get something done .
Pascal
Pascal is simpler than C which could attract attention . While the syntax is similar , it lacks a lot of the shortcut operations that C has . It's harder to write inscrutable "clever" code , but it makes low-level operations like bit-manipulation more difficult .
Pascal is easy to learn , while the language standards are not adhered to by compiler-makers which is a disadvnatage .
Visual Basic
Instantaneous compiling, makes it a terrific environment for fast prototyping sounds tempting .
Easy to learn . Instantaneous compiling makes for very fast and easy prototyping . While there are currently third-party DirectX add-ons for Visual Basic , DirectX version 7 is going to include support for Visual Basic right out of the box .
Apps are large and require several large runtime DLL's to run . While form and dialog-based apps are easy to make , writing good graphical apps is more difficult . Calling Windows API functions is clunky, because VB data structures don't map nicely to C .
Java
Jave is a rather compact and easy-to-learn language . Unlike C++ , Java enforces object-orientation with a heavy hand .
Binaries are portable to other platforms . Apps can run embedded in web pages . The included class library is reasonably standardized and extremely robust . Automatic allocation and garbage collection all but eliminates resource leaks in applications .
The bad thing is that it uses a "virtual machine" to run portable byte-code rather than native machine code, so apps are slower than true compilers . Java is very high-level, which makes dealing with any low-level machine features very difficult .
Motivation
This should really help you decide what language to learn and should be very helpful in deciding .
Hoped that this helped you guys out .
|
|
| Back to top |
|
 |
the_undead Expert Cheater
Reputation: 1
Joined: 12 Nov 2006 Posts: 235 Location: Johannesburg, South Africa
|
Posted: Thu May 24, 2007 5:52 am Post subject: |
|
|
Personally, I'm rather fond of English.
_________________
|
|
| Back to top |
|
 |
appalsap Moderator
Reputation: 0
Joined: 27 Apr 2006 Posts: 6753 Location: Pakistan
|
Posted: Thu May 24, 2007 6:21 am Post subject: |
|
|
benlue, Regarding C, you're missing the point of GOTO. It's a way of doing a "jmp" and is very effective in switch/case statements or if you want to break out of a big loop. Many modern languages today have 'goto' simply because it is useful and a tool shouldn't be taken out of the box because people don't know how to use it.
Why do you say C's functionality is limited? Limited by what? Limited compared to what? Can you give me an example of a "structure" that C can't handle? And the syntax "lends itself to abuse"? No, that would be C++. C is very strict about its syntax rules and forces you to write clean, reusable code. You should have wrote about C as you did assembly because they're very similar and C was meant to be a portable assembly of sorts.
Pascal. First, bit wise operations. Uh no? You don't have symbols but you have words instead, does that make it any harder? Is it painful to write "xor" instead of "^"? And Standards? What standards? Are you making this up?
Visual basic- Instantaneous compilation eh? Wait, that's WRONG. VB is an interpreted language, it's the opposite of "instantaneous compilation".
Java- It is not compact, it is big, clunky, and slow. Try using some java apps like OpenOffice.org and you'll see. Garbage collection can cause just as many memory leaks as they claim to fix, you're taking a human's job (managing the memory YOU choose to allocate) and giving it to a machine.
|
|
| Back to top |
|
 |
DeltaFlyer Grandmaster Cheater
Reputation: 0
Joined: 22 Jul 2006 Posts: 666
|
Posted: Thu May 24, 2007 7:49 am Post subject: |
|
|
| benlue wrote: | | While there are currently third-party DirectX add-ons for Visual Basic , DirectX version 7 is going to include support for Visual Basic right out of the box . |
Wow.... old....
| appalsap wrote: | | Java- It is not compact, it is big, clunky, and slow. Try using some java apps like OpenOffice.org and you'll see. Garbage collection can cause just as many memory leaks as they claim to fix, you're taking a human's job (managing the memory YOU choose to allocate) and giving it to a machine. |
cmon, 9.93kB for a program that automatically browses sites and checks for new links to click on is not that big. Plus, most Java programs are compressed in a jar.
OOo is actually not done in Java. Only parts of it are, like Base and some special features in Writer.
GC is not that bad as long as it is used correctly. Especially for smaller programs, without having to manage memory is a big plus on programming speed.
_________________
Wow.... still working at 827... what's INCA thinking?
zomg l33t hax at this place (IE only). Over 150 people have used it, what are YOU waiting for? |
|
| Back to top |
|
 |
umbala Expert Cheater
Reputation: 0
Joined: 02 Feb 2006 Posts: 104
|
Posted: Thu May 24, 2007 10:31 am Post subject: Re: Choosing your language . |
|
|
| benlue wrote: |
Jave is a rather compact and easy-to-learn language
|
Java is compact? Since when? appalsap used OpenOffice.org as an example, I'm going to point to Azureus, the bittorrent client. Last time I tried it (which was quite some time ago), it was consuming ~50MB of memory just sitting there, without any torrents loaded.
| benlue wrote: |
Binaries are portable to other platforms
|
Portability sounds good in theory, but there's a huge trade-off: speed. The phrase "multi platform" has pretty much become synonymous with "slow and bloated." That, or I just really hate Java.
I'm not even going to comment on the junk you wrote about VB.
|
|
| Back to top |
|
 |
InYourFace Expert Cheater
Reputation: 0
Joined: 27 May 2007 Posts: 247
|
Posted: Mon May 28, 2007 6:33 am Post subject: |
|
|
| :O where is delphi
|
|
| Back to top |
|
 |
TheSorc3r3r I post too much
Reputation: 0
Joined: 06 Sep 2006 Posts: 2404
|
Posted: Mon May 28, 2007 7:36 am Post subject: |
|
|
| InYourFace wrote: | | :O where is delphi |
Pascal
_________________
Don't laugh, I'm still learning photoshop! |
|
| Back to top |
|
 |
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum You cannot attach files in this forum You can download files in this forum
|
|