If you want a good, free Python-centric IDE, check out PyScripter. I have also seen people swear by Eclipse with PyDev.
If you want to use Visual Studio for developing with Python check out Python Tools for Visual Studio.
Of course, there are major differences between developing with C#/VB.NET and Python because the former are compiled, [mostly] statically-typed languages, while Python is an interpreted language with duck typing so there will be some limitations as to what can be done with things like automatic renaming/refactoring, Intellisense, etc.
I’ve found the solution of my main question with help of
this answer.
If you need to add some external library, first of all check where it is placed (if it is possible of course). I opened Python console in QGIS and inserted:
from processing.core import AlgorithmProvider
AlgorithmProvider.__file__
output:
'/usr/share/qgis/python/plugins/processing/core/AlgorithmProvider.py'
Since QGIS 3.0 AlgorithmProvider is not presented. That's why you can import any other module. For example:
from processing.core import Processing
Processing.__file__
output:
'/usr/share/qgis/python/plugins/processing/core/Processing.py'
So, like I already wrote, in my computer processing module located at /usr/share/qgis/python/plugins
In PyCharm: File → Settings → Project:… Project Interpreter
Click on button to show list of available interpreters. At the bottom click “Show All”. In new dialog window click last button like showed on image.
Then click “+” button and add new path to your external library. I added /usr/share/qgis/python/plugins
Thats all. Now new library is available in PyCharm.
P.S. If you know something about setting virtual environment, I am still interested in it.
Best Answer
There is a Help page entitled Importing ArcPy that explains this - I encourage you to visit that page which has more detail than I am quoting:
This answer to How to setup PyCharm to reference ArcPy? may also be helpful.