The difference between DirectX and D3DX

There has always been a difference between Direct3D and D3DX, but it has always been quite blurry. D3DX has been deprecated since the Windows 8 SDK and can be considered as an extension pack for DirectX.

The main replacement libraries for D3DX are DirectXTK, DirectXTex, and DirectXMesh. These all support Direct3D 11. x. platforms, including Windows 8.0, Windows 8.1, Windows phone 8. x, Xbox, and Windows Vista, Windows 7, and Windows 8 X.

Like many D3DX functions, D3DX11Create ShaderResourceViewFromFile is a one-time tool. However, the speed is not clear.

There are two different options to replace this function: DDSTextureLoader and WICTextureLoader. These belong to the DirectXTK DirectXTex package with "independent" versions.

DDSTextureLoader is a very lightweight DDS file loader. Very effective, but does not perform runtime conversion or adjustment - this means that if it is really an old Direct3D 9 DDS and 24 bpp format data file, for example, it cannot be loaded and must be converted to modern format
Is WICTextureLoader a "heavyweight" standard image file loader that supports BMP, JPG, PNG, TIF, and GIF every month. It can only load 2D textures, and you can try using GPU's automatic generation if it supports the given format. It can overcome the limitations of image scaling functionality at runtime. Ideally, you would use files created using DDS during construction, but WICTextureLoader is useful. In this case, you cannot pre convert an image file from DDS
Pay attention to using Direct3D 10 D3DX10, it is recommended to learn Direct3D 11. x.