Я свои 5 копеек внесу, отвечать не надо:
Goto говно не используйте его
Много ifов вообще говно так нельзя
Свитч полное говно - это говнокод....
По поводу внешней библиотеки.
Библиотека имеет версию. Соответственно определенный набор возвращаемых значений.
Вы пишете поддержку этой либы соответственно поддерживаете корректную версию.
Если версия не совпадает должны либо послать нахуй и сказать что-то в вашем королевстве не так, установите правильную библиотеку и запустите систему заново, либо пытаетесь работать и соответственно в коде должно быть что-то что проверяет знаете вы это или не знаете и если знаете работаете, если нет пишете в журнал: начальник тут хуйня какая-то прилетела на вход
Имхо все разговоры по раздувание кода отчасти правильное, а отчасти нет, потому что если вы завязываетесь на внешние библиотеки вы рано или поздно сядете дописывать, если в них что-то поменялось.
А клиентам сказать - мы поддерживаем вот такую версию, если нет то либо доработка, либо вы положите правильную версию библиотеки.
Я как-то писал обвязку поверх библиотеки, которая работала с блоком реле, которое управляется по modbus.
Ее пришлось писать, потому что блок реле имел изменённую библиотеку, в отличии от ранее приобретенного для другого клиента (несколько лет между этими событиями)
Так что всегда будут ситуации когда придется вновь садится и дописывать