How To use Visual Studio Code to write blender python script integrated with blender?
For Blender 2.8 Jacques Lucke started working on a new VS Code extension that offers the best integration I found so far between VS Code and Blender. You can find it on GitHub.

You can already create, start and debug Python scripts and addons from VS Code with it. Auto-complete is at the point of this writing missing but planned for the future.

Here is a nice video explaining the setup and how to work with it:

https://youtu.be/q06-hER7Y1Q