قسمت اول آموزش فریمورک ZEND
به طور کلی وقتی می خواهیم از یک
فریمورک استفاده کنیم باید از خودمون این سوال رو بپرسیم که هر فریمورک چه مزایا و معایبی داره و همچنین چه مقدار باید زمان روی اون بزاریم تا به
موثرترین روش از اون بهره بگیریم.
باید توجه داشته باشیم که اساس ZEND بر پایه PHP می باشد, البته شاید با شنیدن نام این پلتفرم حس بدی یا خوبی به شما دست بده اما باید بدونیم این یک پلتفرمی هست که نباید به آسانی از اون بگذریم چند دلیل عمده این مطلب اینه که خب PHP در سطح گسترده ای استفاده می شود و بسیار هزینه های میزبانی پایینی دارد همچنین منابع مختلف و بسیاری در سطح وب برای اون وجود داره و این قابلیت رو داره از پروژه های کوچک تا بزرگ از اون استفاده می شود.
خب از اونجایی که PHP یک زبان زنده و خوب هستش ما قصد داریم یک روش کار با PHP که کد های خوبی از آب درمیاره با امکانات زیاد و الگو های پیشرفته و همچنین ایجاد امکان استفاده از
اسکریپت نویسی و شئ گرایی PHP را به شما معرفی کنیم.
اما ZEND دقیقا چه چیزی هست؟
ZEND یک فریمورک بر پایه PHP بوده که همونطور که می دونید PHP یک زبان شئ گراست پس طبیعتاً این فریمورک بر همین پایه هست.
امروزه تقریباً تمام فریمورک ها نیاز به داشتن عملکردی بر پایه MVC هستند که مخفف (Model,View Controller) می باشد و این فریمورک این قابلیت را دارا می باشد همچنین مفهوم loose coupling به معنای وابستگی اجزا و کامپوننت ها به یکدیگر نیز رعایت شده و ویژگی پلاگ اند پلی به خوبی در اون کاربرد دارد و در نهایت ویژگی های پیشرفته ای نظیر ایجاد جداول رابطه ای در دیتابیس، ارسال نوتیفیکیشن و ایمیل، قابل تست بودن و... .
با این تفاسیر ZEND هر کاری برای همه انجام نمیده و چالش های خودش رو هم داره.
چون این فریمورکMVC full stack بوده سنگین می باشد و به طور مثال برای ساختن یک صفحه وب مناسب نمی باشد.
از اونجایی که در ZEND کدنویسی به صورت مرتب و منظم هست، برنامه نویس ها نیاز دارند زمانی را صرف کنند تا به منطق این فریمورک برسند و با روش اون کد نویسی رو انجام دهند البته این یک ویژگی خوب بوده که ممکنه برای بعضی ها که به دنبال سریع نتیجه گرفتن هستن کمی نا مناسب باشه.
شاید جالب باشه برای افرادی مانند مدیر ارشد فناوری اطلاعات و حتی رده های بالاتر مدیریتی یک سازمان که موارد کاربرد ZEND رو بدونن:
در ابتدا باید از خودمون این سوال رو بپرسیم که چه نوع سازمان و منابعی در حال حاضر در اختیار داریم.
اگر
سازمان دارای یک برنامه بر پایه PHP می باشد ZEND توانایی این رو داره که کد های شما رو پایدار کنه و برای برنامه نویسان امکانات بسیاری رو فراهم کنه.
اگر سازمان شما در حال توسعه و حرکت سریعی می باشد و منابع PHP راحت در اختیار شما بوده و بسیاری ZEND را می شناسن، بکار بردن این فریمورک زمان محدودی نیاز داشته و نسبت به پلتفرم هایی مثل java و net. زمان کمتری خواهد برد.
حتی اگر از سایر پلتفرم ها استفاده می کنید می توانید برنامه های دیگری با ZEND گسترش دهید.
اما سرعت ZEND در مقایسه با سایر برنامه ها چگونه می باشد؟
در این رابطه ZEND در میانه راه قرار دارد یعنی نسبت به برنامه هایی که با PHP نوشته می شوند(plain PHP) که با وجود اینکه سریع توسعه داده می شوند اما به همون اندازه بعد از مدتی اختصاصی شده و قابلیت تغییر رو از دست می دهند در این مقایسه ZEND از وابستگی کمتری استفاده می کنه و
استاندارد های بهتری ارائه می دهد و به همون اندازه می تونه سریعتر باشه اما سرعت فریمورک هایی مثل Yii یا django پایتون رو نداره.
در مجموع:
- ZEND یک فریمورک
قدرتمند بوده که در بسیار از شرکت ها و سازمان ها استفاده می شود.
- برنامه نویسان و انجمن های بسیاری که در این رابطه فعالیت دارند وجود دارد.
- منابع و Plugin های این فریمورک به راحتی در دسترس عموم قرار دارد.
-شما در دنیای
open source هستید و از لحاظ پشتیبانی حرفه ای مشکلی نخواهید داشت.