It provides several benefits like
Enforced Information Hiding : It offers the liberty to choose whether to keep data private or public
Top-down design : You can design the interface to the code hidden in the package before you actually implemented the modules themselves
Object persistence : Objects declared in a package specification behaves like a global data for all PL/SQL
objects in the application. You can modify the package in one module and then reference those changes to another module
Object oriented design : The package gives developers strong hold over how the modules and data structures inside the package can be used
Guaranteeing transaction integrity : It provides a level of transaction integrity
Performance improvement : The RDBMS automatically tracks the validity of all program objects stored in the database and enhance the performance of packages.