update view class (factory method)