سیلورلایت فارسی

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

سیلورلایت فارسی

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

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

طبقه بندی موضوعی
بایگانی

سلام به همه

خیلی خوشحالم و شکر میکنم که لیاقت این رو پیدا کردم که تا جایی که بتونم مطالب آموزشی مربوط به سیلورلایت رو به تمام علاقه مندان و دوستانم ارائه کنم.  در صورت نیاز از طریق ایمیل taghvajou@gmail.com میتونید با بنده مکاتبه کنید.

ولی یه چند تا نکته و خواهش:

۱ نظر موافقین ۰ مخالفین ۰ ۱۶ مهر ۹۱ ، ۱۵:۱۹
علی تقوی جو

سیلورلایت - از کجا در کجا و به کجا (1)

دوشنبه, ۱۳ آذر ۱۳۹۱، ۰۹:۱۷ ق.ظ

سلام به همه

طی چند تا پست در مورد گذشته، حال و آینده سیلورلایت باهم صحبت میکنیم تا دید داشته باشیم از این تکنولوژی و کاربردش.

ابتدا در مورد مبدا و روند رشدش صحبت میکنیم و بعد در مورد چراییش و کاربردهاش.

سیلورلایت یک که اسمش WPF Everywhere بود نه سیلورلایت. این نسخه، در واقع بیشتر ماموریت رابط کاربری داشت (UI یا همون User Interface) و البته کنترلهای اولیه و پایه وب رو هم داشت و یه سری قابلیتهای انیمیشن، پخش مدیا و ... . برای اولین بار بود که زمل (XAML) خودشون نشون داد. (البته به من )
من تجربه کاری با سیلورلایت یک ندارم و همه اینها در حد حرف می دونم.

سیلورلایت دو که من خودم شروع کردم به مطالعه و آشنایی باهاش.
تو سیلورلایت دو مایکرو سافت یهو یه حالی به تکنولوژی جدیدش داد. اولش اسمش گذاشت سیلورلایت 1.1 !
ولی از همین ورژن بود که یه نسخه خیلی سبک از دات نت فرم ورک (Net Framwork.) و (CLR (Common Language Runtime بهش اضافه شد. امیدوارم که با این عظمت که فریم ورک و سی ال آر داریم آشنا باشین ولی خلاصه اش این میشه که دیگه میشه، با زبانهایی که دات نت ساپورت میکنه، برنامه نوشته بشه و موقع اجرا هم فایلها به آی ال و موتور سی ال آر برسند که ایشون هم ما رو مورد عنایت قرار بدند.

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

دقت کنین که نسخه دات نت فریم ورک موجود توسیلورلایت یه نسخه خیلی سبکی از کتابخانه کلاسها پایه(Base Class Library) است! مثل کنترلها، وب سرویس های ایکس ام ال، کمپوننت های شبکه و شاید گمنامتریشون هم لینک (LINQ) باشه که متاسفانه کمتر مورد استفاده قرار میگیره!

یکی از مشحرهای جدید سیلورلایت اضافه شدن سندباکسش (Sand Box)بود که کدهای مورد نظرشو تو این لایه اجرا میکنه تا برای اجراش دیگه نیازی به تبادل با ای پی آی (API) های پلتفرم نباشه. یعنی یه چیزی داره تو اون سند باکس به نام مجری دینامیک (DLR = Dynamic Language Runtime) که کارش اینه که فایل xap رو دریافت کنه و باز کنه که استفاده کنه.

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

دیگه اینکه یه زیرشاخه هایی هم اضافه شد از مدلهای رابط کاربری WPF (با کلی شکل، انیمیشن ، تصویر) و کالکشنها، انعکاسها، رگولار اکسپرشن و شاه نیازهامون یعنی دیتا (Data Access) هم با wcf و هم با سرویس خود ADO.Net.

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

سیلورلایت سه
تو سیلورلایت 3 تعداد کنترلها زیاد شد. یه چیز خوب که اومد تولکیت بود (Silverlight Toolkit). دیپ لینکینگ (deep-linking) و دیتا پیجینگش (DataPager) واقعا به درد خورد.

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

یه چیز خیلی به درد بخورش بایند کردن المنت به المنته که تو فیلترینگ (Filtering) و ولیدیشن (Validation) نجاتمون داد! (اگه نیازه و با مفهوم والای (element-to-element binding آشنایی ندارین بگین تا در مورد این قضیه هم یه گپی بزنیم).

این یکی قابلیت جدید سیلورلایت سه یکی از نیازهامون رو تامین کرد: برخلاف سیلور یک و دو، امکان ذخیره فایل با استفاده از دیالوگ ذخیره (Save File Dialog) بر روی سیستم بود.

اگه از ای پی آی های پایپ برای ارتباط با برنامه های در حال اجرا در سیستم و حتی مانیتورینگ شبکه و رویدادهای اون بگذریم، یه چیزی که خیلی خیلی خیلی باحال بود و روح ما رو شاد کرد و بعد از دیدنش فک مان را تا دو سه روز آویزان نگه داشت: امکان طراحی برنامه برای اجرا به صورت Out-Of-Browser بود.

و سیلورلایت سه، قابلیت اجرای خارج از مرورگر (Out-Of-Browser)، یکی از ایده های ناب بود! دقت کردین که مثلا یه سایتی دارین که خیلی خوشگل مشگل با جاوا اسکریپ نوشته شده و کلی هم امکانات گذاشته شده! ولی اون همه اسکریپت هر بار که برنامه میخواد اجرا بشه باید لود بشه که کلی حجم و زمان میگیره! حالا تصور کنین یه برنامه ای داشته باشین که فایلها رو یه بار دانلود کنه و خودش مدیریت کنه و هر بار که کاربر میخواد به اون سایت مراجعه کن اونها رو لود کنه!

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

هرچند وقتی برنامه تو حالت خارج از مرورگر اجرا میشه، اینتروپ اچ تی ام ال دیکه در اختیارمون نیست ولی کلیدهای فانکشن (Fهای بالا کیبورد) در اختیارمون قرار میگیره که میشه باهاشون شورتکات کی تعریف کرد.

۰ نظر موافقین ۰ مخالفین ۰ ۱۳ آذر ۹۱ ، ۰۹:۱۷
علی تقوی جو