Advantages and Disadvantages over TTL (Transistor-transistor Logic)
and CMOS logic chips.

Advantages:
As mentioned in "What is a microcontroller?", discrete chips put together with others
in a circuit has many disadvantages. Size, in my opinion, is the major disadvantage,
as, unless the circuit is to perform a very simple task, several chips must be used.
Power consumption is a close second. With portability an increasing need for
modern electronics, batteries are always used. One chip doesn't take much power,
but once you put a few together, it's suprising how fast the milliamps add up!
If you need to build more than one of these, all that circuitry becomes very time
consuming to construct. (Take it from one that knows lol! )
The microcontroller, on the other hand, requires a minimal amount of power,
about that of 1 TTL chip, depending on the loads it's driving. Also most have a
"sleep" mode, that shuts down almost all internal power consuming sections until
"woken up" by an external stimulus, ie pressing a button on a keypad.
All of the chips vital circuitry is of course internal, where as an "open" logic circuit
is exposed to damage by moisture, vibration, or a messy solder job, -much more.
The final advantage is construction simplicity. A PIC progect may require only one
input, and one output, a couple caps and resistors, and a 5 volt source!

Disadvantages:
The disadvantages are few, and depend on ones outlook on the whole proceedure
of developing a microcontroller project. The main disadvantage would be the
time it takes to become a proficient programmer. It is a learning experience,
learn as you go, so start with something simple.
A basic knowledge of how digital electronics works, ie binary, hexadecimal, and
logic in general, is necessary. Some electronics knowledge is a definate requirement.
Most of the electric properties of the chip are in the data sheet, but you don't need
to be an electronics engineer to figure it out.
BASIC programming experience would also be a help, as you are already
accustomed to how to interact with digital devices, and how they only know as
much as you tell them. This isn't a must though as, again the data books are
very explicit in describing what does what.
Using discrete logic chips on the other hand requires no programming knowledge
but still does require knowledge of binary and hex logic etc.
The final small disadvantage is changing the "circuit" ie the programming once in
the chip. Cheapo microcontrollers are one time write only (OTP) chips. Once your
program is in there it can't be changed in that chip again. The way around this is
to purchase a couple of erasable* chips of the same part number. This way you can
test and retest the chip, in circuit, to make sure it's doing what you want. Then
once you're confident it is, grab one of the cheapo OTP chips and load'er up.

*-erasable microcontrollers have a little window on them so they can be erased by
UV light ( ultraviolet ) and reused over and over. The same $5 chip would be about
$16 in erasable case. I use several, so I dont have to wait for them to erase before
I can reprogram them!