# برنامه نویسی با محصولات مایکروسافت > برنامه نویسی مبتنی بر Microsoft .Net Framework > Silverlight >  استفاده از سیلورلایت در پروژه

## محمدامین شریفی

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

----------


## milade

سلام
بدی رو بگم فقط:
فارسی پشتیبانی نمیشه!
موفق باشید

----------


## vahid4134

چرا وقتی با js میشه اینکار رو کرد باید کار رو پیچوند؟

----------


## eAmin

به نظر من هم اینکار یه جور وقت تلف کردنه، اصلا نیاز نیست، که با فلش یا سیلورلایت اینکار رو انجام بدین.

----------


## محمدامین شریفی

> بدی رو بگم فقط:
> فارسی پشتیبانی نمیشه!


چرا اتفاقا میشه ولی چیزی مانند right align را نداره.میشه متنمان را درون یک آرایه ریخت و آنرا سر و ته نشان داد!!!!.یا اینکه از component ها استفاده کنیم.



> چرا وقتی با js میشه اینکار رو کرد باید کار رو پیچوند؟


وحید جون من بلد نیستم با json کار کنم.اگر لطف کنی پروژه ای را که گفته بودی،بزار تا ببینیم.



> به نظر من هم اینکار یه جور وقت تلف کردنه، اصلا نیاز نیست، که با فلش یا سیلورلایت اینکار رو انجام بدین.


میشه یکم توضیح بدی که چرا؟

----------


## eAmin

سلام.

منظورشون json نبود که، منظورشون خود js بود!
-------
یکی از دلیل های شما برای استفاده از silverlight امکان گرافیکی بسیار بالای اون بود که من این رو بدون شک قبول دارم، ولی برای یه همچین کاره گروهی و تقریبا می شه گفت این پروژه یه خرده هم کوچیک هست اصلا دلیلی نداره که ما بخوایم بسیار زیبا و با افکتهای مختلف این رو پیاده سازی کنیم، اگر هم نیاز بود، می شه از افکتهایی که با جاوااسکریپت هم قابل پیاده سازی هست استفاده کنیم.

css هم زیاد دست و پا بسته نیست!

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

----------


## kiosksoft

از پست های آقای راد (مدیر محترم بخش asp.net) :

یک اسرائیلیه غاصب، یک کامپوننت برای پشتیبانی از زبان های Hebrew در Silverlight تهیه کرده:
http://www.codeproject.com/KB/silver...light_RTL.aspx
http://www.codeplex.com/SilverlightRTL

البته قبلش، این کامپوننت برادر وطنی رو بررسی کن:
http://www.codeproject.com/KB/silver...lverlight.aspx

----------


## محمدامین شریفی

> برای پشتیبانیش یک فایل 3 مگی میخواد که هیچ کس روی مرورگرش نصب نداره.


به هر حال که این پلاگین رو مرورگر کاربر نصب میشه،حالا هر چه زودتر بهتر.
tarhebartar جان مطمئن باش سیلورلایت خیلی از فلش قوی تراست.
و اینکه در خارج خیلی ها هنگام بازی های المپیک روی مرورگرشان نصب کردن



> و اینکه با برنامه Expression Blend 2 کار کنید


این را قبول دارم و اینکه هنوز Expression Blend به اون بلوغش نرسیده است.
اگر دیگر اعضای گروه نظری دارند بفرماییند
آقای raravaice ، kasit ،milade و عماد جون شما چه نظری دارید؟

----------


## vahid4134

من این نمونه کد رو میدم 


```
<html>
<head>
<script type="text/javascript" 
src="http://extjs.cachefly.net/builds/ext-cdn-324.js"></script><link 
rel="stylesheet" type="text/css" 
href="http://extjs.cachefly.net/ext-2.2/resources/css/ext-all.css" />
 
<script type="text/javascript">
Ext.onReady(function(){

var trans=Ext.DomQuery.select("span[tran]");
var store = new Ext.data.SimpleStore({
	id:0,
    fields: ['en', 'fa'],
    data : [['hello','salam'],['world','jahan']]
});
for(i=0;i<trans.length;i++){
	var el=Ext.get(trans[i]);
	 new Ext.ToolTip({
                        target: Ext.get(trans[i]),
                        
html:store.getById(Ext.get(trans[i]).dom.innerHTML).get('fa')
                 });

}
})

</script>
</head>
<body>
<span tran=1>hello</span> <span tran=1>world</span>
</body>
</html>
```

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

----------


## arta.nasiri

