SQL Server Data Tools(SSDT) have always had a process to extract your database. There are two types of extracts you can perform:
DACPAC – A binary file that contains the logical database schema and possibly the data. This file retains the platform version of the database (i.e. 2012, 2014, 2016).
BACPAC – A binary file that contains the logical database schema and the data as insert statements. This stores the platform version, but is not locked into it.
Mike also walks through SqlPackage.exe.