In the 16F877A, for setting ADC channels as digital/analogue in 16F877A, you use the ADCON1 register. In many other microcontrollers in the 16F series, there are other registers specifically for this: ANSEL and ANSELH (check 16F887, 16F690, etc).
The 16F877A does not have ECCP module that is available in many other microcontrollers in the 16F series like 16F887 and 16F690.
16F877A does not have internal oscillator, while others like 16F690 do.
So, there are differences. Just using 16F877A won't cover everything. But it has most of the stuff.
Hope this helps.
Tahmid.