PDA

نسخه کامل مشاهده نسخه کامل : مقاله آموزشی: کلیت فلش و تاریخچه به وجود آمدن آن



blackfox
09-04-2007, 00:36
جای این مقاله خالی بود . منم گذاشتم . امیدوارم لذت ببرید !!:46:
اول از همه بگم که گیر ندید چرا این مقاله رو اینجا گذاشتم و تو انجمن آموزش نذاشتم . دیدم این مقاله بیشتر به درد انجمن فلش می خوره تا جاهای دیگه .
اون دسته از دوستان که با فلش آشنایی ندارند و یا اطلاعاتشون کافی نیست حتما این مقاله به دردشون می خوره .
حرفه ای های فلش هم بخونن بد نیست چون نکات جالبی هست که مطمئنا ازش بی خبرن . ضرر نمی کنن !!

و اما Flash برای چه بوجود آمد ؟
نرم افزار Flash از شرکت Macromedia نرم افزاری است که شرکت ماکرومدیا به عنوان یک Solution یک راه حل در مرحله اول ایجاد کرد برای انتقال تصاویر Vector بر روی وب .

تصاویر Vector به چه معنی است ؟
دو نوع تصویر وجود دارد ، یکی تصاویر Pixel که در اصطلاح به آنها Raster هم گفته میشود و یکی دیگر تصاویر برداری یا Vector .
اوایل که اینترنت به وجود آمده بود سرعتهای Connection اینترنتی در حد سرعتهایی که هم اکنون ما در ایران از آن استفاده میکنیم هم نبود ، چه برسد به آن سرعتی که هم اکنون آمریکایی ها از آن استفاده میکنند . در آن زمان سرعتهای مودمهایی که معمول بود 9600 بیت در ثانیه بود بعد از آن به 14400 بیت در ثانیه تبدیل شد . 9600 یعنی در یک ثانیه 0.9 کیلوبایت میتوانست اطلاعات را Transfer کند . یعنی اگر قرار بود که تصویری ایجاد شود که این تصویر تبلیغات یک محصول قرار بود باشد و این تصویر 50 KB حجمش بود زمانی که لازم بود Data Transfer انجام بشه و تصویر ظاهر بشود در آن مودمها 55 ثانیه بود . در نتیجه انتقال اطلاعات در اینترنت بسیار بسیار کند اتفاق می افتاد . به همین دلیل بود که در HTML های ورژن 1 و 2 مرسوم نبود که از تصویر در سایت وب استفاده کنند و راحت تر بگویم اصلا Tag های مربوط به Image در آن زمان در زبان HTML وجود نداشت .
به تدریج که سرعتها افزایش پیدا کردند و سرعتها به 14400 و 28800 بیت در ثانیه رسیدند ، کم کم تصاویر Pixel در وب مطرح شدند و لی خوب یک چیزایی وجود داشت که هیچ الزامی پشتش نبود که این تصاویر بخواهد Pixel باشد مثلا آرم شرکت یا مثلا یک Title که قرار بود در بالای سایت قرار بگیرد و با یک فونت خاصی هم نمایش داده شود . اینها را اگر به یک شکلی میتوانستیم Vector انتقالشان دهیم خیلی خیلی سبکتر میشدند و در واقع یک صفحه وب هر چه حجمش کمتر باشد در اصطلاح به آن میگویند صفحه وب از لحاظ حجم بهینه است یا بهتره .
در یک نرم افزار گرافیک Vector اگر بخواهیم یک خط ترسیم کنیم ، نرم افزار گرافیک Vector برای ترسیم مختصات نقطه شروع و مختصات نقطه پایان را در خودش ذخیره میکند. یعنی 2 جفت عدد را یا بهتر بگم 4 تا دونه عدد را . ولی در نرم افزار گرافیک Pixel زمانی که بخواهیم یک خط بکشیم باید اطلاعات مربوط به تک تک این Pixel هایی که در روی خط قرار دارند بعلاوه تمام Pixel های دور آن را در خود ذخیره کند و هیچ فرمول ریاضی در این داستان نمیتواند دخالت کند و فقط میتوانیم در فرمتهای مختلف گرافیکی آنها را فشرده سازی کرد .
ولی در هر صورت حجم فایلهای Pixel اصلا قابل قیاس با فایلهای Vector نبود . دو شرکت آمدند و سعی کردند که این کار را انجام دهند ، یعنی آمدند یک قالب و یک روشی را پیدا کنند که فایلها را بتوانند به صورت Vector انتقال دهند. زیرا مرورگرها فقط فایلهای Pixel را میتوانند نمایش دهند .
یکی شرکت Adobe بود که آمد و یک چیزی اختراع کرد به نام SVG (Scalble Vector Graphic) و دیگری شرکت Macromedia بود که آمد و SWF (Shockwave Flash) را اختراع کرد .
پس هدف در مرحله اول انتقال تصاویر Vector بود به هدف سبک تر شدن حجم صفحات .
اما مرورگرهای وب به تدریج توانایی پخش این جریان را نداشتند در نتیجه یک چیزی به وجود آمد به نام Plugin که بر روی مرورگر دستگاه شخص نصب میشود که باعث میشود که آن گرافیک به نمایش در آید. مثلا Flash Player که از اینترنت دانلود میکنیم و یا از روی CD نصب میکنیم، همین نقش را به عهده دارد .
Flash به تدریج که تکامل پیدا کرد خیلی از داستانهای دیگری بود که به آن اضافه شد یعنی مثلا بحث انیمیشن در این برنامه مطرح شد – بحث موزیک در این برنامه مطرح شد – بحث برنامه نویسی در این برنامه مطرح شد .
تا قبل از این جریان که Flash انیمیشن را در خودش قرار بدهد میبایستی برای ساخت انیمیشن های اینترنتی از Gif Animation استفاده میشد که مشکلی که بود این بود که این قضیه باید فریم فریم ساخته میشد و مساله بعدی این بود که Gif Animation ها به صورت PIXEL بودند و Flash تصاویر Vector را به انیمیشن تبدیل میکند و این را هم باید بگویم که ساخت انیمیشن در Flash بسیار راحت تر از ساخت Gif Animation است .
امکان استفاده از موزیک در Flash یک امکان فوق العاده بود که یک استاندارد برای پخش موزیک در وب قرار دارد که این استاندارد MP3 بود .

