If you are looking to build a nice machine for all your programming related work, I can share my computer configuration which I am using for running almost any application smoothly.
- CPU: Intel i7 6700K
- RAM: 32GB, DDR4, 4000Mhz
- HDD: Samsung SSD 1TB
- Motherboard: MSI H270 Gaming M3
- Graphics: NVIDIA GeForce GTX 1060 6GB
If you are looking for a laptop, then I would recommend Legion Y740 (15 inches).
I am using this personally and works super smooth for all the applications listed in the Hardware and Software. The best part is the 144Hz screen refresh rate.
Think before buying a MacBook. MacBook certainly gives us the smoothest performance ever but most of the software for factory automation is not macOS compatible.
If you still want to use MacBook, then you need to install a virtual machine with Windows in it. This is the only way around