# فناوری جاوا > برنامه‌نویسی جاوا > Java EE : نگارش سازمانی جاوا >  آموزش JSF

## vahid83

با سلام خدمت همگی اساتید محترم

هنوز با دنیای پر پیچ و خم جاوا آشنا نشده، مجبورم JSP کار کنم. البته با JSF framework فکر کنم کار راحت تر باشه. با در نظر گرفتن این مسئله که تا حالا اصلاً تحت وب کار نکردم کار برام سخت تر میشه.

دوستان اگه مقاله ای، کتابی یا چیزی سراغ دارند که بتونه بهم کمک کنه، معرفی کنند. ترجیحاً فارسی باشه یا یه منبع لاتین روان. چون وقتم خیلی کمه! تقریبا 2 هفته.


ممنون از توجهتون.

----------


## vahid83

دوستان نظری ندارند؟

----------


## vahid83

ا*ستاد* *javaphantom 
ما ز شما چشم یاری داشتیم
آیا خود غلط بود آنچه می پنداشتیم؟
*

----------


## ehsanm

به نظر من JSF امکانات بیشتری را در اختیارتان می گذارد و مدل ( MVC(Model,View,Controller را به خوبی حمایت می کند و اگر بخواهید در آینده بیشتر پیشرفت کنید Richfaces و JbossSeam نیز از این زبان استفاده می کنند.
یک سری به سایت  ww.roseindia.net/jsf  بزنید .

----------


## phoenix87

تو دنیای jee هیچ وقت دنبال منابع فارسی نگرد.می تونی از سایت 4shared.com هم کمک بگیری کتاب زیاد داره

----------


## ermia2008

سلام
به این سایت حتما یه سر بزنید. آموزش های بسیار خوب و مفیدی داره. در ارتباط با jSF هم آموزش داره:

http://www.mkyong.com/

موفق باشید

----------


## javaphantom

> ا*ستاد* *javaphantom 
> ما ز شما چشم یاری داشتیم
> آیا خود غلط بود آنچه می پنداشتیم؟
> *



مهندس من استاد نیستم. اسم دارم و اسمم بابک هست. اما JSF

چهار پنج سال پیش بود که با jsf 1.2  شروع به کار کردن کردم و اونجا فهمیدم که سان که اون موقع همچنان سان بود چه محصولی ناراحتی داده بیرون. خوب اون موقع struts بدجوری رو بورس بود و اکثر شرکتها با struts پروژه fail می کردن. سان خیلی هول هولکی این محصول رو داده بود بیرون. مشکل زیاد داشت از exception handling بگیر تا ajax  و و و تا اینکه JSF 2 رو  رها کرد.. این نسخه که کامل شده نسخه قبل هست خوب خیلی پیشرفتهای خوبی داشته ولی به نظر من خیلی دیر اومد تو بازار. زمانی اومد که GWT, Spring MVC و حتی Struts 2  جلوتر اومده بودن بیرون. اکثر DEVELOPER ها روی این فریم ورکها کار کرده بودن و کمتر شرکتی ریسک این مسئله رو قبول می کرد که بره سراغ jsf. از اونجایی که اکثر شرکتها بر اساس WEB SERVICE ها کار می کردند اصلا لایه UI رو کلا با تکنلوژیهای بر مبنای .NET کار می کردند و لایه LOGIC OR BUSINESS رو با جاوا.

داستان اینکه JSF خیلی شبیه به STRUTS و این نسخه جدید شبیه به SPRING MVC می مونه. اما خوب حالا AJAX BASE هم شده و با استفاده از RICH FACES, ICE FACES و باقی محصولاتی که کامپونتهای اضافه نوشته اند کاملا تطبیق داره. به نظر من آینده داره که شما بری سمتش اما موقعی شما می تونی توی این مسئله راضی بیایی بیرون  که همانطور که بهت گفتم با STRUTS یا SPRING MVC کار کرده باشی. اون موقع می شه گفت که اره خوبه.

راستی یک فریم ورک آشغالی دیگه هم هست به نام ADF که ماله ORACLE  هست که کلا قسمت UI رو با JSF  پیاده سازی می کنه. اونم بد نیست که بری سمتش . برای وقت تلف کردن خیلی خوبه.

----------


## omidbizdotcom

> داستان اینکه JSF خیلی شبیه به STRUTS و این نسخه جدید شبیه به SPRING MVC می مونه


خوشحال میشم اگه شباهت های jsf و struts رو بدونم ؟؟
به نظر من struts در حال منسوخ شدن و علت اینکه هنوز ازش استفاده میشه قدیمی بودن این فریم ورک نسبت به بقیه است در واقع معماری استراتس که بر پایه اکشن فرم و اکشن بین تا حدی توسعه نرم افزارهای وب رو سخت کرده اما در جی اس اف به جای این دو شما فقط از managedBean استفاده می کنید در جی اس اف فازهایی وجود داره که کنترل کاملی از lifecycle request رو به شما می ده این فریم ورک در واقع event driven و component oriented 
اکثر قریم ورک های UI جاوا که در مقایسه با GWT که مبتنی بر Ajax هستند مثل ZK  server centric هستند بخاطر همین کار باهاشون به نسبت از GWT که یک فریم ورک client centric راحت تره 
فریم ورک های قویه دیگه هم که جا داره ازشون یاد کرد apache tapestry و wicket است که در ساختار برنامه خیلی به شما کمک می کنه 



> راستی یک فریم ورک آشغالی دیگه هم هست به نام ADF که ماله ORACLE هست که کلا قسمت UI رو با JSF پیاده سازی می کنه. اونم بد نیست که بری سمتش . برای وقت تلف کردن خیلی خوبه.


خالی از عریضه نیست که بگم از همین پروژه آشغال آپاچی پروژه ای داره به اسم Apache Trinidad که از نظر کامپوننت بسیار غنی تر از Spring MVC و حتی struts است 

منابع : 
http://tapestry.apache.org/introduction.html
http://blog.omidbiz.com/omidplanet/e...ional_web_apps
http://blog.omidbiz.com/omidplanet/entry/zk_vs_gwt

----------


## m44miri

بجز ااین framework ها خود jsp چی؟
من هنوز هم دارم از jsp استفاده میکنم در برنامه های تحت وب..اگرم بخوام از  ajax  یا  javascript استفاده کنم از jquery استفاده میکنم...سعی کردم از gwt یا jsf  استفاده کنم اما بعد از یک مدت بیخیالشون شدم..خیلی محدود میشم توی این framework ها
خوشحال میشم نظر شما را بدونم

----------


## javaphantom

> خوشحال میشم اگه شباهت های jsf و struts رو بدونم ؟؟
> به نظر من struts در حال منسوخ شدن و علت اینکه هنوز ازش استفاده میشه قدیمی بودن این فریم ورک نسبت به بقیه است در واقع معماری استراتس که بر پایه اکشن فرم و اکشن بین تا حدی توسعه نرم افزارهای وب رو سخت کرده اما در جی اس اف به جای این دو شما فقط از managedBean استفاده می کنید در جی اس اف فازهایی وجود داره که کنترل کاملی از lifecycle request رو به شما می ده این فریم ورک در واقع event driven و component oriented 
> اکثر قریم ورک های UI جاوا که در مقایسه با GWT که مبتنی بر Ajax هستند مثل ZK  server centric هستند بخاطر همین کار باهاشون به نسبت از GWT که یک فریم ورک client centric راحت تره 
> فریم ورک های قویه دیگه هم که جا داره ازشون یاد کرد apache tapestry و wicket است که در ساختار برنامه خیلی به شما کمک می کنه 
> 
> خالی از عریضه نیست که بگم از همین پروژه آشغال آپاچی پروژه ای داره به اسم Apache Trinidad که از نظر کامپوننت بسیار غنی تر از Spring MVC و حتی struts است 
> 
> منابع : 
> http://tapestry.apache.org/introduction.html
> ...


از اینکه انقدر خوب و مستدل اینجا بحث رو ادامه دادی خیلی متشکر هستم. نکات خیلی خوب و دقیقی رو بهش اشاره کردی. اما شاید من باید کمی بیشتر توضیح بدم و بقولی موضعه خودمو بیشتر مشخص کنم.

اینکه JSF یک فریم ورک component base هست و شامل فاز یا life cycle های مختلفی هست و همانطور که گفتم یک استاندارد هست شکی نیست. من در پست قبلی سعی کردم که بگم برای راحتر فهمیدن و بهتر کار کردن با این فریم ورک بهتر که حداقل با struts کار کرده باشی چون از نظر معماری و طراحی شبیه هم هستند. الان می گم چرا.

زمانی که struts با ساختن یک کلاس dispatcher تمام servlet یا به عبارت دیگه تمام لایه action از طریق یک فایل xml که به اون یک object می چسبید (session object) ها و نهایتا آدرس url که بر اساس مثلا success یا fail به یک صفحه خاصی بره دقیقا در jsf 1.2 هم شما می تونی این مسئله رو مشاهده کنی. که از طریق یک servlet کلاس که حکم dispatcher رو داره و یک xml فایل که دقیقا ادرس url صفحه ها هست رو تعریف می کنیم و در نهایت backing bean ها که نقش همون لایه action فریم struts هست رو دارن. بله شما درست می گید کلی داستان داشت jsf 1.2 که struts به پاشم نمی رسید. ولی مهم این بود که شما کمتر شرکتی حتی خارج از ایران می دید که بیاد روی این فریم ورک سرمایه گذاری کنه. مشکل injection داشت که فریم ورکی به نام seam اومد تعریف شد تا بشه به این لایه UI جون بده تا بشه به لایه دیگه ای یا به عبارت دیگه به ejb container وصل کنه داستان رو. ضعیف بود این نسخه. دیر وارد بازار شده. شما برید JSR این محصول رو ببینید که چه موقع بیرون اومده بود و چه زمانی پیاده سازی شد. مشکل exception handling داشتی بابا. IDE ها support نمی کردن. netbeans هم که support می کرد با هزار بدبختی می تونستی یک مشکل رو کشف کنی . تازه کلی framework های دیگه که خودشونم باگ داشتن مثل Ice faces یا richfaces کنارش بودن. document‌خوب نداشت. best practice درست و حسابی پیدا نمی کردی. یک exception می خوردی کلی باید تو اینترنت بالا پایین می کردی. بحث  CDI and dependency injection نداشت پسر گلم. گفتم seam اومد به دادش رسید. ولی اون موقع دقیقا وقتی بود که struts خوب جلون می داد. کسی رو container ejb نمی رفت کار کنه. برای اینکه ejb 3 تازه اومده بود. قبلا همه با ejb 2.1 کار کرده بودن و دردسرهاشو می دونستن. همه spring رو ترجیح می دادن. چون هم راحت بود هم ا ینکه خیلی راحت با بقیه technology های integrate می شد. چرا انقدر بد اخلاقی می کنی.
سان عقب بود از غافله. JPA 1.2 نسبت به hibernate عقب مونده بود. کار داشت. این را من نمی گم خود سان قبول کرده. خیلی از شرکتها که الان اسمشو بهت گفتم مثل apache مثل jboss مثل hibernate مثل spring جلوتر بودن. سان داشت می رفت ورشکست بشه وشد. البته بگم حسن بزرگ سان این بود که محصولات رو استناندارد می کرد واین ارزشش خیلی بالاتر از یک محصول هست.

اما JSF 2 من یک سوال می کنم از شما آیا واقعا با وجود annotation هایی که الان روی backing bean ها می خوره با وجود CDI آیا شما رو یاد controller ها در spring mvc نمی اندازه.؟ اینکه jsf که اول هم گفتم component هست نه taglib بله خیلی ارزش کار رو بالا می بره و همچنین سختی کار رو. اما نوع نگرش طراحی بازم می گم شبیه spring mvc و struts هست. آشنا بودن به کارکرد و طرز نگرش و پیاده سازی یک برنامه با این دوفریم ورک بسیار کمک می کنه که شما راحتر بتونید jsf رو ساختارش رو بشناسی. حالا اینکه چندتا tag حفظ باشی و چندتا event بدونی برای من مطرح نیست.

اما درمورد ADF بازم دارم اشاره می کنم محصولی که یک پروژه درست و حسابی من ندیدم که باهاش بالا بیارن و یا اینکه نیروی انسانی کمی هست که بتونه باهاش کار کنه کلا از نظر من آشغال هست. من دوست آدمهایی با جرعت شما که سراغ این فریم ورک ها می رن و با اون پروژه fail می کنند. محصولی که نام برید رو دلم می خواد خودتون اعتراف کنید که تا چه جد با هاش کار کردید و آشنایی دارید.؟ اگر اعلامیه کار بزنید برای کار با این محصول چند نفر آدم و نیروی کار می تونید پیدا کنید.؟ دیگه نمی خوام بیشتر ریز بشم.

----------


## javaphantom

> بجز ااین framework ها خود jsp چی؟
> من هنوز هم دارم از jsp استفاده میکنم در برنامه های تحت وب..اگرم بخوام از  ajax  یا  javascript استفاده کنم از jquery استفاده میکنم...سعی کردم از gwt یا jsf  استفاده کنم اما بعد از یک مدت بیخیالشون شدم..خیلی محدود میشم توی این framework ها
> خوشحال میشم نظر شما را بدونم


1000 بار گفتم که فریورک از اسمش معلومه یعنی محدودیت. اما سهلوت و سرعت در امر develop رو هم داره. به شرطی که محدودیت ها رو بدونی و انتخاب درست بکنی و قبول کنی که محدود شدی و در آخر سواد استفاده درست رو از ابزارت داشته باشی.
فریمورک برای سهولت و سرعت در امر develop خیلی بدرد بخور هست. این نظر شخصی من هست. مگر اینکه برای خودت بخوای کار کنی و لذب ببری.

----------


## phoenix87

> مهندس من استاد نیستم. اسم دارم و اسمم بابک هست. اما JSF
> 
> چهار پنج سال پیش بود که با jsf 1.2  شروع به کار کردن کردم و اونجا فهمیدم که سان که اون موقع همچنان سان بود چه محصولی ناراحتی داده بیرون. خوب اون موقع struts بدجوری رو بورس بود و اکثر شرکتها با struts پروژه fail می کردن. سان خیلی هول هولکی این محصول رو داده بود بیرون. مشکل زیاد داشت از exception handling بگیر تا ajax  و و و تا اینکه JSF 2 رو  رها کرد.. این نسخه که کامل شده نسخه قبل هست خوب خیلی پیشرفتهای خوبی داشته ولی به نظر من خیلی دیر اومد تو بازار. زمانی اومد که GWT, Spring MVC و حتی Struts 2  جلوتر اومده بودن بیرون. اکثر DEVELOPER ها روی این فریم ورکها کار کرده بودن و کمتر شرکتی ریسک این مسئله رو قبول می کرد که بره سراغ jsf. از اونجایی که اکثر شرکتها بر اساس WEB SERVICE ها کار می کردند اصلا لایه UI رو کلا با تکنلوژیهای بر مبنای .NET کار می کردند و لایه LOGIC OR BUSINESS رو با جاوا.
> 
> داستان اینکه JSF خیلی شبیه به STRUTS و این نسخه جدید شبیه به SPRING MVC می مونه. اما خوب حالا AJAX BASE هم شده و با استفاده از RICH FACES, ICE FACES و باقی محصولاتی که کامپونتهای اضافه نوشته اند کاملا تطبیق داره. به نظر من آینده داره که شما بری سمتش اما موقعی شما می تونی توی این مسئله راضی بیایی بیرون  که همانطور که بهت گفتم با STRUTS یا SPRING MVC کار کرده باشی. اون موقع می شه گفت که اره خوبه.
> 
> راستی یک فریم ورک آشغالی دیگه هم هست به نام ADF که ماله ORACLE  هست که کلا قسمت UI رو با JSF  پیاده سازی می کنه. اونم بد نیست که بری سمتش . برای وقت تلف کردن خیلی خوبه.


خیلی اظهار نظر عجیبی در مورد adf کردین.حتما آشنایی کامل ندارین این فریم ورک داد جاوا نویسا رو دراورده .
بدون دونستن کامل جاوا و فقط ظرف 50 ساعت می تونین این رو یاد بگیرید و بهترین پروژه ها رو برای jee بسازین.محیطی کاملا ویژوال بدون نیاز به کدنویسی زیاد با قدرت و اعتبار اوراکل شرکت های ایرانی هم دارن کم کم میرن سراغش

----------


## omidbizdotcom

اي بابا عجب بحث طولاني اي شده اين تاپيک در کل تا حدي با حرفات موافقم و تا حدي نه اما نمي خوام اين thread hijack  شه فقط دو نکته و تمام



> من دوست آدمهایی با جرعت شما که سراغ این فریم ورک ها می رن و با اون پروژه fail می کنند. محصولی که نام برید رو دلم می خواد خودتون اعتراف کنید که تا چه جد با هاش کار کردید و آشنایی دارید.؟ اگر اعلامیه کار بزنید برای کار با این محصول چند نفر آدم و نیروی کار می تونید پیدا کنید.؟


من پروژه موفق با ترينيداد ديدم ( البته با ترکيب سيم ) و در ضمن  *الان* براي سيم هم اعلاميه بزني هيچکس و پيدا نمي کني  اما اين دليل نميشه که فريم ورک خوبي نيست در صورتيکه برعکس به نظر من بهترين فريم ورکيه که جاوا به خودش ديده بعلاوه يه پروژه خوب رو از active بودن پروژه ميشه فهميد و ترينيداد بسيار پروژه فعاليه 




> 1000 بار گفتم که فریورک از اسمش معلومه یعنی محدودیت


بالاخره براي اينکه بعضي چيزا رو بدست بياري بايد بعضي چيزا رو از دست بدي فريم ورک شايد محدوديت باشه که بازم به نظر من نيست اما از اختراع کردن چرخ از اول بهتره 

در کل جوابت خوب بود يه مثبت  :تشویق: 

@ 		m44miri : من پيشنهاد مي کنم از يه کاره ساده شروع کن مثل يک گريد که paging داشته باشه و سعي کن اونو هم تو JSF و هم تو JSP پياده کني اونوقت خودت مي توني مقايسه کني و تصميم بگيري

----------


## javaphantom

> خیلی اظهار نظر عجیبی در مورد adf کردین.حتما آشنایی کامل ندارین این فریم ورک داد جاوا نویسا رو دراورده .
> بدون دونستن کامل جاوا و فقط ظرف 50 ساعت می تونین این رو یاد بگیرید و بهترین پروژه ها رو برای jee بسازین.محیطی کاملا ویژوال بدون نیاز به کدنویسی زیاد با قدرت و اعتبار اوراکل شرکت های ایرانی هم دارن کم کم میرن سراغش


چند نکته دیدم که دلم نمی خواد ازش به  این راحتی بگذرم.




> خیلی اظهار نظر عجیبی در مورد adf کردین.حتما آشنایی کامل ندارین این فریم ورک داد جاوا نویسا رو دراورده .
> بدون دونستن کامل جاوا و فقط ظرف 50 ساعت می تونین این رو یاد بگیرید و بهترین پروژه ها رو برای jee بسازین.محیطی کاملا ویژوال بدون نیاز به کدنویسی زیاد با قدرت و اعتبار اوراکل شرکت های ایرانی هم دارن کم کم میرن سراغش


نکته اول : استفاده از تکنلوژی برای کشور ، مردم و کلا کسانی که تصور بر این دارن که مانند یک کوه یخی رو اقیانوسی هست که اگر اون رو بدست آوردن و به قولی تونستن از سد این کوه یخی که روی آب جلوشون سبز شده بگذرن دیگه همه چیز به خوبی وخوشی تمام می شه،فکریست کاملا باطل و خلاف. چه بسا با رفتن قله این کوچ ریشهای عزیمی که در زیر آب نهفته شده و با حجمی عظیم تر به سطح آب می یاد. چه بسا که ریشهای این کوه یخی می تونه فرهنگ استفاده  اون تکنلوژی باشه هزینه مربوط به آن یا دانش  یادگیری و شعور استفاده  و خیلی مسائل دیگه.

دنیای  facebook با زبان PHP نوشته شده و 500 ملیون کاربر داره یعنی 6 تا ایران. این محصول با همون javascript , html و چیزهایی که بقول شما باید نشست اختراع کرد نوشته شده اما جوابگوی 500 ملیون کاربر هست. در صورتی خیلی از محصولاتی که با همان زبانهای پیشرفته و فریم ورکهای بزرگ و با UI های قشنگ در همین مملکت اسلامی به دست جوانان غیور تکنلوژی کار ساخته شده که جوابگوی 100 نفر کاربر رو هم نداره. دنیای نرم افزار عزیزه من دنیای سرعت  و سهولت نیست . دنیای شعور و درک و استفاده درست و داشتن دانش هست.
این که صدای جاوا نویسها رو درآورده حرفیست کاملا نا پخته و از سر احساسات و بی تجربگی. زبان، تکنلوژی ابزار هست برای ساختن یک محصول. استفاده از ابزارهای سهل و آسون یا سخت و پیچیده برای مشتریان و کاربران هیچ ارزش افزوده ای نداره. مهم محصول و کیفیت کاری اون هست که در ایران وجود نداره. کسانی که هم با adf یا هر فریم ورک دیگه ای دارن کار می کنند باید به قسمت ریشه کوه یخی فکر کنند. بجای اینکه از سهولت  و سرعت اون تکنلوژی خوشحال یا ناراحت بشن، به یک محصول با کیفیت فکر کنند و روند تولید یک محصول رو درک کنند. جاوا و تمام تکنلوژیهای مربوط به اون همه و همه یک سری ابزار هستند ولی هدف نیستند. و این ابزار دقیقا حکم یک چاقوی تیز و بران جراحی رو بازی می کنه که شما می تونید باهاش آدم بکشید یا اینکه جون یک انسان رو نجاب بدین.

بله کاملا شما درست می گید که چون نیروی انسانی کمی هست برای یک تکنلوژی یا مثلا یک فریم ورک دلیل بر بد بودن اون تکنلوژی یا هر موضوعی نمی شه.

گفتید seam بزارید یک نگاهی هم به seam داشته باشیم. من با jsf و seam حدود 4 سال پیش کار کردم. بقول یکی از دوستانم و همکارم که همیشه می گفت seam خوبه ولی وقتی به مشکل می خوری باهاش ، واقعا به مشکل می خوری.

علت اینکه spring نسبت به seam خلیی مردمی تر و قوی تر ظاهر شد شاید بخاطر سیاست های غلط برای رشد این محصول بود. لازم به ذکر seam 3 خوب کار کرده. ولی بازم شما مشکل رو متوجه نشدید. کسی از بدی یا خوبی حرف نزده.

من اگر کلمه آشغال رو توی متنم آوردم، اولشم ذکر کردم که این عقیده شخصی من هست. عقاید خودمم برای خودم محترمه. حالا چرا ابراز کردم چون ازم خواسته شد که نظر بدم. 

من اگر گفتم adf آشغاله که بازم عقیده ام همینه که آشغاله بر اساس همین حرف شما هست که بسیار سهل و آسون هست. واین یعنی اینکه شما هیچ مدیریتی نسبت به عمق ما جرا نداری. چون ذهن developer رو نمی زاره رشد کنه. دیدی نمی ده. من اگر بخوام در مورد soa و pattern ها ی اون اینجا صحبت کنم و بیام مقایسه کنم معماری ها و best practice های  soa در جاوا و چگونگی پیاده سازی که adf اون پشت می کنه اون وقت متوجه می شی که اصلا درد فریم ورک نیست. درد جای دیگست. دوست عزیز برنامه نویس یا developer اون کسی نیست که فریم ورک بلد باشه. بازم می گم اینها همه ابزارن. من نمی خوام چالشهایی که برای تست نویسی در این فریم ورک هست رو جلو بیارم. بحث scaling هست . بحث maintenance هست. بحث integrate هست  بحث هزینه هست و و و . من به شخصه محصولات jboss رو ترجیح می دم.





> من پيشنهاد مي کنم از يه کاره ساده شروع کن مثل يک گريد که paging داشته باشه و سعي کن اونو هم تو JSF و هم تو JSP پياده کني اونوقت خودت مي توني مقايسه کني و تصميم بگيري



عمل paging هم عمل سختی نیست که شما نیاز به UI خوبی داشته باشید که براتون انجام بده یک query سادست که در یک لایه دیگه ای صورت می گیره و هیچ نیازی نیست که بخواد در لایه ui این مسئله handle بشه.

نظر آخر من: یاد گیری ابزار  وقتی پشتش هیچگونه شعور و درک درست از علت استفاده از اون ابزار نباشه مفت نمی ارزه. چه بسا که این فریم ورکها و زبانها اومدن و رفتن و در آینده هم چنین خواهد شد.
رشد دادن فکر و دید مهندسی و develop داستانی هست که هیچ فریم ورک یا ابزاری نمی تونه کمک کنه  جز با مطالعه و دانش و درگیر شدن با مشکل و استفاده از راه حل کسانی که تونستن بر اون مشکل غلبه کنند.

من منظور خاصی به شخص یا افرادی خاص نداشتم. جلو جلو از هر کی که می خونه و بهش بر می خوره عذرخواهی می کنم

----------


## omidbizdotcom

مثل اينکه اين بحث نمي خواد تموم شه 



> دنیای facebook با زبان PHP نوشته شده و 500 ملیون کاربر داره یعنی 6 تا ایران. این محصول با همون javascript , html و چیزهایی که بقول شما باید نشست اختراع کرد نوشته شده اما جوابگوی 500 ملیون کاربر هست.


اين فقط ظاهر قضيه است و دقيقا حرفي که از خيلي از  افراد ظاهربين شنيدم شايد در ظاهر php باشد اما پشت قضيه از هزاران تکنولوژي ديگه مثل آپاچي hadoop  و خيلي تکنولوژي هاي ديگر استفاده شده بعلاوه مطمئنا در قسمت UI هم از فريم ورک هاي مختلف مثل zend يا ignite و jquery و ... استفاده شده و مطمن باشيد که فقط با html و جاوااسکريپت نميشه يه facebook راه انداخت يا بهتر بگم هزار سال طول مي کشه 

http://wiki.apache.org/hadoop/PoweredBy#F




> علت اینکه spring نسبت به seam خلیی مردمی تر و قوی تر ظاهر شد شاید بخاطر سیاست های غلط برای رشد این محصول بود. لازم به ذکر seam 3 خوب کار کرده. ولی بازم شما مشکل رو متوجه نشدید. کسی از بدی یا خوبی حرف نزده.


اينم ميزارم رو نظر شخصي چون بنظر من سيم به شدت قويتر از اسپرينگه + اسپرينگ محبوبه چون قديمي تره نمي خوام الان راجع به feature هايي که سيم داره و اسپرينگ نداره صحبت کنم 




> عمل paging هم عمل سختی نیست که شما نیاز به UI خوبی داشته باشید که براتون انجام بده یک query سادست که در یک لایه دیگه ای صورت می گیره و هیچ نیازی نیست که بخواد در لایه ui این مسئله handle بشه


منم نگفتم کار سختيه گفتم در لايه UI  هم ميشه با کامپوننت هايي که JSF داره مثل h:dataTable و ... نحوه بايندکردن فرم ها و.. اين دو تا رو محک زد

----------


## m44miri

> @         m44miri : من پيشنهاد مي کنم از يه کاره ساده شروع کن مثل يک گريد که  paging داشته باشه و سعي کن اونو هم تو JSF و هم تو JSP پياده کني اونوقت  خودت مي توني مقايسه کني و تصميم بگيري


من با jsp تا حالا paging پیاده نکردم.با jQuery این کارو میکنم که از دست قضا اونم یک فریم ورکه  :قهقهه: 
راستش من نمی خوام jsf را ببرم زیر سوال..مزایای زیادی داره اما بعضی کارار را کلا نمیشه درونش انجام داد و مجبوری از کتابخانه های  jsp درون jsf  استفاده کنی کلا وقتی دیدم اینطوریه گفتم خوب چه کاریه همون jsp را استفاده میکنم..الا دارم پروژه دانشگاه ارشدم را با jsp مینویسم ولی کلا فکر کنم دفعه آخریه که برم سراغ application های تحت وب..
خداییش احساس میکنم که خیلی خرتو خره توشون...توی همین پروژه که دارم کار میکنم از jsp java ajax jquery datatables c  css html دارم استفاده میکنم آدم سر درد میگیره... شاید بعد از این حالا حالاها دیگه نرم سراغشون ..قربون javafx برم اون همه قدرت داره و فقط تحت جاواست... آدم سرگیجه نمیگیره توش هیچ وقت ... منتظرم نسخه 2 ش بیاد تا کلی حال کنم باهاش. برنامه های خیلی خوبی باهاش نوشتم که خداییش خیلی گرافیکاله...یه حال اساسی هم oracle داده بهش در نسخه 2

----------


## vahid83

سلام
واوووووووو
چه خبره ه ه  ه ه ه 
چه جنجالی پرپا شد!
خیییییییییییییییلی ممنون. خیلی خیلی ممنون

چه اطلاعات جالبی در این تاپیک دیدم.

راستش چون یه مدت درگیر پروژه شدم، اصلاً یادم رفت که یه سری به اینجا بزنم!

واقعاً لذت بردم از این همه تبادل اطلاعات و بحث در مورد موضوع کارم.

در ضمن هر کس که به شما چیزی یاد بده و شما از دانش اون استفاده کنی میشه استادت!

پس دوست عزیزjavaphantom   از لفظ استاد من ناراحت نشید.

به هر حال بازم ممنون ولی دوست دارم نقطه نظرات خیلی بیشتری از شما دوستان ببینم البته اگر مایل باشید!
*
*

----------


## lionking_1360

سلام 
کتاب آموزش JSF 2.0 از انتشارات ناقوس میتونه کمک زیادی بکنه چون تمامی نکات مورد نیاز برای شروع رو آموزش داده است. همچنین میتونید از سایت jsf2.ir نیز استفاده نمایید.

----------


## irGeek

راستش شاید به موضوع ربطی نداشته باشه ولی  هر کس با توجه به پیش زمینه ای که داره یک فریم ورک رو تایید میکنه.
خوش دستترین فریم ورکی که من دیدم play framework و اصلا با JSF کاری نداره! وبنظرم بهترین کار رو هم کرده :لبخند گشاده!: .یه سر به سایتش بزن شاید نظرت رو جلب کرد.
www.*playframework*.com

----------


## lionking_1360

شاید play فریم ورک خوش دستی باشه اما یکی از مزایایی JSF کامپوننت بیس بودن اون هست یعنی برای اون کامپوننتهای زیادی تولید میشه مثل richfaces

----------


## phoenix87

شما چه طوری این دو فریم ورک رو با هم مقایسه می کنید؟این دوتا فریم ورک کارشون متفاوته.

----------


## lionking_1360

از این دو فریم ورک برای طراحی برنامه های وب بیس استفاده میشه, پس میشه با هم مقایسه شون کرد

----------


## phoenix87

jsf فریم ورک لایه نمایش هست.اما play یک فریم ورک fullstack هست و از  سرولت استفاده نمی کنه باید با grails و spring مقایسه بشه

----------


## goodboy3466

> مهندس من استاد نیستم. اسم دارم و اسمم بابک هست. اما JSF
> 
> چهار پنج سال پیش بود که با jsf 1.2  شروع به کار کردن کردم و اونجا فهمیدم که سان که اون موقع همچنان سان بود چه محصولی ناراحتی داده بیرون. خوب اون موقع struts بدجوری رو بورس بود و اکثر شرکتها با struts پروژه fail می کردن. سان خیلی هول هولکی این محصول رو داده بود بیرون. مشکل زیاد داشت از exception handling بگیر تا ajax  و و و تا اینکه JSF 2 رو  رها کرد.. این نسخه که کامل شده نسخه قبل هست خوب خیلی پیشرفتهای خوبی داشته ولی به نظر من خیلی دیر اومد تو بازار. زمانی اومد که GWT, Spring MVC و حتی Struts 2  جلوتر اومده بودن بیرون. اکثر DEVELOPER ها روی این فریم ورکها کار کرده بودن و کمتر شرکتی ریسک این مسئله رو قبول می کرد که بره سراغ jsf. از اونجایی که اکثر شرکتها بر اساس WEB SERVICE ها کار می کردند اصلا لایه UI رو کلا با تکنلوژیهای بر مبنای .NET کار می کردند و لایه LOGIC OR BUSINESS رو با جاوا.
> 
> داستان اینکه JSF خیلی شبیه به STRUTS و این نسخه جدید شبیه به SPRING MVC می مونه. اما خوب حالا AJAX BASE هم شده و با استفاده از RICH FACES, ICE FACES و باقی محصولاتی که کامپونتهای اضافه نوشته اند کاملا تطبیق داره. به نظر من آینده داره که شما بری سمتش اما موقعی شما می تونی توی این مسئله راضی بیایی بیرون  که همانطور که بهت گفتم با STRUTS یا SPRING MVC کار کرده باشی. اون موقع می شه گفت که اره خوبه.
> 
> راستی یک فریم ورک آشغالی دیگه هم هست به نام ADF که ماله ORACLE  هست که کلا قسمت UI رو با JSF  پیاده سازی می کنه. اونم بد نیست که بری سمتش . برای وقت تلف کردن خیلی خوبه.


چرا میگی oracle adf  آشغاله؟

----------

