به نظر من مقایسه Play Framework با Java EE باید در چهار قسمت مقایسه انجام داد:
-
معماری
-
ابزار ها و سبک توسعه
-
ابزار ها و کتابخانه های سمت back-end
-
ابزار ها و کتابخانه های سمت front-end
معماری: در بحث معماری مواردی مثل مقیاس پذیری، performance و ... اهمیت دارد که در این سوال به آن پرداخته شده است.
ابزار ها و سبک توسعه: در بعضی از موارد مثل قابلیت Hot reloading و سادگی، Play Framework امکانات خوبی داره و در مواردی مثل ابزار های Build، IDE و ... Java EE برتری داره.
ابزار ها و کتابخانه های سمت back-end: تقریبا اکثر استاندارد ها و مفاهیم سمت back-end در Java EE در Play Framework هم قابل استفاده هستند. استاندارهایی مثل JPA، مفاهیم DataSource یا Dependency Injection و ... در مبحث سیستم های توزیع شده Play Framework با Akka یکپارچه است و در Java EE از EJB استفاده می شود.
ابزار ها و کتابخانه های سمت front-end: در این قسمت برتری Play Framework به stateless بودنش در این لایه است در حالی که استاندارد servlet بلعکس statefull است که در مباحث scalability و load balancing برای Play Framework برتری ایجاد می کند. در بحث رابط کاربری، Play Framework بهمراه خود Template Engine Twirl را دارد که بسیار قدرتمند است ولی چون توسعه آن با زبان اسکالا است کمی پیچیده است و سایر موارد در رابط کاربری را به استاندارد های موجود در دنیای جاوااسکریپت و CSS سپرده است. اما در Java EE علاوه بر Template Engine های متنوع، استاندارد های Component Base مثل JSF برای تولید رابط کاربری وجود دارد.
در کل مقایسه یک فریم ورک با یک استاندارد بزرگ خیلی سخت است ولی می توانم بگویم Play Framework برای شما Agile بودن و سبکی را بهمراه دارد ولی Java EE برای شما مجموعه از ابزار ها و استاندارد های قدرتمند و بالغ و کمی کندی و تاخیر نسبت به تغییرات را بهمراه دارد و نکته دیگر اینکه شما باید برای یک مقایسه خوب ابتدا نیازمندی های معماری و عملیاتی خود را مشخص کنید تا در آن موارد مقایسه صورت بگیرد. معمولا مقایسه های کلی سود چندانی ندارند.