Slashdot Mirror


Modern Mac Development?

CDarklock asks: "I'm getting seriously interested in setting a new Mac next to my Windows box (to replace the Mac SE, which should tell you about how long it's been). But on Linux and Windows, I'm accustomed to writing lots of custom apps in C++ to fill the gaps around the system, but I haven't written anything on a Mac for something like fifteen years. As a professional Windows developer, what sort of expense am I facing to outfit a new Mac with development tools comparable to Microsoft's Visual Studio .NET, and what sort of learning curve should I expect?"

9 of 210 comments (clear)

  1. is this.. by Anonymous Coward · · Score: 0, Insightful

    a troll to get someone point at some free xcode or what?

    1. Re:is this.. by amichalo · · Score: 4, Insightful

      There is more to developing on a Mac than downloading Xcode.

      I think the thread is worth exploring. There is a learning curve to moving from Windows to OS X in general, and more to learn when switching as a developer. The move from Linux to OS X is far less of a curve, but still exists.

      Let's give the thread a chance!

      --
      I only came here to do two things; kick some ass, and drink some beer...looks like we're almost out of beer.
  2. Tiger? by El · · Score: 2, Insightful

    On a related subject, if I wait until May to buy a Mac Mini, will it come with Tiger and X-code?

    --

    "Freedom means freedom for everybody" -- Dick Cheney

  3. Not only GUI development on Mac OS X by treerex · · Score: 2, Insightful

    You are not limited to using XCode on Mac OS X. Once you have the developer tools installed you can use Make and Emacs (or VIM, or whatever) if you want. You could even install KDevelop and use that, if you wanted. You can develop with Qt and its tools as well, if you want to go that direction as well.

    You also don't need to develop in Cocoa, if you feel up to learning the lower-level Carbon APIs and do not want to write code in Objective C.

    I expect that someone has provided Cocoa bindings for Python, if you want to write "native" look apps with that. However, the existing Tk interfaces just work.

  4. Re:If you love .net by babbage · · Score: 2, Insightful

    I don't think that's the reasoning at work here.

    On Windows, the platform is mature and widely adopted, with a rich variety of software from independent vendors. Microsoft feels they can charge for the development tools, and does so.

    On OSX, the platform -- not counting the Unix foundation -- is young, with a comparitively miniscule pool of software vendors. Apple needs to grow the pool of available software for the platform, so giving their development suite away is a way to encourage more software to be available for the platform in the long run, and so to make the platform more viable in the long run. It's a short term expense, but a long term investment.

    The motivations on the two sides are different, so of course the approaches are as well.

  5. Re:TrollTech's Qt by TheRaven64 · · Score: 2, Insightful
    If you create an app using Qt, then do not expect Mac users to use it. Qt deviates horribly from the OS X HIGs in some areas (e.g. the text area control behaves completely differently from the standard OS X one), giving a really jarring feeling when using Qt apps on a Mac.

    There is no such thing as a good cross platform GUI. Either your GUI fits with the native platform's HIGs, or it is cross platform[1]. You can not have both. Fortunately, good code abstracts the application logic from the UI, so it is not a great deal of effort to port.

    [1] Some UN*X desktop environments attempt to clone Windows, and so it is possible to run applications which have Windows-like UIs on these without it feeling too wrong.

    --
    I am TheRaven on Soylent News
  6. Re:As a Windows programmer.. by Paradox · · Score: 4, Insightful
    Look, it's one thing to say "I had a bad experience with XCode." It's another to say, "XCode is the worst thing ever." I can't even find words to describe how juvenille calling an IDE "stupid" is in this context.
    When you just want to build a damn executable it has you messing with build targets and all sorts of garbage that I will never care about.
    Umm, it starts out working with sane defaults. In practice, I almost never need to mess with those settings until the very last steps of my application. Not the beginning. The only thing you might mess with in there is what libraries you link, but that's the wrong place to add them.
    Sorry, but I liked my old way of working - you know, where I was productive and didn't have to learn the quirks of your stupid IDE.
    You're advocating Eclipse and claim you don't have time to learn the quirks of a "stupid IDE"? Gee, that's the pot calling the kettle black, don't you think? Eclipse is one of the single most... erhem... "feature rich" products I've ever seen. Learning it is more of a chore than learning emacs, and that's saying something.
    If I was ONLY developing for the Mac I might take the time to learn it.. but I'm not, so I will never waste my time on it.
    XCode is-say it with me now-a OS X Application Development Environment. If you're expecting it to be something else, prepare to have those expectations failed. It can do a lot, and it's a complete, lightweight IDE with a very natural way of organizing OS X projects and integrating with IB.
    ... AND I still get command-line compilation if I don't feel like using an IDE that day.
    You never lose it using XCode. xcodemake has always been there.

    It sounds like you had unreasonable expectations for XCode, and they weren't met. And now you think it's the tool's fault for being nothing more than what it is.

    --
    Slashdot. It's Not For Common Sense
  7. Re:Cocoa is the way to go by commodoresloat · · Score: 2, Insightful
    (Note that the HIG is not always 100% accurate .. there are places where you should deviate from it slightly in order to match what Apple's apps do.)

    An important example of such deviation is Apple's use of tabbed browsing in Safari. And now I'd like to take this opportunity to remind slashdotters that tabbed browsing was something I predicted years ago, but was slapped down by others who said that tabs would never happen in Safari because they violated Apple's HIGs. I was modded down for my premonition, but I would like to point out that I was right all along! Now give me my mod points!!

    (Is there a +1, smug?)

  8. Re:relative age (was Re:If you love .net) by WillAdams · · Score: 2, Insightful

    Cocoa, nee Rhapsody, nee Yellow Box, nee OPENSTEP is _not_ part of the ``Unix foundation'' of Mac OS X --- one can see what OS X's Unix has matured to in Darwin, and Cocoa ain't there (which brings up an interesting question of how nice an environment would Darwin and GNUstep be).

    NeXT used to charge a _lot_ more for their Dev tools for a while (they started out as free, then were an optional install, then were ~$4,995 and now are free again). The price change tracks pretty closely whether or no the company expects to make money on hardware --- since it's not feasible for Microsoft to bundle Visual Studio w/ an IntelliExplorer mouse and expect it to be used, they don't.

    William

    --
    Sphinx of black quartz, judge my vow.