ورود به حساب ثبت نام جدید فراموشی کلمه عبور
برای ورود به حساب کاربری خود، نام کاربری و کلمه عبورتان را در زیر وارد کرده و روی “ ورود به حساب” کلیک کنید.





اگر فرم ثبت نام برای شما نمایش داده نمیشود، اینجا را کلیک کنید.









اگر فرم بازیابی کلمه عبور برای شما نمایش داده نمیشود، اینجا را کلیک کنید.





نمایش نتایج: از 1 به 2 از 2
  1. #1
    adminmsp
    مدیر کل و موسس سایت
    تاریخ عضویت
    1970 Jan
    محل سکونت
    M.S.P Soft
    نوشته ها
    1,589
    759
    432

    کدامیک از Framework های PHP را برگزینیم؟

    فریم ورک های بسیار زیادی برای PHP نوشته شده است که هر کدام ویژگی‏ها و امکانات خاص خودشان را دارد. برای برگزیدن یکی از آنها، نیاز به بررسی همه و آشنایی نسبی با آنها دارد. در این نوشته پنج Framework مشهور را برگزیده و بررسی شده است. این بررسی می‏خواهد یک Overview کلی از هر کدام را نشان دهد تا برای دیگران، انتخاب آسان‏تر شود.


    طبیعتا Zend Framework سرشناس‏ترین و بالاترین گزینه ما است؛ چون که Zend، شرکتی که پشت PHP است آن را طراحی و تولید کرده است. این Framework امکانات زیادی داشته و بسیار قدرتمند است و هر آن چه که برای تولید یک پروژه بزرگ لازم داشته باشید در خود دارد. License آن هم BSD است که به شدت انعطاف پذیر بوده و شرط می‏کند که در صورت توسعه آن باید کد تولید شده کاملا انعطاف پذیر باشد.

    همچنین این Framework از PHP 4 پشتیبانی نمی‏کند و تنها در PHP 5 اجرا می‏شود. با توجه به تلاشهای زیاد اخیر برای ارتقاء به PHP 5 در سرورها شاید این مسئله کمتر به چشم بیاید ولی به هر روی ناهماهنگی با یکی از گسترده‏ترین نسخه‏های PHP در این Framework به چشم می‏خورد.

    این Framework و کامپوننت‏های فراوان آن برای پروژه‏های خیلی خیلی بزرگ مناسب است ولی برای خیلی از پروژه‏ها چیزهایی را ارائه می‏کند که خیلی بیشتر از نیاز آنها است و همچنین به طور نسبی از پیچیدگی‏هایی برخوردار است. خیلی از چیزهایی که Zend Framework داره، خیلی کم کاربرد است. در هر حال، گزینه برگزیده من Zend Framework نیست. به باور من Zend Framework خیلی خوش دست نیست و یاد گرفتن آن زمان زیادتری می‏برد و زمان زیادی لازم هست تا بفهمید دقیقا چگونه کار می‏کند. این پیچیدگی مخصوصا اگر بخواهید با یک تیم کار کنید، سبب می‏شود تا زمان زیادی برای آموزش تیم از بین برود. همچنین این Framework شما را به پیروی از MVC اجبار نمی‏کند. این مساله اگر چه از یک سو سبب انعطاف‏پذیری می‏شود ولی از سوی دیگر هم ممکن است کار شما را غیر استاندارد کند.

    (یکی از مزایای Zend این است که شما فقط از کتابخانه های مورد نیازتان استفاده می کنید و این امر برنامه ها را سبک تر می کند)

    بد نیست بدانید که در بین سایتهای ایرانی، سایت مشهور کلوب با کمک Zend Framework درست شده است.


    یکی از مشهورترین و محبوب‏ترین Frameworkها و یکی از بهترین برابرهای Rails در PHP به شمار می‏آید. از MVC کامل پشتیبانی می‏کند. کاربران خیلی زیاد و فعالی دارد که ویژگی مهمی به حساب می‏آید. اگر چه من اصلا از Mambo خوشم نمی‏آید ولی این CMS محبوب Mambo هم قرار است در نسخه‏های آینده از CakePHP استفاده کند.
    اما این سیستم دو تا اشکال کوچک هم دارد. یکی این که بیش از اندازه کند است (برای خواندن گزارش یک Benchmark خوب بین CakePHP، Zend Framework و CodeIgniter اینجا را ببینید). این مساله در صورتی که هزینه سرور برای شما اهمیت داشته باشد، خودش را بیشتر نشان می‏دهد. دوم این که اسامی کلاسهایی CakePHP خیلی عمومی طراحی شده است. برای نمونه کلاس Database که اگر شما هم کلاس مشابهی داشته باشید، سبب ایجاد ناهماهنگی در کد شما می‏شود و به طور کلی چنین اسم‏گذاری و به کار نگرفتن پیشوند مناسب مانند Cake سبب بدبینی نسبی من به طراحی این سیستم شده است.
    همچنین ORMی که در CakePHP طراحی شده است، توارث را پشتیبانی نمی‏کند و به باور من چندان استاندارد نیست. (با Hackهایی می‏توان مشکل توارث ORM در CakePHP حل کرد. در این باره رک: Kelnishi.com)

    ولی به طور کلی نصب CakePHP خیلی ساده است و راه انداختن اولیه سایت باهاش کار ساده و آسانی است. بر خلاف Zend Framework که نمی‏دانستید از کجا باید آغاز کنید، در CakePHP خیلی سریع می‏توانید یک سایت ساده راه بیاندازید. ولی انجام کارهای پیشرفته‏تر به دلیل نبودن مستندات کافی و راهنماهای مناسب کمی با CakePHP دشوار است. در هر حال گزینه انتخابی من CakePHP هم نیست.



    از همه گزینه‏های دیگر متفاوت است. بر پایه MVC درست نشده است. طراح Prado این کار را برای پروژه دکترایش انجام داده است و در طراحی آن Delphi را مد نظر داشته و تلاش کرده تا یک Framework کاملا Object Oriented و Event Driven درست کند. اگر با ASP.NET کار کرده باشید، Prado را خیلی مشابه با آن خواهید یافت. در Prado همه چیز حتی یک Label و Button هم Object است که Propertyها و Eventهای خاص خودش را دارد. همچنین زبانی شبیه به HTML برای طراحی ظاهر صفحات دارد (دقیقا شبیه به ASP.NET و Tagهای asp: این زبان)
    من اگر چه ASP.NET را دوست دارم و باهاش کار هم می‏کنم و اگر چه فکر می‏کنم Prado سیستم خیلی قشنگ و تمیزی است ولی Prado هم گزینه برگزیده من نیست؛ چون پشتیبانی یک سیستم از MVC برایم اهمیت زیادی دارد.


    این Framework خیلی شبیه به CakePHP و از آن ساده‏‎تر و کوچکتر است و به همین خاطر هم از لحاظ سرعت از CakePHP خیلی بهتر است ولی خوب به همان اندازه هم امکانات کمتری دارد. این Framework شما را مجبور به پیروی کامل از MVC نمی‏کند، بنابراین برای یادگیری نوآموزان بهتر است. از Ajax هم مستقیما پشتیبانی نمی‏کند. ولی Code Igniter ویژگی‏های خوبی هم دارد. این Framework در PHP 4 هم کار می‏کند و از لحاظ سبک برنامه‏نویسی به سبک برنامه‏نویسی PHP 4 نزدیک است. به همین خاطر برای Port کردن کدهای قدیمی به یک Framework گزینه مناسبی است. همچنین دارای Community بزرگی است و کامپوننتها و مثالهای فراوانی برایش پیدا می‏شود. این Framework هم همانند CakePHP گزینش من نیست.


    این Framework امکانات بسیار زیادی دارد و ماژول‏های جداگانه را برای انجام کارهای خودش به کار می‏گیرد: مانند DB Layer که با امکانات زیاد خودش واقعا لایه بانک اطلاعاتی شما را به بهترین شکل پشتیبانی می‏کند و امکان نوشتن برنامه مستقل از بانک اطلاعاتی را به شما می‏دهد. (اگر چه این ویژگی در Frameworkهای دیگر هم هست).
    برای انجام پروژه‏های بزرگ symfony به خاطر امکانات زیادش، گزینه خیلی خوبی است ولی با این حال، پیچیدگی‏های Zend Framework را هم ندارد. این Framework هم تنها بر روی PHP 5 کار می‏کند. License آن هم MIT است که License خوب و انعطاف‏پذیری به حساب می‏آید. همچنین این Framework به خوبی AJAX را پشتیبانی می‏کند و امکاناتی برای ساختن صفحات Admin سایت دارد که کار طراحی بخش مدیریتی سایت را خیلی آسان می‏کند.

    سیمفونی از ORM مشهوری به نام Propel بهره می‏گیرد که به باور من سیستم بسیار قدرتمندی است. اگر چه در CakePHP هم ORM هست ولی در آن جا از یک سیستم داخلی استفاده شده است. به کار گیری یک ORM بیرونی سبب افزایش سرعت توسعه سیمفونی شده است؛ چون که Propel سیستم خیلی مشهوری بوده و به طور عادی خودش در حال توسعه هست. این مساله همچنین هوشمندی طراحان سیمفونی را نشان می‏دهد.

    خوب حدس زدنش سخت نیست. Framework برگزیده من symfony است. طراحی دقیق و محکم، سرعت مناسب، امکانات خیلی زیاد، مستندات و Community بزرگ آن، وجود ویژگی Admin Generator و سیستم کنترل دسترسی که سبب می‏شود من بتوانم در زمان طراحی صفحات سایت به مسائل مهمتر و افزودن ویژگی‏های اصلی بپردازم، از دلایل این گزینش من است.
    با M.S.P Soft به دنياي برنامه نويسي وارد شويد[برای نمایش لینک باید عضو شوید. ]
  2. 1
  3. #2
    loveload
    كاربر عادي
    تاریخ عضویت
    2013 Mar
    نوشته ها
    1
    4
    1
    فوق العاده بود ...


    استاد من میگفت استفاده از کیک پی اچ پی بین همه اینها بهتر است ... ولی با تفسیری که اینجا گفته شده سیمفونی بهترینه ...

    چیزی که من درک کردم :

    1. سمفونی ( قدرت , سرعت و ... )
    2. کیک پی اپ پی
    3. زن فریم ورک
    4. کد ایگنیتور


    بهترین ها است ...
  4. 1
