السلام عليكم،

من المعلوم في جافا أن هناك حلول كثيرة متشابهة لكل نوع من المشاريع، وقد يرد على المبرمج صعوبة الاختيار بين هذه الحلول لتقاربها، فماذا تختار لكلٍّ من أنواع المشاريع الآتية:

تطبيقات مكتبية: واجهات AWT، Swing,SWT (JFace), JavaFX

اطار تطوير مواقع: Spring, Grails, Play, JSF

إذا اخترت JSF فماذا أضفت: Primefaces, RichFaces, ICEFaces, OpenFaces, ADF أو غير ذلك

كيف اتصلت بقاعدة البيانات: JDBC, Hibernate, ORMLite...

كيف ترتب - حسب الأهمية- المعايير التي تقوم على أساسها بالاختيار، مثال:

1- مفتوح المصدر ومجاني

2- مستوى الدعم التقني المتوفر

3- سهولة التعلم والاستخدام

4- الشعبية الواسعة والمجتمع المتجاوب

أم غير ذلك...