Here goes my 2 ct:
Having a service account to run sql-server is a good idea. Allowing any domain account creating databases, tables, views... up to the point that the domain account OWNS the objects created is imho confusing and, in my experience, breaks up later development and maintenance. So _I_'d call it bad practice.
DBAs generally tend to run SQL Server service using a domain administrator account. That is asking for trouble. A malicious SQL Server user could take advantage of these domain admin privileges. Most of the times, a local administrator account would be more than enough for SQL Server service.