LinuxQuestions.org
Register a domain and help support LQ
Go Back   LinuxQuestions.org > Forums > Non-*NIX Forums > Programming
User Name
Password
Programming This forum is for all programming questions.
The question does not have to be directly related to Linux and any language is fair game.

Notices

Reply
 
Search this Thread
Old 02-24-2010, 02:23 PM   #1
CoderMan
Member
 
Registered: Jan 2009
Location: Gemini Capsule 25164
Distribution: Gentoo
Posts: 375
Blog Entries: 24

Rep: Reputation: 43
Question Should I learn Objective C?


Hi. I heard about a language called Objective C the other day, and I was wondering if it was worth my time to learn it. Could any proponents or critics of the language give me any valuable insight on the subject?

My background: I've mostly programmed in C++ and Java, though I also have some background in C, Perl, assembly, and a few other languages. I general, I like "high-level" application programming and am a big OOP fan. I really like the Java programming language, though I'm not such a big fan of the implementation.

My preferences and concerns:
- Is there any proprietary licensing attached to the language or its implementation?
- I love garbage collection when it is transparent and easy to use
- a very natural OOP interface.
- I rely heavily on polymorphism
- enough community library support to create graphical games and applications in a Linux environment
 
Old 02-24-2010, 02:34 PM   #2
pixellany
LQ Veteran
 
Registered: Nov 2005
Location: Annapolis, MD
Distribution: Arch/XFCE
Posts: 17,802

Rep: Reputation: 728Reputation: 728Reputation: 728Reputation: 728Reputation: 728Reputation: 728Reputation: 728
There is a standard answer to questions like this:
If you don't know why--or whether--you need something, then you probably don't need it.

I tend to learn languages only to solve specific problems. I do often just dabble out of curiousity, which you could certainly do. But, if you don't have lots of free time, stick with letting the problem come first.
 
0 members found this post helpful.
Old 02-24-2010, 02:58 PM   #3
CoderMan
Member
 
Registered: Jan 2009
Location: Gemini Capsule 25164
Distribution: Gentoo
Posts: 375
Blog Entries: 24

Original Poster
Rep: Reputation: 43
Quote:
Originally Posted by pixellany View Post
There is a standard answer to questions like this:
If you don't know why--or whether--you need something, then you probably don't need it.

I tend to learn languages only to solve specific problems. I do often just dabble out of curiousity, which you could certainly do. But, if you don't have lots of free time, stick with letting the problem come first.
Well, I need /some/ language to do my programming in. Java is nice, but it kind of sucks that the implementation is proprietary. I could keep programming in C++ forever, of course, but if there is a better option for my needs, I'm open-minded. I found out about Objective C when I was looking into implementing garbage collection in C++, but before I dive head first into Objective C I would appreciate any pros or cons from people that actually have some background using it.
 
Old 02-24-2010, 03:23 PM   #4
MTK358
LQ 5k Club
 
Registered: Sep 2009
Posts: 6,443
Blog Entries: 3

Rep: Reputation: 713Reputation: 713Reputation: 713Reputation: 713Reputation: 713Reputation: 713Reputation: 713
I was also considering Objective-C because I both want a low-level OO language, and because I think C++ sucks because of it's confusing syntax and duplication of C's features.

So I would also like to know if Obj-C is any better for general Linux programming, the reasons I'm hesitant the way it is so related with Apple and this "*step" stuff I don't understand, and because I can't find any good tutorials.
 
Old 02-24-2010, 03:27 PM   #5
Sergei Steshenko
Senior Member
 
Registered: May 2005
Posts: 4,481

Rep: Reputation: 453Reputation: 453Reputation: 453Reputation: 453Reputation: 453
Quote:
Originally Posted by CoderMan View Post
Well, I need /some/ language to do my programming in. Java is nice, but it kind of sucks that the implementation is proprietary. I could keep programming in C++ forever, of course, but if there is a better option for my needs, I'm open-minded. I found out about Objective C when I was looking into implementing garbage collection in C++, but before I dive head first into Objective C I would appreciate any pros or cons from people that actually have some background using it.
There is free/open source Java implementation.

Isn't Objective C widely used by Apple ?
 
Old 02-24-2010, 05:36 PM   #6
vbx_wx
Member
 
Registered: Feb 2010
Posts: 181

Rep: Reputation: 16
if u own an iPhone,then learn it so u can make your own aplications
 
Old 02-24-2010, 05:40 PM   #7
vxc69
Member
 
Registered: Jul 2004
Distribution: Ubuntu
Posts: 385

Rep: Reputation: 33
Quote:
Originally Posted by vbx_wx View Post
if u own an iPhone,then learn it so u can make your own aplications
I second that. Some ppl make $600 a day on iphone apps.
 
Old 02-25-2010, 01:19 AM   #8
CoderMan
Member
 
Registered: Jan 2009
Location: Gemini Capsule 25164
Distribution: Gentoo
Posts: 375
Blog Entries: 24

Original Poster
Rep: Reputation: 43
Quote:
Originally Posted by Sergei Steshenko View Post
There is free/open source Java implementation.
If this be the case, please make divulging the details the priority of this thread. I am still very new to Java, but I was under this distinct impression: the Java language itself can be used freely, and there is even a FOSS version of the development kit, but the Virtual Machine itself is quite the property of Sun and cannot be legally distributed in a modified form, meaning that ultimately proprietary software must be used in order to run Java code. But if I am the slightest bit mistaken on the point, I will gladly herald my ignorance and have my misconceptions corrected.
 
