سلام
چند وقتیه خدمت مجال نمی ده در کنار برو بچس باشم

به نظر من OOP مستقیما برای بالا بردن امنیت نیست ، بلکه برای بالا بردن قدرت مانور ، سرعت توسعه ، افزایش خوانایی بوده ، جلوگیری از تکرار کد بوده.

وقتی شما اسکریپت های غیر OOP و OOP رو با هم مقایسه کنید در اولین نگاه متوجه می شید که گسترش برنامه های غیر OOP خیلی سخت تر از OOP است . اما در هر دو امکان وجود حفره های امنیتی هست ، پس نمی شه گفت لزوما استفاده از OOP به معنای بالا بردن امنیت است . وقتی یکم دقیق بشید روی اسکریپت های خیلی بزرگ که از OOP استفاده می کنند می بینید که چقدر قدرت گسترشش بالاست (در مقایسه با اسکریپت های غیر OOP) .
اما اینکه استفاده از Protect یا Privat باعث افزایش امنیت می شه یا نه !

بستگی به این داره که نگاه شما نسبت به امنیت چیه ! پروژه شما چه امنیتی نیاز داره ، واقعا عدم استفاده از Protect باعث ایجاد حفره امنیتی میشه ؟

به نظر من استفاده از Protect و ... مانند انجام دادن اعمال مستحبه ، توی این 40 .. 50 پروژه ای که انجام دادم هیچ وقت عدم استفاده از گذینه های بالا باعث ایجاد حفره امنیتی نشده و هیچ وقت هم نمی شه ، چرا که استفاده از این گذینه ها فقط برای راحتی کار برنامه نویس هست نه بالا بردن امنیت .

امنیت یعنی منطق برنامه نویسی شما !

به نظر من بهتره یکم به مسائل با نگاه باز تری نگاه کنید.

اگرم یه حرفیه که از روی تجربه بیان میشه میرسیم به اینکه توی طراحی OO امنیت مطرح نبوده .


این مواردی رو که گفتید رو بنده اطلاعی ندارم چون با php کار کردم. و می دونم در php اینگونه نیست. php هم به دلیل محدودیت هایی که در ram داره و ساختارش نمی تونه به معنای حقیقی OOP رو پیاده سازی کنه. ولی در حد نیاز برآورده کرده.
فکر نمی کنم .. مقاله یا یه مطلب رسمی برای اثباتش نیاز هست .