View Full Version : تفاوت WPF Web Application و Silverlight
nkm
چهارشنبه 16 شهریور 1390, 22:05 عصر
سلام
من خیلی اینجا را زیر و رو کردم، ولی جوابی پیدا نکردم
یک سوال اینکه تفاوت اینها در چی هست؟
دوم اینکه برای یک برنامه نویسی ساده سازمانی کدام یک را پیشنهاد میدین؟
(من مدتها از کد نویسی دور بودم، و الان بیشتر میخوام اطلاعات عمومی اولیه را پیدا کنم)
Merila_Rad
پنج شنبه 17 شهریور 1390, 18:06 عصر
سلام
منم خیلی دنبال جواب این مسئله گشتم
منم نمیخوام درگیر هر دوتاشون بشم اما مثل اینکه تا باهردوتاشون نتونم کار کنم متوجه نمیشم کدام رو انتخاب کنم
الانم نمیتونم جوابی در مقابل سوال شما بدم بلکه می خواستم یه سوال به سوالهای شما اضافه کنم
تا اونجایی که من متوجه شدم WPF مثل WinFormه (تهیه winApplication)با اضافه کردن امکانات خیلی زیادتر مثل طراحی سه بعدی، انیمیشن، عدم وابستگی به رزولیشن ،استفاده از نرم افزارهای گرافیکی برای تهیه اینترفیس و... که برای فراهم شدن خیلی از این امکانات از زبان XAML استفاده شده از همین زبان در Silver light هم استفاده شده
Silver light هم برای تهیه webApplication استفاده میشه اما حالا سوال من اینجاست که ما در wpf میتونیم خروجی کار را در browser مشاهده کنیم شبیه Silver light. خب وقتی ما میتونیم توسط wpf یک webapplication هم ایجاد کنیم بهتر نیست بریم سراغ wpf و دور Silver light را خط بکشیم؟؟؟؟
nkm
جمعه 18 شهریور 1390, 23:46 عصر
یه چیزایی من فهمیدم
WPF Web Application فقط روی ماشینهای ویندوز که دات نت نصب هست کار میکنه، در حالی که Silverlight روی خیلی از پلتفرمها (http://en.wikipedia.org/wiki/Microsoft_Silverlight#Operating_systems_and_web_br owsers) کار میکنه و فقط نیاز به پلاگین سیلورلایت دارن
nkm
جمعه 18 شهریور 1390, 23:52 عصر
http://blogs.msdn.com/b/jennifer/archive/2008/05/06/when-should-i-use-wpf-vs-silverlight.aspx
d_derakhshani
دوشنبه 21 شهریور 1390, 11:22 صبح
ابتدا فرق بین WPF و Silverlight رو توضیح می دم و سپس در مورد WPF Browser Application توضیح خواهم داد. فعلا فرض کنید WPF تحت وب وجود ندارد.
WPF نسل جدید طراحی برنامه های تحت ویندوز است. در یک توضیح مختصر در مورد WPF: رندر برنامه های WPF بر پایه DirectX است، برای طراحی Layout از xaml استفاده می کنه، قدرت بالایی در طراحی فرم ها با گرافیک بسیار قوی داره، تمامی امکانات .Net برای طراحی ها تحت ویندوز رو دارا هست و بسیاری از چیزهای مهمتر دیگه که شرح کاملشون و می تونید تو بسیاری از کتاب ها، مقالات و سایت ها پیدا کنید.
اما فرق WPF با Silverlight: Silverlight در واقع قصد داره که امکاناتی و تکنولوژی رو که WPF در اختیار ما می ذاره ،به صورت تحت وب در اختیار مون قرار بده. مسلما وقتی می خواهیم چیزی رو تحت وب داشته حجم برای ما فاکتور مهمی خواهد، بنابراین Silverlight برای سبک شدن تمامی امکانات WPF رو در اختیار ما قرار نمی ده اما مهمترین اونها رو که برای تولید یک نرم افزار تحت وب لازمه تمام و کمال در اختیار ما می ذاره. نکته بعدی که در برنامه ها تحت وب مهمه Cross Platform بودن اونهاست، Silverlight هم Cross Platform هست وهم Cross Browser. البته Silverlight امکاناتی هم رو در اختیار ما قرار میده که WPF فاقد اون هست، برای مثال ارتباط با کدهای JavaScrip، تعامل با Browser و... . WPF به صورت کامل امکان اتصال به WCF Service رو داراست، Silverlight این امکان رو به فقط از طریق فراخوانی غیر همزمان در اختیار ما میذاره(که در WPF اینکار رو باید خودتون دستی پیاده سازی کنید). WCF RIA Service به صورت پیش فرض برای Silverlight طراحی شده.
اما مهمترین نکته اینه که Silverlight روی برنامه ASP.Net هاست می شه و بنابراین در یک سرور نصب شده و بقیه Client ها با دادن آدرس URL صفحه وبب (که فایل xap در آن آدرس دهی شده) به آ« دسترسی می یابند. تنها چیزی که باید Client ها داشته باشند اینه که فایل بسیار کم حجم Silverlight رو روی سیستم نصب داشته باشند که این کار وقت بسیار کمی می گیرد. بنابراین یک بار راه اندازی در سرور و اتصال راحت Client ها با هر سیستم عامل و مرورگری به برنامه.
اما WPF می بایست همچون سیستم های Win App در سیستم کلاینت با تمامی موارد لازم نصب گردد. یعنی مفهوم Central بودن برنامه که موجب بهبود Maintenance آن می شود وجود ندارد.
حال WBA(WPF Browser Application) همان WPF است که در دل Browser اجرا می شود و البته با کمی سطح دسترسی محدودتر به منابع. یعنی تمامی کلاینت ها به تنهایی باید .Net Framework و تمامی پیش نیازات نصب یک برنامه WPF یا Win App رو باید روی کلاینت نصب نمایند. سیستم عامل حتما می بایست Windows بوده و در .Net 3.5 به بعد مرورگر شما می بایست IE یا Firefox باشد.
hosseinrasouli
سه شنبه 03 اردیبهشت 1392, 21:13 عصر
ابتدا فرق بین WPF و Silverlight رو توضیح می دم و سپس در مورد WPF Browser Application توضیح خواهم داد. فعلا فرض کنید WPF تحت وب وجود ندارد.
WPF نسل جدید طراحی برنامه های تحت ویندوز است. در یک توضیح مختصر در مورد WPF: رندر برنامه های WPF بر پایه DirectX است، برای طراحی Layout از xaml استفاده می کنه، قدرت بالایی در طراحی فرم ها با گرافیک بسیار قوی داره، تمامی امکانات .Net برای طراحی ها تحت ویندوز رو دارا هست و بسیاری از چیزهای مهمتر دیگه که شرح کاملشون و می تونید تو بسیاری از کتاب ها، مقالات و سایت ها پیدا کنید.
اما فرق WPF با Silverlight: Silverlight در واقع قصد داره که امکاناتی و تکنولوژی رو که WPF در اختیار ما می ذاره ،به صورت تحت وب در اختیار مون قرار بده. مسلما وقتی می خواهیم چیزی رو تحت وب داشته حجم برای ما فاکتور مهمی خواهد، بنابراین Silverlight برای سبک شدن تمامی امکانات WPF رو در اختیار ما قرار نمی ده اما مهمترین اونها رو که برای تولید یک نرم افزار تحت وب لازمه تمام و کمال در اختیار ما می ذاره. نکته بعدی که در برنامه ها تحت وب مهمه Cross Platform بودن اونهاست، Silverlight هم Cross Platform هست وهم Cross Browser. البته Silverlight امکاناتی هم رو در اختیار ما قرار میده که WPF فاقد اون هست، برای مثال ارتباط با کدهای JavaScrip، تعامل با Browser و... . WPF به صورت کامل امکان اتصال به WCF Service رو داراست، Silverlight این امکان رو به فقط از طریق فراخوانی غیر همزمان در اختیار ما میذاره(که در WPF اینکار رو باید خودتون دستی پیاده سازی کنید). WCF RIA Service به صورت پیش فرض برای Silverlight طراحی شده.
اما مهمترین نکته اینه که Silverlight روی برنامه ASP.Net هاست می شه و بنابراین در یک سرور نصب شده و بقیه Client ها با دادن آدرس URL صفحه وبب (که فایل xap در آن آدرس دهی شده) به آ« دسترسی می یابند. تنها چیزی که باید Client ها داشته باشند اینه که فایل بسیار کم حجم Silverlight رو روی سیستم نصب داشته باشند که این کار وقت بسیار کمی می گیرد. بنابراین یک بار راه اندازی در سرور و اتصال راحت Client ها با هر سیستم عامل و مرورگری به برنامه.
اما WPF می بایست همچون سیستم های Win App در سیستم کلاینت با تمامی موارد لازم نصب گردد. یعنی مفهوم Central بودن برنامه که موجب بهبود Maintenance آن می شود وجود ندارد.
حال WBA(WPF Browser Application) همان WPF است که در دل Browser اجرا می شود و البته با کمی سطح دسترسی محدودتر به منابع. یعنی تمامی کلاینت ها به تنهایی باید .Net Framework و تمامی پیش نیازات نصب یک برنامه WPF یا Win App رو باید روی کلاینت نصب نمایند. سیستم عامل حتما می بایست Windows بوده و در .Net 3.5 به بعد مرورگر شما می بایست IE یا Firefox باشد.
سلام مهندس
آیا امکان اجرا شدن برنامه های Wpf بر روی بستر اینترانت بر روی مرورگر وجود داره ؟
من میخواهم برای یک سازمان که دارای شبکه اینترانت است برنامه ای بسازم . (نمیخواهم asp.net باشه بخاطر مشکلاتی که داره )
چون قابلیتی در wpf که با مرورگر باز میشه این سوال رو کردم. (خیلی فوررری)
میلاد رئیسی
چهارشنبه 22 خرداد 1392, 13:07 عصر
سلام مهندس
آیا امکان اجرا شدن برنامه های Wpf بر روی بستر اینترانت بر روی مرورگر وجود داره ؟
من میخواهم برای یک سازمان که دارای شبکه اینترانت است برنامه ای بسازم . (نمیخواهم asp.net باشه بخاطر مشکلاتی که داره )
چون قابلیتی در wpf که با مرورگر باز میشه این سوال رو کردم. (خیلی فوررری)
نه . شما نمیتونید برنامه رو روی هاست (یا IIS ) ران کنید باید برای این کار حتما از سیلور لایت استفاده کنید . توجه کنید که سیلور لایت دارای دو پروژه هستش قسمت سرور و قسمت کلاینت ! قسمت سرورش یک پروژه asp.net هستش و قسمت کلاینت یک پروژه سیلور لایت !
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.