Old 02-25-2010, 01:40 AM   #9
CoderMan
Member
 
Registered: Jan 2009
Location: Gemini Capsule 25164
Distribution: Gentoo
Posts: 375
Blog Entries: 24

Original Poster
Rep: Reputation: 43
Merciful heavens, there are some clean-room JVMs! I'm installing one now call "kaffe". I hope it works as it should. But I wonder if any of these can be used for in-browser applets... would I need to find new browser plugins?
 
Old 02-25-2010, 02:36 AM   #10
Sergei Steshenko
Senior Member
 
Registered: May 2005
Posts: 4,481

Rep: Reputation: 453Reputation: 453Reputation: 453Reputation: 453Reputation: 453
Quote:
Originally Posted by CoderMan View Post
If this be the case, please make divulging the details the priority of this thread. I am still very new to Java, but I was under this distinct impression: the Java language itself can be used freely, and there is even a FOSS version of the development kit, but the Virtual Machine itself is quite the property of Sun and cannot be legally distributed in a modified form, meaning that ultimately proprietary software must be used in order to run Java code. But if I am the slightest bit mistaken on the point, I will gladly herald my ignorance and have my misconceptions corrected.
I am not a Java guy; I remember that a couple (?) years ago RedHat got Java stack (based on 'gcc' Java backend) certified. I.e. the whole open source Java stack got certified.
 
Old 02-25-2010, 09:40 AM   #11
ntubski
Senior Member
 
Registered: Nov 2005
Distribution: Debian
Posts: 2,396

Rep: Reputation: 814Reputation: 814Reputation: 814Reputation: 814Reputation: 814Reputation: 814Reputation: 814
Isn't Sun's implementation open source as well?

Java (software platform)
Quote:
On November 13, 2006, Sun Microsystems made the bulk of its implementation of Java available under the GNU General Public License[1], although there are still a few parts distributed as precompiled binaries due to copyright issues with Sun-licensed (not owned) code.[2]
 
Old 02-25-2010, 01:13 PM   #12
paulsm4
Guru
 
Registered: Mar 2004
Distribution: SusE 8.2
Posts: 5,863
Blog Entries: 1

Rep: Reputation: Disabled
Objective C is a *great* alternative to C++!

http://en.wikipedia.org/wiki/Objective_C

Also take a look at GNUStep:

http://en.wikipedia.org/wiki/GNUstep

So the answer to your question is:

"Yes! By all means - go for it!"

IMHO .. PSM

Last edited by paulsm4; 02-25-2010 at 01:14 PM.
 
Old 02-25-2010, 02:52 PM   #13
MTK358
LQ 5k Club
 
Registered: Sep 2009
Posts: 6,443
Blog Entries: 3

Rep: Reputation: 713Reputation: 713Reputation: 713Reputation: 713Reputation: 713Reputation: 713Reputation: 713
But anyway, WHAT is GNUStep, and everything else *Step?
 
Old 02-25-2010, 03:40 PM   #14
paulsm4
Guru
 
Registered: Mar 2004
Distribution: SusE 8.2
Posts: 5,863
Blog Entries: 1

Rep: Reputation: Disabled
Hi, MTK358 -
Quote:
Q: But anyway, WHAT is GNUStep, and everything else *Step?
Among other things, "NextStep" was what Tim Berniers-Lee used to write the very first web browser:

Quote:
http://www.w3.org/People/Berners-Lee/WorldWideWeb.html
http://www.boutell.com/newfaq/history/fbrowser.html

I wrote the program using a NeXT computer. This had the advantage that there were some great tools available -it was a great computing environment in general. In fact, I could do in a couple of months what would take more like a year on other platforms, because on the NeXT, a lot of it was done for me already. There was an application builder to make all the menus as quickly as you could dream them up. there were all the software parts to make a wysiwyg (what you see is what you get - in other words direct manipulation of text on screen as on the printed - or browsed page) word processor. I just had to add hypertext, (by subclassing the Text object)

Last edited by paulsm4; 02-26-2010 at 10:40 AM.
 
Old 02-26-2010, 08:53 AM   #15
MTK358
LQ 5k Club
 
Registered: Sep 2009
Posts: 6,443
Blog Entries: 3

Rep: Reputation: 713Reputation: 713Reputation: 713Reputation: 713Reputation: 713Reputation: 713Reputation: 713
I still don't get what it is. Is it a desktop environment, an API, an compiler, a "pre-compiler", an IDE, or some strange mixture of the above?
 
  


Reply


Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
How to compile Objective-C? MTK358 Programming 3 12-31-2009 07:36 PM
Objective-C Newbie MexDeath Programming 11 08-14-2009 11:48 PM
About new objective of Linux+ 2009 linuxjamil Linux - Certification 0 07-07-2009 06:27 AM
LXer: Don't Forget The 'C' in Objective-C LXer Syndicated Linux News 0 05-26-2007 01:16 PM
Objective-C dogn00dles Programming 2 11-29-2003 02:30 AM


All times are GMT -5. The time now is 06:13 PM.

Main Menu
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
identi.ca: @linuxquestions
Facebook: linuxquestions Google+: linuxquestions
Open Source Consulting | Domain Registration