Objective-C

Programming, for all ages and all languages.
Post Reply
chris

Objective-C

Post by chris »

Would anybody be able to explain to me what Objective-C is/what it's used for?
Schol-R-LEA

Re:Objective-C

Post by Schol-R-LEA »

chris wrote: Would anybody be able to explain to me what Objective-C is/what it's used for?
Objective-C, as the name implies, is an OOP variant of C; it was developed around the same time as C++, and the two languages were rivals throughout the 1980s; Objective-C was the major language on the Next workstation.. While C++ eventually won out, Objective-C continued to be used in certain projects, such as the GNUStep window manager and the Cocoa development kit. The gcc compiler system supports Objective-C as a source language.

Objective-C took a very different approach to extending C than C++ did; rather than modify the core syntax, it instead embedded a Smalltalk-like sublanguage in the C code, which was marked off by square brackets. It also added features for separating 'interface' from 'implementation', similar to those in Ada or Eiffel.

The "Hello, World!" page gives us this example program:

Code: Select all

 
/* W.J. Antel Jr.  12/12/96
** Compile with gnu's gcc:  gcc hello.m -lobjc
*/
#include 


@interface Control:Object

{
}
- world;
void main();

@end


@implementation Control

- world
{
  printf("Hello, World!\n");
}

void main()
{
  id hello;

  hello=[Control new];

  for(;;)
    [hello world];
}

@end
This was too different, and lacked the appeal a familiarity that C++ had; it also generated much less efficent code. It's supporters, however, argued that it was a much more elegant design than C++'s, and that it supported OOP with fewer compromises.

For more information, see the Objective-C FAQ.
chris

Re:Objective-C

Post by chris »

Cool, thanks!
User avatar
df
Member
Member
Posts: 1076
Joined: Fri Oct 22, 2004 11:00 pm
Contact:

Re:Objective-C

Post by df »

yeah, when I looked at OC, it really fely like I was programming in preprocessor or macros and very.. it felt not attached to C really.. I didnt like it.
-- Stu --
Post Reply