Currently I am using PSTricks. From this forum, I see many people using TikZ. I have done a little exploration that TikZ can produce vector images in PDF format only in one step using pdftex.
To produce the same vector images in PDF, PSTrick must be compiled in 3 steps, i.e., latex -> dvips -> ps2pdf.
According to The current state of the PSTrick project:
TeX as a typesetting machine cannot make full use of the possibilities of PostScript. There cannot be a direct interaction between TeX and PostScript; it is more of a one way communication from TeX to PostScript. The interface between these two systems is the DVI converter dvips which converts the DVI output of TeX into the PostScript format. Here we use DVI output only as an intermediate format; it is not really of interest. On the TeX side the user has to reserve some space (a box) which is filled on the PostScript side with a graphic or some text. If this space is not reserved the everything will be printed over the text, depending on the current point before the PostScript-related code. This PostScript code must be transferred from TeX via the DVI output with the macro \special. Its contents are ignored by TeX and passed to PostScript where it will be executed by a PostScript interpreter such as GhostScript or Distiller.
From the quote, PSTricks need an intermediate phase,i.e., using DVI output. Shortly speaking, this intermediate output forces PSTrick to be compiled using 3 steps.
If Tikz using the same internal mechanism as PSTrick does, why TikZ can be compiled in 1 step?