> Majority of the methods in TC are like this i.e. returns object or null.
I would say that majority of methods in TC return either valid object if search succeeds/object exists or empty stub object with the only .Exists property available and set to False if search fails or object does not exist/was destroyed in the application.
Null is almost never returned by 'native' TestComplete methods. Methods like .FindChildByXPath() may return null, but these methods are rather just a wrappers around XPath search engine than 'native' TestComplete methods.