بررسی بهترین ویرایشگرهای متن آنلاین برای توسعه دهندگان وب

یکی از تصمیمات مهمی که هر توسعه دهنده وب هنگام ایجاد یک وب سایت خواهد گرفت، همانا انتخاب یک ویرایشگر متن مناسب است. بسیاری از سیستم های مدیریت محتوای تحت وب، برای تولید محتوای متنی، ویرایشگرهایی با امکانات قالب بندی متون غنی (Rich Text) به کاربرانشان ارائه می دهند. نمونه های این ویرایشگرها را در هنگام نوشتن مطلب جدید در وبلاگ هایتان دیده اید. به طور مثال وردپرس، برای ایجاد مطلب یا صفحه، یک ویرایشگر با امکانات قالب بندی متن، درج تصویر و لینک در متن به شما می دهد.

rte

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

TinyMCE

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

FCKeditor

ویرایشگریست که سعی می کند بیشتر امکانات ویرایشگرهای تحت دسکتاپ مانند MS Word را در وب پیاده سازی کند. سبک است و برای استفاده از آن احتیاجی به نصب در کامپیوتر کلاینت ندارد. این ها جملاتی است که در وب سایت رسمی FCKeditor در وصف آن نوشته شده اند. این ویرایشگر قدرتمند با تمامی مرورگرهای استاندارد سازگار است و با بیشنر زبان های برنامه نویسی تحت وب مجتمع می شود. امکانات مناسب برای قالب بندی متن، پشتیبانی از CSS، آپلود تصاویر، مرور فایل های روی سرور، ایجاد جدول، درج فرم فیلد، منوی راست کلیک (Context Menu) اختصاصی، پوسته اختصاصی، تشخیص خودکار مرورگر کاربر و خروجی HTML مطلوب از قابلیت های این ویرایشگر هستند.

Yahoo! UI Editor

یاهو یکی از پیشرو ترین شرکت های وب در زمینه تولید ابزارهای مربوط به توسعه دهندگان وب است. کنترل Rich Text Editor یاهو یکی از بهترین و قدرتمند ترین راه حل ها در این زمینه است. از امکانات این ویرایشگر میتوان به مجوز اوپن سورس، قابلیت های خوب قالب بندی متون، پشتیبانی از مرورگرهای مختلف، تنظیمات قابل انعطاف، پشتیبانی از قابلیت کشیدن و رها کردن و روش شیء گرا در برنامه نویسی آن اشاره کرد. این کنترل جزئی از پروژه کتابخانه YUI شرکت یاهو! است.

FreeRichTextEditor

یک ویرایشگر قدرتمند و مبتنی بر جاوا اسکریپت که با اضافه کردن فقط سه خط کد به صفحات خودتان می توانید به کاربران خودتان لذت استفاده از یک ویرایشگر زیبا و قوی را بدهید. ظاهر این ویرایشگر شبیه به MS Word ساخته شده که کاربران با آن احساس نا آشنایی نکنند. تقریباً تمام امکاناتی که از یک ویرایشگر تحت وب انتظار دارید، FreeRichTextEditor دارای آن می باشد.

NiceEdit

یک ویرایشگر بسیار سبک، کم حجم و با نصب آسان است که روی تمام مرورگرها و سیستم عامل های موجود به خوبی کار می کند. هر چند مانند TinyMCE و FCKeditor قوی نیست و امکانات کمتری دارد اما برای کسانی که یک ویرایشگر ساده و بدون دردسر نیاز دارند بسیار مناسب است. این ویرایشگر سبک فقط 35کیلوبایت حجم دارد و فقط از دو فایل (js و icon) تشکیل شده است. این را با تعداد فایل های دیگر ویرایشگر ها مقایسه کنید. پشتیبانی از متد HTTP Post و AJAX برای ذخیره متن خروجی، کم حجم بودن، اسفاده آسان هم برای برنامه نویسان و هم برای کاربران نهایی، تنظیمات قابل انعطاف و پشتیبانی از تمامی مرورگرهای استاندارد از مزایای استفاده از NiceEdit هستند.

