Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.

dimi94941

macrumors regular
Original poster
Oct 25, 2010
118
0
OK, so I just came to US for studying in college. My major is computer engineering. This semester we're gonna learn Microsoft Visual Basic and next semester C++. However for couple of years now I've been a Mac and iPhone user... so I would really like to learn coding for Mac and iPhone/iPad and not Windows... I know that developer tools are Cocoa and Xcode, maybe they're more but I don't know.

So, what advice would you give me to do. Should I learn Visual Basic and then what? How can I implement the learning for OS X and manage with my time with school? Should I just buy a book and learn two languages at the same time? Or is it that when I learn C++ I'll also know Cocoa and Xcode? Please advice. Lack of Mac in schools are frustrating, it's like people are obsessed with Windows...
 

lee1210

macrumors 68040
Jan 10, 2005
3,182
3
Dallas, TX
People are obsessed with Windows because they are obsessed with money, and it's still the most popular OS.

If you're just starting out, focus on one thing at a time. Learning C++ will not teach you Objective-C (language), Cocoa (framework), or XCode (IDE). You should learn about Object-Oriented Programming along with the way it's implemented in C++. This, and programming basics, should assist you in learning other things. Other than that, you won't get these skills "free" learning something else.

-Lee
 

jiminaus

macrumors 65816
Dec 16, 2010
1,449
1
Sydney
In your first semester your first goals should include learning how to break down problems, how to starting thinking like a computer and how to research documentation to find answers. You can do this any language. For you you'll be doing this with Visual Basic. While Visual Basic itself won't be useful to you directly in Mac/iOS programming, these fundamental skills will be.

Then in the second semester you'll learning about object-orientation and memory management. Again, the particular style of OO and memory management of C++ won't be directly useful to Mac/iOS programming, the fundamentals that you'll learn will be.

C++ is based on C and Objective-C is an extension to C, so learning C++ will kickstart you in Objective-C because you'll have the common C heritage. However you will have to unlearn some things because C++ and Objective-C do many things differently. They're based on two different object-oriented models. But the fundamentals of object-orientation are the same.

I would strongly discourage you from learning Mac/iOS programming while your learning Visual Basic and C++. As a beginner, you'll have more than enough to learning and struggle with doing just one at a time. And differences between them will confuse you.
 

Hansr

macrumors 6502a
Apr 1, 2007
897
1
Just learn both and be an actually useful person once you enter the market place. I use on average 8-10 languages over the course of a month. When you are in the position where you just pick the one that's most suited to a specific solution, you're golden.
 

Madd the Sane

macrumors 6502a
Nov 8, 2010
534
73
Utah
Just an FYI, you can use Visual Basic on the Mac side by using an IDE called RealBasic. I myself have not used it, so I can't vouch for how similar it is to Visual Basic. But it's there.
 

Hansr

macrumors 6502a
Apr 1, 2007
897
1
Just an FYI, you can use Visual Basic on the Mac side by using an IDE called RealBasic. I myself have not used it, so I can't vouch for how similar it is to Visual Basic. But it's there.

It's crap, outdated and produces bloatware. Ignore it.
 

ehoui

macrumors regular
Jan 27, 2011
217
0
VB... yikes. That being said, IMO, language is the least interesting aspect of CS. Anyone can build crappy software with powerful languages and APIs. A few can build great software even when given less than optimal environments and tools.

Do what must of us probably did: pick your school topics to optimize your degree (when an opportunity to do something fun comes along, then great); and do your "side" projects to work on stuff that you are interested if you are not learning that in school AND if you have time.

If the instruction is good, then regardless of the language, you will probably learn something that is useful to other languages/platforms. If the instruction is "how to hack stuff up in VB", then consider it a resume building class and look to the next one to build your foundational knowledge which would be applicable to OS X, iPhone, and in fact, pretty much everything.
 

larkost

macrumors 6502a
Oct 13, 2007
534
1
Just an FYI, you can use Visual Basic on the Mac side by using an IDE called RealBasic. I myself have not used it, so I can't vouch for how similar it is to Visual Basic. But it's there.

No, this is not VisualBasic. Both RealBasic and VisualBasic are languages based in the original Basic language, but in both environments you will spend far more of your time in the frameworks that are specific to that setup. Learning VisualBasic will not help you out very much with actual productivity in RealBasic, and vise versa.

And both setups have IDE's.
 

WMuntean

macrumors regular
Aug 23, 2007
178
0
In your first semester your first goals should include learning how to break down problems, how to starting thinking like a computer and how to research documentation to find answers.

I'm really glad you brought up this point. I believe that understanding and knowing how to research documentation is way under emphasized. I think it is the single most important thing when learning a new language. Every language does documentation differently and being able to abstract the structure behind them is going to facilitate your learning of that language.
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.