VISA has been the standard for instrument development for quite a few number of years. VISA is an API that sits above GPIB. It is a common interface that allows for a single driver to work with not just GPIB instruments, but also serial, VXI, PXI, USB, and Ethernet. While GPIB will be around for a while, these other interfaces are becoming more and more popular and many instruments are available with one or more of them. VISA also alows for portability since yo can use a GPIB board from another vendor as long as that board has a VISA driver.
If you are using integers for the addressing in your current app and don't want to convert all to VISA, then you have a couple of options. You could replace all of the VISA Read/Write functions in the driver with the traditional GPIB Reads/Writes. I've often done it the other way, but this way would work just as well. Another option I can think of is to use a VISA alias. VISA allows you to assign an alias to an instrument. Instead of referring to GPIB0::5:INSTR, you can assign it the alias of "DMM" for example and not have to try and remember the actual address number. You can assign it the alias "8" and just before passing the number to the driver, convert it to a string. The VISA Resource Name input will accept strings as inputs.