FreeTextBox

پر استفاده ترین ویرایشگر متن در دنیای ASP.NET است. بسیاری از وب سایت های مبتنی بر تکنولوژی ASP.NET از FreeTextBox به عنوان ویرایشگر HTML استفاده می کنند. کاملاً با IE و فایرفاکس سازگار است و امکانات خوبی به کاربر نهایی جهت قالب بندی متن می دهد. نسخه های اخیر این ویرایشگر روی پلت فرم مونو هم اجرا می شود.

RTE ASP.NET Control

اگر شما هم مثل من یک برنامه نویس ASP.NET هستید، حتماً با User Controlها آشنایی دارید. هدف این پروژه در کدپلکس جمع آوری تمامی امکانات یک ویرایشگر متن غنی در یک کنترل ASP.NET است. فایل dll این ویرایشگر را به شاخه bin پروژه خود اضافه کنید و به راحتی در هر صفحه ای که خواستید از آن استفاده کنید. متاسفانه کیفیت خروجی این کنترل هنوز به سطح مطلوبی نرسیده و به جز IE و فایرفاکس، از مرورگر دیگری پشتیبانی نمی کند.

Silverlight RichTextEditor

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

farasun.wordpress.com

مشترک فید فراسان شوید! نمی دانید فید چیست!؟

مطالب مرتبط :

آشنایی با وب فرم ها در ASP.NET

ASP.NET فریم ورک قدرتمند مایکروسافت برای ایجاد وب اپلیکیشن های تجاری و بزرگ است. این فریم ورک با پشتیبانی مایکروسافت و داشتن یک محیط قدرتمند و سریع توسعه به نام Visual Studio به یکی از محبوب ترین و قدرتمند ترین ابزارهای توسعه وب تبدیل شده است. در این نوشته قصد داریم مروری بر یکی از ویژگی های اساسی ASP.NET به نام Web Forms بپردازیم.

Web Forms پایه و اساس ASP.NET است. وب فرم ها قلب و روح ASP.NET هستند. وب فرم ها رابط کاربری وب اپلیکیشن شما را شکل می دهند و راه حلی مناسب برای توسعه ی آن به شما ارائه می کنند. وب فرم ها شبیه به ویندوز فرم ها دارای مشخصات، متدها و رویدادهای کنترل های داخلشان هستند. اجزای رابط کاربری داخل وب فرم ها بر اساس درخواستی که به آن ها فرستاده می شود، به زبان نشانه گذاری مناسب (مثل HTML) رندر می شوند.

وب فرم ها شامل دو قسمت هستند : قسمت بصری (فایل aspx)، و Code Behind که هر کدام در کلاس های جداگانه ای قرار می گیرند. فایل aspx کدهای مربوط به طراحی وب فرم ها را شامل می شود و Code Behind شامل کدهای منطق برنامه و رویدادهای مروبط به کنترل های سمت سرور است. Code Behind می تواند به زبان ویژوال بیسیک یا سی شارپ نوشته شود.

asp-dot-net-web-forms

از مزایای استفاده از وب فرم ها می توان به نکات زیر اشاره نمود :

  • جداسازی منطق برنامه از کدهای HTML
  • استفاده از مدل برنامه نویسی مبتنی بر رویدادها
  • کد کامپایل شده و پشتیبانی از چند زبان برنامه نویسی
  • مجموعه ای از کنترل های سمت سرور که قادر به شناسایی مرورگر کاربر هستند و بر اساس آن کد زبان نشانه گذاری (مثل HTML یا WML) را تولید می کنند
  • به شما اجازه می دهند تا کنترل های جدید با قابلیت های جدید به آن اضافه کنید
  • کد کمتری برای کارهای مختلف همچون بایند کردن داده های بانک اطلاعاتی به کنترل ها خواهید نوشت
  • زمان توسعه را به حداقل می رساند و بهره وری را افزایش می دهد

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

