Well, historically they were one and the same: for the OS and for development. However with that setup, problems arise if the developer wants / needs to use libraries or frameworks that conflict with what the OS needs or offers.
Part of the reason that containers have become so popular / useful is isolation of the OS and "infrastructure" from the development or production space.