صدا در در وب :
در گذشته در صفحات HTML فقط از دو نوع فرمت صدا بیشتر استفاده نمیشد . که یکی WAV بود که البته این هم برای کسانی بود که با Internet Explorer و تحت ویندوز کار میکردند و کسانی که با Netscape Navigator از شرکت Sun Micro System تحت Mac Os یا Mac OsX کار میکردند اساسا فایلهای WAV را نمیتوانستند پخش کنند و به جای آن از RIF استفاده میکردند.اینها تنها فرمتهایی بودند که برای صفحات وب استفاده میشدند. این فرمتها یک مشکلی داشتند و آن هم این بود که کمی بزرگ بودند.
• برای اینکه بدانیم این فرمتها چقدر بزرگ بودند باید بگم که فرمت WAV با کیفیت CD ، یک دقیقه برابر 10 مگابایت میشود . یعنی اینکه اگر قرار بود شما مثلا 20 ثانیه موزیک روی صفحه وب خود قرار میدادید ، میشد 3/3 مگابایت که با سرعت اینترنتی که هم اکنون در ایران استفاده میکنیم (حدود 3 کیلو بایت در ثانیه) ، 1100 ثانیه که تقریبا 20 دقیقه طول میکشید که موزیک دانلود شود و پخش شود .
نوع دیگر فرمتهای صوتی MIDI که این نه دیگر مشکل حجم داشت و نه مشکل اینکه روی سیستم عاملهای مختلف اجرا نشود ، ولی مشکل دیگری داشت که از WAV بدتر بود . اجرای فرمت Midi به سینتی سایزر دستگاه کارت صوتی شخص بستگی دارد . یعنی اگر کارت صدایی که روی دستگاه کاربر بود اگر که در سینتی سایزر آن این آلت موسیقی که باهاش موسیقی خود را زده بودید ، بود که بود ، اگر نبود با یک آلت موسیقی دیگر پخش میکند . به طور مثال فرض کنید که یک نوت خاص را با ساکسیفون زده اید را روی دستگاه کاربر با ترومپت (Trompet) پخش کند . و اساسا اسن روشها نه روشهای مطمئنی بود و نه امکان پذیر .
فلش با MP3 جان تازه ای به وب میدهد .
MP3 شدن Sound در فلش، دو حسن داشت ، یکی اینکه دیگر هیچ ربطی به سینتی سایزر دستگاه کارت صوت کاربر ندارد و دیگری اینکه حجم آن حداقل یک دهم حجم فایل WAV است . علتی که میگویم حداقل یک دهم این است که چون فرمت MP3 خیلی هوشمندانه Compress میشود . شما Quality های خیلی پایین تر از CD Quality را هم تفاوت چندانی نمیتوانید حس کنید با موزیکی که با کیفیت CD ذخیره شده باشد . به عنوان مثال اگر کیفیت 128Kbps (کیلو بیت در ثانیه ) را به عنوان CD Quality در نظر بگیرید ، به راحتی شما تا 32Kbps هم میتوانید Quality را پایین بیاورید بدون اینکه افت خیلی محسوسی حس کنید . این بدیم معنی است که حجم فایل جدیدتان را یک چهلم فایل WAV خود کردید . به زبان عامیانه یعنی اون 20 دقیقه را کردید 30 ثانیه . وقتی این اتفاق افتاد حالا دیگر امکان استفاده از موزیک و Sound در وب امکان پذیر شد .

