Вообще обработка клавиш - вещь сугубо индивидуальная, как зубная щетка.
Можете написать свою процедуру и считать ее лучшей в мире. Во всяком случае, многие так и делают.
В приведенной клаве мне, например, не понравилось, что отсутствует развязка диодами выходов.
Если одновременно нажать 2 кнопки, на одной линии 1, на другой 0 - через кнопки их можно закоротить.
Чтобы сэкономить на диодах лично я, например, перевожу все линии, кроме одной, в состоянии высокого импеданса.


