Hi,
There are a few limitation to Blueprints, more like things to consider. First, no visual scripting method can be as efficient as coding. In fact, Blueprints are kinda pieces of C++ code (not literally) and when you compile, it gets translated to C++. Keep in mind that not all C++ functions are exposed to Blueprints and if your are working on bigger projects things can get messy quite fast. Fortunately there are a few built in tools to help you control the chaos, but you will realize that some complex tasks are just easier to code. It is cool to have some features provided for level designers to implement simple things, but making a serious game should be handled in C++.
Regarding your question, yes, you can edit code that you made in Blueprints, you can even make your own Blueprint node (that is some really cool stuff)
Anyway, here is a link to get you started:
https://docs.unrealengine.com/latest/INT/Engine/Blueprints/index.html