اسکریپت به فلش اضافه شد :
در ورژن 3 فلش ، یک زبان برنامه نویسی برای Flash ساخته شد به نام Lingo LE یا Lingo Light Edition .

Lingo LE چیست ؟
شرکت مکرومدیا یک نرم افزار دیگر دارد به نام Director که این نرم افزار برای ساخت CD های MultiMedia است . که آن هم به صورت Vector کار میکند . نرم افزار Director یک زبان برنامه نویسی دارد به نام Lingo .
• سازنده نرم افزار دایرکتور شخصی است به نام گری لوزنویک (Gary Lozenvik) ؛ این شخص وقتی میخواهد در مورد Lingo صحبت کند میگوید : << برای اینکه بفهمید یک شخص تا چه حد Lingo بلد است ازش بپرسید که چه کارهایی با Lingo نمیشود کرد، اگر گفت که کاری هست که نمیشود کرد بدونید که Lingo بلد نیست >>.
زبان لینگو بسیار شدید قدرتمند است . منتها دیگه زیادی قوی شده و به تمام Resource ها دسترسی دارد . میتواند فایل طرف را Rename کند ، دستگاه طرف را Format کند . یعنی فکر کنید در یک Level ، هر کاری که با زبان برنامه نویسی C میتوانید انجام دهید با Lingo هم میتوانید بکنید . پس این زبان برنامه نویسی اصلا به درد وب نمیخورد . بنابراین آمدند و بسیاری از قابلیتهایش را ازش گرفتند ، جاهایی که میتوانست Resource های کاربر را خراب کند را حذف کردند و یک زبان جدید ساختند به نام Lingo Light Edition ، لینگوی سبک شده ، و این زبان برنامه نویسی ، زبان برنامه نویسی Flash شد در زمان Flash 3 . این داستان ادامه داشت تا Flash 5 که اساسا میگویند انقلاب Flash در این ورژن اتفاق افتاده است .

