Simple it's called AMM (Automated Market Making) system, so anyone can findout more exchanges like uniswap as all of them are using the same script for website and different smart contract for swaps/trades. If any user try to trade on uniswap , than he/she must keep in mind about the current gas fee of ethereum blockchain as every trades/swaps will be confirm after the confirmation of that request on ethereum blockchain. So, it's expensive because of the high gas fee of ethereum blockchain.