Why AssetDatabase.LoadAssetAtPath does not trows exception?

why it does not trows exception if what is returned is null? i mean, i think it would be useful to tell me if the asset is not found, i wrote my own way of doing it, im a very noob girl to C# and Unity, have been learning for 1 year, i know i need a lot to learn and im sure the Unity engineers did it for a reason, but what do you guys think? im doing something bad? any idea to do this in a better way?

public static Object GetAssetAtPath(string path) 
    {
        StringBuilder sb = new StringBuilder();
        Object result = AssetDatabase.LoadAssetAtPath<Object>(path);

        if(result == null)
        {
            sb.AppendFormat("Asset not found at path : \"{0}\"", path);
            Debug.LogError(sb);
        }
        sb = null;
        return result;
    }

Checking for null like that is correct.

Buuuuuuuuut. read on.

AssetDatabase.LoadAssetAtPath cant be used at runtime…
don’t be tricked…

use:
Resources.Load

Alternative:
Look into assetbundles