
GitHub و مهاجرت از Flash به Canvas
Tom Preston یکی از گرداندگان سایت GitHub در خبری که اخیرا منتشر کرده است، اظهار داشته که "برای آشنائی بیشتر با Canvas و همچنین از آنجا که Apple اعلام کرده است در نسل جدید محصولات IPod خود از Flash پشتیبانی نخواهد کرد ما را بر آن داشت تا موتور سازنده گراف ها که در سایت استفاده می شوند را دوباره از ابتدا طراحی کنیم"
البته این اولین وب سایتی نیست که از Flash به Canvas مهاجرت کرده است، اما Tom Preston جمع بندی بسیار جالبی به عنوان دلیلی بر این مهاجرت ارائه کرده است.
مواردی که Canvas بهتر از Flash است:
حجم برنامه مورد نیاز برای ساخت یک گراف یکسان در Canvas کمتر از Flash است و این خود باعث کاهش حجم لازم برای بارگذاری بر کامپیوتر بازدید کننده شده، برای مثال بخش اصلی گراف های ما سابقا در حد 111 کیلوبایت حجم داشتند اما هم اکنون کمتر از 25 کیلوبایت حجم دارند.
Flash بر روی لینوکس به خوبی کار نمی کند.
Canvas از قابلیت های Inspect و Debug در مرورگر وب پشتیبانی می کند.
پشتیبانی Canvas از حرکت موس و کنترل آن بسیار بهتر از Flash است.
برای کنترل Event های KeyBoard نیازی نیست حتما بر روی گراف focus شده باشد.
مواردی که Flash بهتر از Canvas است:
در Canvas اجبارا باید redraw کردن را به صورت دستی پشتیبانی کرد و حالت خودکار ندارد.
پشتیبانی از Font های توکار در Flash وجود دارد ولی در Canvas وجود ندارد.
قابلیت HTML Fragment در Canvas وجود ندارد و این یعنی برای نمایش چند صد شئ در Canvas می بایست چند صد بار drawElement را فراخوانی کرد اما با HTML Fragment می توان چند صد شئ را تنها با یک بار فراخوانی drawElement نمایش داد که متاسفانه Canvas آن را پشتیبانی نمی کند.