▁from ▁the ▁existing ▁base ▁class ▁( NS Object ▁/ ▁OF Object ). ▁Object ive - C ▁allows ▁for ▁the ▁declaration ▁of ▁new ▁root ▁classes ▁that ▁do ▁not ▁inherit ▁any ▁existing ▁functionality . ▁Origin ally , ▁Object ive - C - based ▁programming ▁environments ▁typically ▁offered ▁an ▁Object ▁class ▁as ▁the ▁base ▁class ▁from ▁which ▁almost ▁all ▁other ▁classes ▁inherited . ▁With ▁the ▁introduction ▁of ▁Open Step , ▁Ne XT ▁created ▁a ▁new ▁base ▁class ▁named ▁NS Object , ▁which ▁offered ▁additional ▁features ▁over ▁Object ▁( an ▁emphas is ▁on ▁using ▁object ▁references ▁and ▁reference ▁counting ▁instead ▁of ▁raw ▁pointers , ▁for ▁example ). ▁Al most ▁all ▁classes ▁in ▁C ocoa ▁inherit ▁from ▁NS Object . ▁ ▁Not ▁only ▁did ▁the ▁ren aming ▁serve ▁to ▁differenti ate ▁the ▁new ▁default ▁behavior ▁of ▁classes ▁within ▁the ▁Open Step ▁API , ▁but ▁it ▁allowed ▁code ▁that ▁used ▁Object — the ▁original ▁base ▁class ▁used ▁on ▁Ne XT ST EP ▁( and , ▁more ▁or ▁less , ▁other ▁Object ive - C ▁class ▁libraries ) — to ▁co - exist ▁in ▁the ▁same ▁runtime ▁with ▁code ▁that ▁used ▁NS Object ▁( with ▁some ▁limitations ). ▁The ▁introduction ▁of ▁the ▁two ▁letter ▁prefix ▁also ▁became ▁a ▁simpl istic ▁form ▁of ▁names paces , ▁which ▁Object ive - C ▁la cks . ▁Using ▁a ▁prefix ▁to ▁create ▁an ▁inform al ▁pack aging ▁identifier ▁became ▁an ▁inform al ▁coding ▁standard ▁in ▁the ▁Object ive - C ▁community , ▁and ▁continues ▁to ▁this ▁day . ▁ ▁More ▁recently , ▁package ▁man