کنترل های HTML همانطور که از نامشان پیداست شامل همین کنترل های معمول HTML مانند Button, Text Field, Text Area, Dropdown هستند. اگر تا به حال از نرم افزارهای ویرایشگر HTML برای طراحی رابط کاربری وب استفاده کرده باشید، کاملاً با این کنترل ها آشنایی دارید. شما می توانید از کنترل های استاندارد HTML در وب فرم ها استفاده کنید. کنترل های HTML که در ویژوال استادیو یافت می شوند همان هایی هستند که در Front Page هم پیدا می شدند. این کنترل ها نیازی به پردازش تحت سرور ندارند و به سادگی توسط مرورگر رندر می شوند. هر چند شما می توانید با اضافه کردن runat=»server» به مشخصات هر یک از کنترل های HTML کاری کنید تا به رویدادهای تحت سرور هم پاسخ گوید.
کنترل های وب فرم روی سرور ساخته می شوند و پس از اینکه وظیفه ای که برایشان مشخص شده را به انجام رساندند، کد HTML متناظر را تولید کرده و به خروجی می فرستند. این کنترل ها برخلاف کنترل های استاندارد HTML، هوشمند هستند؛ یعنی قادر به تشخیص مرورگر کاربر و فرستادن کد زبان نشانه گذاری مناسب هستند. به طور مثال اگر مروگر کاربر فایرفاکس باشد، کد HTML مناسب با آن را تولید می کنند و اگر کاربر بوسیله یک گوشی هوشمند درخواستی فرستاده باشد، کد WML را به خروجی می فرستند. تمام کنترل های وب فرم از یک کلاس عمومی با نام System.Web.UI.WebControls مشتق می شوند. این کلاس پایه مجموعه ای از مشخصات عمومی را برای کنترل های وب فرم پیاده سازی می کند.

وب فرم ها چگونه کار می کنند؟

مانند ویندوز فرم ها، رویدادهایی به صورت پشت سر هم و یا بر اساس درخواست کاربر در وب فرم ها اتفاق می افتند. رویدادهایی مانند Load, Draw (Render) و Unload برای وب فرم ها اتفاق می افتد. در زمان این اتفاقات ممکن است روال های مختلفی صدا زده شوند یا اشیای مختلفی ایجاد شوند. در ابتدا رویداد Init مقداردهی های اولیه صفحه وب را بر اساس تگ های به کار رفته در فایل aspx انجام می دهد. بعد از این، رویداد Load برای صفحه اتفاق می افتد. رویداد Load جایی است که شما می توانید چک کنید که آیا صفحه برای اولین بار توسط کاربر بارگذاری شده یا توسط کلیک روی یک دکمه، صفحه وب به سرور وصل شده و به اصطلاح به خودش Post Back کرده است. در رویداد Load می توانید کاری کنید که برخی اعمال فقط برای اولین بارگزاری صفحه وب انجام شوند؛ مثل بایند کردن داده های دیتابیس به کنترل ها. سپس اگر صفحه Post Back شود، رویدادهای کنترل های روی وب فرم ها اتفاق می افتند. مثلاً هنگامی که روی یک دکمه کلیک می شود، صفحه وب اطلاعاتی را به سرور می فرستد و دوباره به صفحه بر می گردد. در این صورت رویداد کلیک برای دکمه فوق اتفاق افتاده و کدی که شما برای آن نوشته اید اجرا شده است.

االبته قبل از Dispose شدن صفحه وب، رویداد Page_Unload هم اتفاق می افتد. به این علت که صفحه از قبل رندر شده و رویدادهای مورد نیاز کاربر اتفاق افتاده اند، این رویداد بیشتر به منظور عملیات لاگینگ استفاده می شود. پس از این رویداد صفحه وب از حافظه سرور حذف می شود.

farasun.wordpress.com

Subcribe to Farasun feedمشترک فراسان شويد

farasun.wordpress.com

مطالب مرتبط :

