top | item 44019519

(no title)

lwouis | 9 months ago

I've been developing a fairly popular macOS app for years. I consider myself in the community for that reason.

Apple has bundled everything together in a big mess.

- Only certain macOS versions can run certain XCode versions

- Only certain XCode versions contain certain SDK versions

- XCode embeds "Command line tools" which contains things like gcc, ruby, python, installed as a package, and conflicting with other versions on the machine

- Interface Builder is built into XCode and has its own compatibility story

It's a big messy blob and you can't pick-and-choose parts. You have to update your whole machine to move to the latest OS so they will let you run the latest XCode, so your app can compile on the latest platform for your users. It's not the best experience for sure. Many ecosystems have SDKs that you can download as you wish. I don't need to update my OS to download a version of the JDK for example.

That being all said, if you require users to download XCode, regardless of which part of it is necessary, i don't think you should mention "XCode free experience" or "XCode replacement".

I'm already developing a macOS app without launching the XCode GUI. I use the xcodebuild CLI that ships with XCode. My IDE is AppCode. I also use xcodebuild on CI to build the app headless. I would never call that a XCode free experience though, as i suffer from all the issues i mentionned above with version upgrades and XCode issues

discuss

order

No comments yet.