Cheat Engine Forum Index Cheat Engine
The Official Site of Cheat Engine
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 


Choosing your language .

 
Post new topic   Reply to topic    Cheat Engine Forum Index -> General programming
View previous topic :: View next topic  
Author Message
benlue
Moderator
Reputation: 0

Joined: 09 Oct 2006
Posts: 2142

PostPosted: Thu May 24, 2007 1:04 am    Post subject: Choosing your language . Reply with quote

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
View user's profile Send private message
the_undead
Expert Cheater
Reputation: 1

Joined: 12 Nov 2006
Posts: 235
Location: Johannesburg, South Africa

PostPosted: Thu May 24, 2007 5:52 am    Post subject: Reply with quote

Personally, I'm rather fond of English.
_________________
Back to top
View user's profile Send private message Visit poster's website MSN Messenger
appalsap
Moderator
Reputation: 0

Joined: 27 Apr 2006
Posts: 6753
Location: Pakistan

PostPosted: Thu May 24, 2007 6:21 am    Post subject: Reply with quote

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
View user's profile Send private message
DeltaFlyer
Grandmaster Cheater
Reputation: 0

Joined: 22 Jul 2006
Posts: 666

PostPosted: Thu May 24, 2007 7:49 am    Post subject: Reply with quote

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
View user's profile Send private message
umbala
Expert Cheater
Reputation: 0

Joined: 02 Feb 2006
Posts: 104

PostPosted: Thu May 24, 2007 10:31 am    Post subject: Re: Choosing your language . Reply with quote

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
View user's profile Send private message
InYourFace
Expert Cheater
Reputation: 0

Joined: 27 May 2007
Posts: 247

PostPosted: Mon May 28, 2007 6:33 am    Post subject: Reply with quote

:O where is delphi
Back to top
View user's profile Send private message
TheSorc3r3r
I post too much
Reputation: 0

Joined: 06 Sep 2006
Posts: 2404

PostPosted: Mon May 28, 2007 7:36 am    Post subject: Reply with quote

InYourFace wrote:
:O where is delphi


Pascal

_________________


Don't laugh, I'm still learning photoshop!
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    Cheat Engine Forum Index -> General programming All times are GMT - 6 Hours
Page 1 of 1

 
Jump to:  
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


Powered by phpBB © 2001, 2005 phpBB Group

CE Wiki   IRC (#CEF)   Twitter
Third party websites