http://www.microsoft.com/silverlight...w/default.aspx
http://www.microsoft.com/silverlight/

----------


## eAmin

> و اینکه سرعت اینترنت رو می خوره و به نظر می رسه cross browse هم نیست.این هم یه گند دیگه ماکروسافت.
> آخرش هم میگن از یکی دیگه خریده این سیلور لایت رو :(


البته این مورد فقط در ورژن 1 سیلورلایت صدق می کنه، ورژن 2 به کلی تغییر کرده، cross browser و cross platform هست.

----------


## vahid4134

> البته این مورد فقط در ورژن 1 سیلورلایت صدق می کنه، ورژن 2 به کلی تغییر کرده، cross browser و cross platform هست.


هنوز به حقیقت سیلور لایت cross platform و cross browser نیست. توی لینوکس هم که تست می کردم مشکلاتی رو داره
ویکی پدیا بهتر بیان کرده
http://en.wikipedia.org/wiki/Silverlight

----------


## محمدامین شریفی

> و اینکه سرعت اینترنت رو می خوره و به نظر می رسه cross browse هم نیست.این هم یه گند دیگه ماکروسافت.
> آخرش هم میگن از یکی دیگه خریده این سیلور لایت رو :(


عجب. شما اگر میتوانید این عیب را در اینجا پیشنهاد دهید.(شوخی کردم استاد :چشمک: )
بچه ها اینم برای adobe air هست.
 ولی صحبت شما درباره ff3 صدق میکند البته flash هم بهش مشکل داشت.جدیدا نمیدونم مشکل فلش حل شده است یا نه،ولی برای silverlight هوز نه. 
دوستان اگر silverlight خوب نیست از آن در پروژه استفاده نمیکنیم. به همین راحتی،چیکار محصولات شرکت ها داریم.

وحید جون silverlight با ff یکم مشکل دارد.البته سیاست ماکروسافت اینست که ff و opera و IE را پشتیبانی کند.و این موضوع ربطی به لینوکس ندارد.حالا خدایی خود ff3 خیلی استاندارد یا شاهکار هست(نسبت به تبلیغات گسترده این سایت)

----------


## محمدامین شریفی

> البته این مورد فقط در ورژن 1 سیلورلایت صدق می کنه، ورژن 2 به کلی تغییر کرده، cross browser و cross platform هست.


امین جان silverlight با IE خیلی بیشتر سازگار است.ولی flash با همه مرورگر ها سازگار است.
البته این را بپذیریم که silverlight یک تازه کار هست و این هم یک تقلید باحال دیگه از ماکروسافت.
البته این را از یاد نبریم که ماکروسافت در خیلی چیزها نوآوری داشته و بقیه از آن تقلید کرده اند.
بچه ها حتما این 2 مقاله را بخوانید.
اولیش و دومیش البته من نمیدونم چقدر مطالبش صحیح است.
بچه ها دیگه اینگونه بحث نکینم.چون از بحث پروژه خارج میشویم،به قول kassit جان همه زبان ها خوب هستند.
برنامه نویس باید ببینه که با کدومش راحت تر هست،همین.

----------


## vahid4134

> عجب. شما اگر میتوانید این عیب را در اینجا پیشنهاد دهید.(شوخی کردم استاد)
> بچه ها اینم برای adobe air هست.
>  ولی صحبت شما درباره ff3 صدق میکند البته flash هم بهش مشکل داشت.جدیدا نمیدونم مشکل فلش حل شده است یا نه،ولی برای silverlight هوز نه. 
> دوستان اگر silverlight خوب نیست از آن در پروژه استفاده نمیکنیم. به همین راحتی،چیکار محصولات شرکت ها داریم.
> 
> وحید جون silverlight با ff یکم مشکل دارد.البته سیاست ماکروسافت اینست که ff و opera و IE را پشتیبانی کند.و این موضوع ربطی به لینوکس ندارد.حالا خدایی خود ff3 خیلی استاندارد یا شاهکار هست(نسبت به تبلیغات گسترده این سایت)


چرا به لینوکس ربط داره. چون داره از mono استفاده می کنه
حالا راست میگی بی خیال
کد من چی به دردت خورد تست کردی؟

----------


## محمدامین شریفی

> کد من چی به دردت خورد تست کردی؟


بچه ها لطفا مخاطبتان من نباشم،این یک کار گروهی است.
و اگر میدانید چیزی کمک به کار گروهی میکند،خودتان بنویسید.
حتی اگر میخواهید موضوع تاپیک را عوض کنید. :قلب: 
برنامه شما را هم دیدم،خیلیی قشنگ بود.ولی آیا برای هر کلمه یک span باید اختصاص بدیم؟.
دوستان این روشی که برنامه نویس یک تگ اختیاری درون html اش اختصاص میدهد چگونه است،مثلا این را مینویسد<yourmail> و هنگامی که برنامه اجرا میشود نام میل طرف را میدهد؟.فکر کنم مربوط به xml است.

----------


## محمدامین شریفی

وحید جون کتابخانه جالبی بود،مثال های قشگی هم داشت.
ولی بازم یک فریم ورک بود، و مثل همون ajax خودمون بود.
وحید میتونی یک نمونه مشابه همون پروژه javascript  بنویسی؟
دوستان آیا مایل به استفاده از framework هستند؟

----------


## vahid4134

> وحید جون کتابخانه جالبی بود،مثال های قشگی هم داشت.
> ولی بازم یک فریم ورک بود، و مثل همون ajax خودمون بود.
> وحید میتونی یک نمونه مشابه همون پروژه javascript  بنویسی؟
> دوستان آیا مایل به استفاده از framework هستند؟


سلام
دوستان شاید من روی extjs یه مقدار تعصب داشته باشم. اما نظر من این هست که کار رو خیلی راحت می کنه و قدرت رو خیلی بیشتر می کنه
مثلا همین تگها.  یک کلاس داره در این آدرس 
http://extjs.com/deploy/dev/docs/?class=Ext.DomQuery
که اگر بازش کنید می تونید ببینید که به چه راحتی میشه تگهای مورد نظر خودتون (حتی اگر استاندارد html نباشه) رو پیدا کنید
یا مثلا در مبحث store من یک نوع store استفاده کردم در حالی که میشه بیشتر از اینها روش مانور داد و full ajax و یا نیمه ajax  باشه.
وارد جزئیات و دردسرهای دیگه هم مثل اینکه همخوانی در مرورگر ها نمی شیم

----------


## vahid4134

> بچه ها لطفا مخاطبتان من نباشم،این یک کار گروهی است.
> و اگر میدانید چیزی کمک به کار گروهی میکند،خودتان بنویسید.
> حتی اگر میخواهید موضوع تاپیک را عوض کنید.
> برنامه شما را هم دیدم،خیلیی قشنگ بود.ولی آیا برای هر کلمه یک span باید اختصاص بدیم؟.
> دوستان این روشی که برنامه نویس یک تگ اختیاری درون html اش اختصاص میدهد چگونه است،مثلا این را مینویسد<yourmail> و هنگامی که برنامه اجرا میشود نام میل طرف را میدهد؟.فکر کنم مربوط به xml است.


نه داخل servier side یه replace انجام میشه. بیشتر توی وبلاگها اینجور هست

----------


## محمدامین شریفی

> نه داخل servier side یه replace انجام میشه. بیشتر توی وبلاگها اینجور هست


بله منظور من هم همین بود.میتونی یکم راهنمایی کنی.
وحید جون امیدوارم با هم تو یک دانشگاه قبول بشیم :بوس: (ولی میدونم هر روز سر این ms دعوامون میشه!)
 
ممنون

----------


## vahid4134

> بله منظور من هم همین بود.میتونی یکم راهنمایی کنی.
> وحید جون امیدوارم با هم تو یک دانشگاه قبول بشیم(ولی میدونم هر روز سر این ms دعوامون میشه!)
>  
> ممنون


توی php که این کار رو می کنن

<?php
$str=str_replace('<tagname>','replacestr',$str);
?>

ایشالا البته جای بهتر قبول شدی برو همونجا . اینجا فعلا با همه مخصوصا استادا دعوا دارم

----------


## reza_62

با سلام در مرود دوستی که گفته بود روی ExtJs تعصب داره به نظر من حرف درستی می زنه ولی این فريم ورک  3تا مشکل کوچک دارد :
1 - لایسنس خیلی پیچیده ای دارد من هر قدر خوندم نفهمیدم می توان آن را در پروژه های تجاری استفاده کرد یا خیر
2 - کنترل های فوق العاده زیبایی دارد اما !!!! هیچ کدامشان با فارسی سازگار نیست 
3 - داکیومنت کم دارد
پیشنهاد من Dojo است دلیل :
1 - تمام کنترل هایش نسخه راست به چپ هم دارند !!!
2 - حداقل 4 تا کتاب درباره اش من در اينترنت دیده ام ( به علاوه ebook خود سایتش )
3 - کنترل های بسیار قوی هستند از گرید و تب و درگ و دراپ گرفته تا چارت و پخش ویدو و ...)

----------


## vahid4134

> با سلام در مرود دوستی که گفته بود روی ExtJs تعصب داره به نظر من حرف درستی می زنه ولی این فريم ورک  3تا مشکل کوچک دارد :
> 1 - لایسنس خیلی پیچیده ای دارد من هر قدر خوندم نفهمیدم می توان آن را در پروژه های تجاری استفاده کرد یا خیر
> 2 - کنترل های فوق العاده زیبایی دارد اما !!!! هیچ کدامشان با فارسی سازگار نیست 
> 3 - داکیومنت کم دارد
> پیشنهاد من Dojo است دلیل :
> 1 - تمام کنترل هایش نسخه راست به چپ هم دارند !!!
> 2 - حداقل 4 تا کتاب درباره اش من در اينترنت دیده ام ( به علاوه ebook خود سایتش )
> 3 - کنترل های بسیار قوی هستند از گرید و تب و درگ و دراپ گرفته تا چارت و پخش ویدو و ...)


