I would like to understand the difference between package and artifact.
Also In what context we should use these terms.
Mainly an artifact is the result of of a build phase, this mean a package is an artifact of a kind.
A package is usually a way to install a software or application, it includes the software itself and some intelligence to setup and configure the software.
Calling an artifact a package usually comes when the artifact (whatever it is, from a .deb to a simple zip file) contain more than just the application, it could be a simple script to help configuring the software and setting proper permissions or other softwares needed.
Also, the term "artifact package" refers to a logical package that can assemble artifacts created in a single build as well as multiple builds.