On my Ubuntu system (20.04) the software is in nearly every case later than on my equivalent Debian (bullseye/11 testing/sid) system (there are a few where they are exactly equal, I'm not aware of any where debian is later but it's possible and it's usually only by hours or day or two unless Ubuntu is in a freeze state).
In your text, you're comparing a 2018-April release of Ubuntu to a Debian release of 2019-July ? Those releases are more than a year apart - so why do you expect the older Ubuntu release to have versions that weren't yet released in 2018-April.
Ubuntu backports security fixes; and only updates to later versions of software IF the backporting of security fixes is more work that just upgrading software versions (testing etc). That is not unique to Ubuntu. If you want the latest, you could use a later release (eg. Ubuntu 19.10 being the 2019-October release).
Package versions have NOTHING to do with the software contained within. Package versions are maintained to allow upgrades; and release-upgrades to the next release - THUS they need to increment even if software contained within is identical as you move from one release to the next using release-upgrade process, minor packaging or text file changes which is not part of upstream's code. It's a wrong assumption to assume package version relates to software within (despite sometimes they are equivalent; those are only "lucky' co-incidences as they are really something different). This statement applies both to Debian and Ubuntu.
For looking up software version, I'd suggest packages.ubuntu.com (eg. https://packages.ubuntu.com/search?suite=all&searchon=names&keywords=emacs for details of emacs). You can also explore via your terminal providing your software package lists are up-to-date and you are using a current mirror (a number of people don't check their mirrors in my experience)