پ.ن : این مطلب در جهت معرفی ASP.NET نوشته شده و مقدمه ای بود در مورد ویژگی های آن. از این پس بیشتر در مورد ASP.NET مطلب خواهم نوشت. دوستان ایراد میگرفتن که چرا در این مطلب از PHP طرفداری کردم و از ASP.NET مطلبی نمی نویسم. از این به بعد از هر دو مطلب خواهم نوشت!

با فریم ورک های PHP هرچه سریعتر وب سایت بسازید!

برای برنامه نویسان PHP

php-logoبا فراگیر شدن وب و وب سایت های اینترنتی، ابزارهای گوناگونی برای تولید برنامه هایی مبتنی بر وب عرضه شد. یکی از ابزارهایی که در این چند سال اخیر توانست قسمت اعظمی از بازار تولید نرم افزارهای تحت وب را تسخیر کند بی شک PHP بوده است. PHP زبان اسکریپت نویسی ساده ای است که شامل کتابخانه ها و توابع نقریباً کاملی برای استفاده در برنامه های تحت وب است و کمتر نیازی در وب یافت می شود که با PHP نتوان آن را رفع نمود. PHP توانست در این چند سال علاقه مندان فراوانی را جذب خود کند و پروژه های بسیار قدرمتند و معروفی همچون وردپرس به این زبان نوشته شده اند.

PHP از نسخه های اولیه تا به حال تغییرات زیادی کرده است و فریم ورک های بسیاری برای هرچه سریع تر نوشتن برنامه های تحت وب توسط شرکت ها و افراد مختلف عرضه شده است. یک فریم ورک PHP به شما کمک می کند تا وب سایت های خود را سریع تر و مناسب تر از همیشه بسازید. در این مطلب قصد داریم شما را با چندتا از بهترین فریم ورک های PHP آشنا کنیم.

Zend Framework : این فریم ورک که از طرف سازندگان PHP عرضه شده است، یکی از کاملترین فریم ورک های PHP است. دارای توابعی برای تامین امنیت وب سایت های شما و همچنین توابعی برای استفاده از سرویس های وب 2.0 مثل سرویس های گوگل، یاهو، آمازون و فلیکر است. این فریم ورک بر روی ساخت وب سایت های کاربردی و وب سرویس ها با رویکرد وب 2.0 تمرکز دارد.

zend-framework

CakePHP : یکی از قدرتمند ترین فریم ورک های PHP با روش استفاده آسان و پشتیبانی از مدل های طراحی MVC و ORM. این فریم ورک زمان توسعه و کدنویسی را به حداقل ممکن می رساند و کمک می کند تا برنامه های تحت وب قدرتمندتری بسازید.

Qcodo : فریم ورک اوپن سورس برای PHP 5 که به شما در ساخت وب سایت های کاربردی کمک بسیاری می کند. توسعه دهندگان به جای اینکه هفته ها وقت خود را صرف کارهای تکراری بکنند، می توانند به سادگی از توابع از پیش تعریف شده در این فریم ورک بهره ببرند. این فریم ورک کاملاً بر اساس برنامه نویسی شیء گرا پیاده سازی شده است و پلت فرمی برای ایجاد سریع برنامه های تحت وب فراهم می کند.

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

Seagull : فریم ورک اوپن سورس که با مجوز BSD توزیع شده است. به توسعه دهندگان PHP امکانات و ابزارهای مختلفی ارائه می کند تا برنامه های خود را هر چه سریع تر و کاراتر تولید کنند. همچنین این فریم ورک قابلیت های خوبی برای توزیع برنامه های PHP روی وب یا به صورت محلی (Local host) در اختیار برنامه نویسان قرار می دهد و دارای اجتماع کاربری مناسبی است.

Solar : فریم ورکی برای نوشتن سریع وب سایت هایی است که با PHP 5 ساخته می شوند. این فریم ورک از مدل های طراحی تجاری پشتیبانی می کند و به صورت توکار از بومی سازی (Localization) پشتیبانی می کند.

Prado : فریم ورکی است بر اساس کامپوننت که شما را قادر به ساختن برنامه های تحت وب به زبان PHP با قابلیت های برنامه نویسی شیء گرا می کند.