در مورد لایسنس دو نوع لایسنس داره که با نرم افزار ما مشکل خاصی رو نداره. لایسنس رو بخونید متوجه میشید.
با فارسی سازگاره کدومش با فارسی سازگار نیست؟ داکیومنت هم کامل داره نمی دونم چرا میگید نداره. برای همشون کامل داره و توضیحات کاملی رو هم داره. یادگیریش هم اولش سخت هست درسته اما دو هفته بیشتر وقت نمی خواد . نیاز به ebook خاصی هم نداره به قول خودشون (که واقعا هم همینطور هست) داکیومنتش خود ebook ش هست.
در مورد کنترلر ها. ما قرار نیست از کنترلر ها استفاده کنیم. فقط فکر کنم فقط tooltip لازم باشه. نه tab می خواییم نه grid می خواییم . فقط core + store +tooltip همین.
خوبی extjs این هم هست که شما می تونید توی http://www.extjs.com/products/extjs/build/ بگید که کدوم کمپوننت ها رو می خوایید که فایل اضافی هم لود نشه

----------


## reza_62

نظرتون درباره dojo نگفتید؟ شما به قول خودتان فقط از سه تا آیتم استفاده کردید ولی من درباره کلش حرف زدم 90 % کنترل هایش با فارسی سازگار نیست