نمایش نتایج: از 1 به 2 از 2

اطلاعات موضوع

کاربرانی که در حال مشاهده این موضوع هستند

در حال حاضر 1 کاربر در حال مشاهده این موضوع است. (0 کاربران و 1 مهمان ها)

موضوعات مشابه

  1. پروژه ی ماکزیمم 3 عدد
    توسط reza.mahmodi71 در انجمن #C
    پاسخ: 0
    آخرين نوشته: 2012-11-07, 05:23 PM
  2. پروژه ی ماکزیمم دو عدد
    توسط reza.mahmodi71 در انجمن #C
    پاسخ: 0
    آخرين نوشته: 2012-11-06, 08:21 PM
  3. Framework چیست و چگونه كار ميكند
    توسط MspSoft در انجمن JavaScript و Framework های مبتنی بر آن
    پاسخ: 0
    آخرين نوشته: 2012-02-02, 02:07 PM
  4. ارسال mail از طریق Zend Framework
    توسط MspSoft در انجمن Zend Framework
    پاسخ: 0
    آخرين نوشته: 2012-02-02, 01:39 PM
  5. کم هزینه ترین الگوریتم محاسبه توان
    توسط sina در انجمن الگوریتم، کامپایلر، هوش مصنوعی و ساختمان داده ها
    پاسخ: 0
    آخرين نوشته: 2012-01-14, 02:15 PM

کلمات کلیدی این موضوع

مجوز های ارسال و ویرایش

  • شما نمیتوانید موضوع جدیدی ارسال کنید
  • شما امکان ارسال پاسخ را ندارید
  • شما نمیتوانید فایل پیوست کنید.
  • شما نمیتوانید پست های خود را ویرایش کنید
  •  

Content Relevant URLs by vBSEO 3.6.0 RC 2