Codeigniter : یکی از قدرتمند ترین فریم ورک های PHP است که به توسعه دهندگان امکان ساخت وب سایت هایی با کارایی بالا را می دهد. این فریم ورک دارای آموزش های مناسب و مستندات بسیار است تا شما هر چه آسان تر نحوه ی کار با آن را یاد بگیرید.

AjaxAC : فریم ورک اوپن سورس برای استفاده از تکنولوژی Ajax در برنامه های مبتنی بر PHP است.

xAjax : کتابخانه ای از کلاس ها برای استفاده از تکنولوژی Ajax در زبان PHP است. با این کتابخانه کلاس می توانید با استفاده از جاوا اسکریپت، CSS، HTML و PHP برنامه های تحت وب  قدرتمند و با بازدهی بالا بنویسید.

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

farasun.wordpress.com

Subcribe to Farasun feedمشترک فراسان شويد

farasun.wordpress.com

مطالب مرتبط :

تفاوت «دات نت» از نظر گوگل و مایکروسافت!

با جستجوی کلمه «dot net» در جستجوگرهای گوگل و لایو به این نتیجه می رسیم که گوگل منظور کاربر را تکنولوژی دات نت مایکروسافت تعبیر می کند ولی جستجوگر لایو مایکروسافت به کاربر پیشنهاد استفاده از سرویس های اینترنتی سایت dotnet.com را می دهد. مثل اینکه گوگل نظر بهتری نسبت به پلت فرم دات نت دارد تا خود مایکروسافت 🙂

farasun.wordpress.com

Subcribe to Farasun feedمشترک فراسان شويد

farasun.wordpress.com

مطالب مرتبط :

این وبلاگستان عقب مانده!

همگی ما با مفهوم «جستجو» و موتورهای جستجو در اینترنت آشنایی داریم و نحوه استفاده از موتورهای جستجو را کم و بیش بلدیم. بسیاری از بازدیدکننده های یک وبلاگ یا وب سایت را موتورهای جستجو تامین می کنند. بیش ار نیمی از بازدیدکننده های همین وبلاگ را نیز موتورهای جستجوی مختلف تامین می کنند. از واژه های غیرتخصصی و عام که بگذریم، اگر شما یک واژه تخصصی جدید را جستجو کنید تقریباً به زبان فارسی چیزی پیدا نخواهید کرد و یا دست و پا شکسته به مطلبی خواهید رسید که دردی از شما دوا نخواهد کرد. اینجا اصلاً بحث این نیست که می توان به راحتی مقالات انگلیسی را پیدا، ترجمه و استفاده کرد، بحث ما عقب ماندگی وب فارسی است، بحث ما عقب ماندگی وبلاگستان فارسی است.

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

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

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

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

قبل از یادگیری Silverlight به چه مهارت هایی نیاز دارید؟

این سئوال برای خیلی از برنامه نویسانی که قصد شروع یادگیری سیلورلایت را دارند پیش می آید. قبل ازاینکه شروع به یادگیری سیلورلایت کنیم باید چه مهارت هایی داشته باشیم؟ آیا برای یادگیری سیلورلایت باید یک برنامه نویس حرفه ای ASP.NET باشیم؟ نیازی به یادگیری JavaScript یا XML خواهیم داشت؟ در واقع پیش نیازهای یادگیری سیلورلایت چه چیزهایی است؟

سئوال بسیار خوبی است! به صورت ساده جواب این سئوال معلوم است. شما برای یادگیری سیلورلایت به هیچ مهارت خاصی نیاز ندارید. علاقه و کمی پشتکار تمام چیزی است که شما لازم خواهید داشت. در واقع کاملاً معقول و امکان پذیر است که شما سیلورلایت را به عنوان اولین تجربه برنامه نویسی خود انتخاب کنید… اما پروسه یادگیری شما کمی طولانی تر و دردناک تر خواهد شد!!!

Silverlight

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