----------


## محمدامین شریفی

> نظرتون درباره dojo نگفتید؟ شما به قول خودتان فقط از سه تا آیتم استفاده کردید ولی من درباره کلش حرف زدم 90 % کنترل هایش با فارسی سازگار نیست


دوستان اینجا محل بحث بر سر برتری نیست،اگر مایل به بحث در این موضوع هستید تاپیک جدیدی را ایجاد کنی.
لطفا اگر میتوانید با framework خود پروژه را کامل کنید،اینجوری قدرت این framework ها هم بیشتر معلوم میشود.

----------


## vahid4134

> دوستان اینجا محل بحث بر سر برتری نیست،اگر مایل به بحث در این موضوع هستید تاپیک جدیدی را ایجاد کنی.
> لطفا اگر میتوانید با framework خود پروژه را کامل کنید،اینجوری قدرت این framework ها هم بیشتر معلوم میشود.


با امین جان موافقم
بچه ها اگر کدها رو دیدید نظرتون رو بگید که می خوایید بیشتر چیکار کنید تا من انجام بدم.

----------


## محمدامین شریفی

> با امین جان موافقم
> بچه ها اگر کدها رو دیدید نظرتون رو بگید که می خوایید بیشتر چیکار کنید تا من انجام بدم.


آقا وحید وردپرس هم snap shot دارد،آیا این component هم متن باز هست.
بچه ها ما باید کاری کنیم که که وقتی موس روی snap shot میره صفحه div ما ناپدید نشه،یعنی در دستور جاوا اسکریپت مان برای hide شدن div شرط OR بکار ببریم و همچنین یک دکمه close هم در snap shot قرار دهیم.به نظر من داده های پرس و جویمان را در hidden  هم ذخیره کنیم،اینجوری برای خواندن در RIA  یا tooltipراحت تریم.وحید جان اگر شما صلاح میدونی بجای div یا silverlight از tooltip شما استفاده کنیم،میشود روی گرافیکش هم حساب کرد؟ ولی به نظر من با همون js عادی ادامه بدهیم تا همه بتوانند هنوز داشته باشند(بازم نظر شخصیم هست)

