If the idea is to have a lot of customized hardware inside a single box, then slots are the way to go. But it does mean that third party companies have to build their cards specifically for a computer maker's board, and modify that every time it changes.
Actually, no. The computer industry as a whole has gone through an incredible amount of effort to standardize daughterboard connections, specifically to avoid expansion cards being tied to a single motherboard manufacturer. The current standard is
PCIe; the slot form of PCIe is found in pretty much all Windows PCs, as well as in the (pre-2013) Mac Pro. A variant of the PCIe standard can be found in some other Mac models as well, for supporting internal drives.
My understanding of expansion slot cards is that, until somewhat recently, they needed to be relatively close to the CPU to achieve certain bandwidth and speed, and Thunderbolt basically changed that.
Yes, to an extent; bandwidth and speed are throttled whenever you are forced to move data across a wire. Thunderbolt
is faster, and therefore involves less throttling; but it still is not anywhere near the amount of speed you can get from a direct connection between two PCBs.
Moreover, most of Apple's computing is done via MacBook, if sales figures are anything to go by, which means no expansion slots.
I think you could make a fairly decent argument that the MacBook is Apple's best seller
because Apple doesn't offer a conventional desktop computer (with expansion slots). If Apple ever does decide to compete in the desktop computer world, I think they could easily dominate the major manufacturers.
Now that's not nearly as neat and clean as stuffing all of those expansion devices into one box, but I don't see many manufacturers going back to that model now, unless there's a specific reason for doing so.
Er, say what???
If you go into any retail store that sells computers (other than Apple computers), or browse the website of any company that sells Windows PCs, the default product shown to you is that mini-tower box that can fit a motherboard, a couple of expansion cards, a couple of internal drives, and one or two front-facing drives. Sure, there are all-in-ones and micro-pcs available (just like the iMac and the Mini), but these are
niche products; the main product sold in the Windows world today is still a box into which you can stuff all your components. It takes up less space, it requires fewer cords, everything can run off a single power supply, and components can be added or removed as the user prefers.
For many people, this approach still makes a lot of sense.
[doublepost=1458877663][/doublepost]
First, make many compromises to fit everything into a small box, then enable (?) people to have what they want by connecting wires to a box as big and ugly as you like.
Well, heck, let's just take that all the way to the extreme: have Apple create a Mac Micro, which contains OSX (on a ROM or some such, the way they used to do in the old, old days), and let the user plug it into an external box that contains its own graphics card, drives, power supply, and CPU. In short, a full-fledged PC. If Apple can't be bothered to create a conventional desktop PC, but is willing to let you connect to external expansion cards (graphics cards and the like), I don't think this would be much more of a step...