How is a simple push button implemented in professional grade electronics
First of all, bear in mind that all the approaches you cite are valid, it all depends on a lot of variables such as cost, space, already validated solutions, and so on.

To get to your questions:


I assume anti ghosting is some sort of feature that avoids registering double strokes, when the user only did a single stroke. But what is a double stroke? There is a time limit below which you say that the double stroke is invalid, e.g. 100 ms -> this is done in software.
yes, keys are organized in a matrix to save IOs. Keyboard controllers are IO limited, i.e. the silicon itself can be very small, but you need the IOs, so the full solution will be big (silicon + package). Matrix means less IO means less space means more money for your company
there are keyboard controllers with USB connection on one side, and 10x10 or 10x12 matrix on the other side, they take care of everything
best practice depends on what is best for your case, rising or falling edge depends if you want an action to happen on keypress, or key release. Interrupts is usually the way to go, but polling is acceptable in many cases too... Again, it all depends.