----------


## vahid4134

> آقا وحید وردپرس هم snap shot دارد،آیا این component هم متن باز هست.
> بچه ها ما باید کاری کنیم که که وقتی موس روی snap shot میره صفحه div ما ناپدید نشه،یعنی در دستور جاوا اسکریپت مان برای hide شدن div شرط OR بکار ببریم و همچنین یک دکمه close هم در snap shot قرار دهیم.به نظر من داده های پرس و جویمان را در hidden  هم ذخیره کنیم،اینجوری برای خواندن در RIA  یا tooltipراحت تریم.وحید جان اگر شما صلاح میدونی بجای div یا silverlight از tooltip شما استفاده کنیم،میشود روی گرافیکش هم حساب کرد؟ ولی به نظر من با همون js عادی ادامه بدهیم تا همه بتوانند هنوز داشته باشند(بازم نظر شخصیم هست)


در مورد وردپرس شخصا اصلا باهاش کار نکردم و اطلاعی ندارم
اما در مورد tooltip موافقم که استفاده بشه.روی گرافیکش هم میشه حساب کرد. امکانات فوق العاده ای رو داره که من بعضی هاش رو که در داخل داکیومنتش http://www.extjs.com/deploy/dev/docs/?class=Ext.ToolTip هست رو میگم
*autoHide* : که میگه اگه ماوس از روی element رفت tooltip  حذف  بشه یا نه (مدت زمانش رو میشه با              *dismissDelay* تعیین کرد)
*closable* : اگه بزارید علامت ضردبدر در گوشه بالا میاد
*defaultAlign* : که میگه اصلا tooltip کدوم وری باز بشه (چپ یا راست یا بالا یا پایین یا پایین مایل به چپ و هزار تای دیگه که توی داکیومنتش توضیح داده )
*mouseOffset*  هم که افست ماوس رو میشه تغییر داد
حالا نظر با شماست که js عادی یا از یک فریم ورک
در ضمن extjs  کلاسهای مختلفی رو برای store داره.

----------


## محمدامین شریفی

آیا درون extjs هم میشود عناصر html را وارد کرد؟
یعنی میشود درونش را با html و css پر کرد؟
منظورم گرافیک درونش را چجوری میشه درست کرد؟

----------


## vahid4134

داخل tooltip آره میشه
عنصر tooltip متن داخلش html هست
عناصر دیگه هم دارای وارد کردن قابل هستند که با xtemplate قابل پیاده سازی هست

----------


## jeus

JAVAfx best choice
http://javafx.com/samples/
support RTL 
simple 
*Powerful*

----------


## peymannaji

سیلور لایت به نظر من بیشتر برای ساخت یک رابط گرافیکی قوی است . که انعطاف پذیره ... در واقع در آینده شاید که رقیبی برای adobe flex به حساب بیاد...اما بشخصه نظرم اینه که اگر کسی روی flex انرژی بزاره خیلی بهتره و برد کرده !!! البته  شکی در این نیست که javafx قوی هست  اما adobe همه گیرتر است .

----------


## tazaree

سلام به همگی
در مورد استفاده از سیلورلایت در پروژه.
1- مهمه که چقدر بر روی سایر تکنولوژی ها زحمت کشیده باشیم و تجربه کسب کرده باشیم.اگر در جاوا اسکریپت و سی اس اس حرفه ای باشیم که ارزش نداره کلی زحمت بکشیم برای سیلور لایت.
2-چاره ای نداریم جز اینکه طی چند سال آینده(شاید 5 سال حداکثر) سراغ این تکنولوژی برویم. ولی صبر کردن تا چند سال دیگه یک خوبی داره  و یک بدی: خوبی اینکه سیلور به بلوغ لازم میرسه بدی اینکه برای ما اینرسی خیلی زیادی بوجود می آید و دیگه مهاجرت به یک تکنولوژی جدید خیلی سخته!
3- خوب ماهیت پروژه هم در پاسخ به این سوال مهمه. من برای پروژه های کوچک که درون شرکت هایی با سرعت اینترنت بالا مورد استفاده قرار می گیرند از سیلور استفاده می کنم. البته قبلش هم باهاشون هماهنگ می کنم که نیازه یک فایل نصب بشه بر روی سیستم. این کار موجب میشه هم تجربیات اندکی در زمینه سیلور کسب کنم و هم اینکه انرژی زیادی ازم نمیگره.

4- سلامتی همه دوستان

----------

