Decentralized applications have a philosophy: they are immutable,secure and trustless applications. You can connect to Blockchain and be sure about that features.
Infura is a great tool when communicating with Blockchain. However, Infura has its own API which connects you to Blockchain or IPFS. So, as similar to a middle man, doesn't it break the philosophy of decentralization?