Is dreamweaver for professional developers or people who have very little knowledge of programming?

Both. Dreamweaver is used by professionals as a text editor that can improve speed, accuracy and efficiency. For a beginner, Dreamweaver is a for that and also a great learning tool.

Dreamweaver is great for beginners as it allows you to edit HTML visually and see the HTML source - teaching you HTML. More experienced developers prefer editing HTML directly since Dreamweaver does not produce HTML that is reusable or 'modular'. To do this you need to give IDs and Classes to the HTML and style them externally, so they can be used in multiple places but use different styling.

I don't know how much Dreamweaver has changed since I used it 10 or so years ago. So I can't say how it compares to other code editors like Netbeans or Eclipse based ones like Aptana, or Zend Stuio. Basically it depends on what you consider a good editor. I usually go for good FTP, SVN, Git support. Good code understanding, such as code hinting, outlining classes, functions, linking to class/function declarations etc. Having good debugging support, such as with XDebug or Zend Debugger etc. Most good editors will support these.