خب حالا که یک برنامه نویس دات نت شدید! بهتر است آشنایی مختصری هم با مفاهیم زیر داشته باشید :

  • HTML : زبان نشانه گذاری صفحات وب. یادگیری HTML بسیار آسان تر از آن چیزی است که فکر می کنید.
  • JavaScript : حداقل مفاهیم پایه ای این زبان را یاد بگیرید.
  • DHTML : نیازی نست حرفه ای شوید، فقط مفاهیم آن را بدانید.
  • مفاهیم پایه برنامه نویسی (مثل دستورات شرطی، حلقه ها، رویدادگرایی و …)

موارد بالا را به راحتی می توانید با خواندن چند کتاب کوچک یا مقالات وب سایت های مختلف یاد بگیرید. شاید الان این سئوال برای شما پیش بیاید که «پس ASP.NET چی؟ نباید آن را یاد بگیریم؟». برای جواب به این سئوال موارد زیر به شما کمک خواهد کرد :

  • ASP.NET : تا وقتی نخواهید دو تکنولوژی سیلورلایت و ASP.NET را با هم ادغام کنید نیازی به آن ندارید. اما برای مبدل شدن به یک توسعه دهنده وب حرفه ای احتیاج زیادی به ASP.NET خواهید داشت.
  • XML : تا نیازی بهش پیدا نکنید، لازم نیست. اما یکی از نیازهای اساسی مبدل شدن به یک متخصص و حرفه ابست.

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

همان طور که قبلاً گفتم، برای یادگیری یک تکنولوژی جدید، مشاهده و یادگیری مثال های کاربردی و عملی بهترین گزینه اند. اگر از اینترنت پر سرعت بهره می برید، ویدئوهای آموزشی سیلورلایت را از دست ندهید.

وب سایت اختصاصی آموزش Silverlight

farasun.wordpress.com

Subcribe to Farasun feedمشترک فراسان شويد

farasun.wordpress.com

مطالب مرتبط :

تحت وب یا تحت ویندوز!

این پست رادمان، توجه من را به مسئله ای مئطوف کرد که چند وقتی است موضوع بحث داغ بین افراد مختلف در زمینه برنامه نویسی سیستم های نرم افزاری است. این که برنامه هایی که تولید می کنیم تحت وب کار کند یا تحت ویندوز، مسئله ای است که جواب آن در نیازهای یک محصول نهفته می باشد. در اینجا این مسئله را در مورد کشور خودمان یعنی ایران مورد بحث قرار می دهیم. همان طور که می دانید در کشورهای پیشرفته دسترسی به اینترنت پر سرعت برای همه افراد جامعه آسان است و آن ها برای استفاده از نرم افزارهای تحت وب معمولاً مشکلی ندارنت�ت ویندوز یا ت�ت وب؟!!د و هر روز شاهد گسترش نرم افزارهای تحت وب در میان این قشر هستیم. همچنین به علت استفاده ی تقریباً صد در صد شرکت های دولتی و خصوصی کشور ایران از سیستم عامل ویندوز، در اینجا بحث ما بر سر نرم افزارهای تحت وب و تحت ویندوز خواهد بود. در این مطلب نگاهی به تفاوت های نرم افزارهای تحت وب و تحت ویندوز خواهیم داشت.

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

تفاوت مهم دیگر در این نرم افزارها، مسئله ی توزیع یا Deployment است. معمولاً تولید کنندگان نرم افزارهای تحت ویندوز، محصولات خود را به صورت بسته های آماده ی قابل نصب (Setup) توزیع می کنند. این بسته ها به صورت یک برنامه ی کاربردی جداگانه و معمولاً به صورت قدم به قدم کاربر را در نصب و آماده کردن نرم افزار یاری می کنند. این روش هر چند ساده به نظر می آید ولی در برخی مواقع کاربران بسیار مبتدی با همین بخش نیز مشکل خواهند داشت. اما در نرم افزارهای تحت وب، یک بار برای همیشه برنامه را روی سرویس دهنده نصب می کنیم و کاربران بدون هیچ دردسری با استفاده از یک مرورگر از آن استفاده می کنند.

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

تتیجه؟

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