انقلاب Flash در Flash 5 اتفاق افتاد یعنی چی ؟
شرکت Macromedia بررسی کرد که آقا این آدمهایی که از Flash استفاده میکنند ، هیچ کدومشون Director کار نیستند . این آدمها آدمهایی هستند که کارشون Web Designing است .و هیچ لزومی ندارد کسی که Web Designing میکند قبلا Director کار باشد . کسانی هم که میخواستند بیایند و این زبان را یاد بگیرند دیدند که یک زبان برنامه نویسی جدید یا یک عالمه کد و Syntax های مسخره جدید که باید همه را راد بگیرند .به این دلیل از Lingo LE استقبال نشد .
چیزی که معمولا Web Designer ها به عنوان زبان برنامه نویسی بلد هستند ، زبان برنامه نویسی JavaScript است . آنها آمدند و یک زبان برنامه نویسی جدید ساختند به نام Action Script که این زبان برنامه نویسی از لحاظ ساختار و از لحاظ Syntax بسیار بسیار نزدیک است به JavaScript . یعنی اگر کسی که JavaScript کار میکند بخواهد بیاید ActionScript یاد بگیرد زمان زیادی لازم ندارد که وقت بگذارد . و این را در Flash 5 گذاشتند و این قضیه باعث اقبال عامه شد .
• یکی از دوستانم سوال زیبایی کرد که : << بابا جون شما که اینقدر در مورد Flash میگویید که Flash سبک است ، سبک است ، ما که هر وقتی رفتیم یک سایتی که با Flash طراحی شده ببینیم ، مجبور شدیم نیم ساعت بشینیم جلوی مانیتور تا این نوار به تدریج پر شود و فقط نوشته : Please Wait Movies Loading >> . درست میگوید ؛ درسته ، دلیلشم این است که زمانی که نهایت امکانات فیلمبرداری و فیلمسازی در این حد بود که یک طناب نا مرئی ببندند و یک چیزی به آن آویزان کنند ، بشقاب پرنده ها را به آن شکل می ساختند . حالا نیز با تکنولوژی Z-CAM و Virtual Studio به این شکل می سازند . هنوز هم کار به همون شکل مشکل است ، فقط امکانات بیشتر شده و فضا ها زیباتر . طراح وب وقتی ببیند میتواند انیمیشن بسازد ، موزیک بگذارد ، فیل هوا کند ، همه این کار ها را با هم میکند ، نتیجه آن این میشود که حجم فایل وب خیلی کوچک نمیشه . ولی حالا چقدر از این امکانات با HTML فراهم بود و یا اگر هم کسی این کار را انجام میداد دیگر این سایت روی CD جا میشد ؟ من که فکر میکنم روی CD هم جا نمیشد .

پس ببینید ما داریم با نرم افزاری کار میکنیم که یک سری محسناتی دارد :
1 – امکان ساخت انیمیشن را به ما میدهد .
2 – امکان استفاده از موزیک را در وب برای ما فراهم میکند .
3 – گرافیک آن گرافیک Vector است ، پس Quality خودش را از دست نمیدهد .
4 – این نرم افزار ، زبان برنامه نویسی آن َActionScript است که بسیار شبیه JavaScript است و برای طراحان وب یادگیری آن خیلی مشکل نخواهد بود .
5 – این یکی خیلی مهم است . Flash Player ، آن چیزی که Flash را Play یا اجرا میکند ، روی مرورگر IE روی مرورگر NetScape ، روی Linux RedHat ، روی مرورگر Lindows ، روی همه این مرورگرها یک Player واحد است . بنابراین شما نگرانی این را نخواهید داشت که مثلا این صفحه را که میخواهد باز شود داخل NetScape کار میکند ولی توی IE کار نمیکند . یا اینکه توی IE کار میکند ولی تو اون یکی کار نمیکند . یکی از بزرگترین گرفتاریهای طراحان وب عدم وجود استانداردهای واحد است . و چون این یک Player واحد دارد که روی مرورگرهای مختلف کار میکند ، پس شما تمامی آن نگرانیها را هم از دست داده اید .

خوب امیدوارم این مقاله به دردتون خورده باشه . سلامت باشید :11:

M A T I N
09-04-2007, 11:55
ممنون BlackFox جان ....جالب بود ....
کاش اونایی که با فلش کار نکردن و الکی میگن ضعیفه هم اینجور مقاله ها رو بخونن ...
چون هر کس با فلش کار کنه عاشقش میشه ...

Elfin-D
11-04-2007, 15:16
عالی بود
مخلصیم

mahsoft
12-04-2007, 15:21
blackfox ممنون جالب بود
مهدی

blackfox
12-04-2007, 16:07
قابل نداشت