لطفا تفاوت های برنامه نویسی ساخت یافته و شی گرا (Object Oriented) را بیان کنید؟ و اینکه کدام شیوه بهتر است؟