مدت ها بود قصد داشتم بخش ها و قابلیت های فلش پلتفرم را معرفی کنم . الان این فرصت دست داد . متنی که پیش رو دارید ترجمه مقاله ای است که در سایت ادوبی قرار داده شده بود . ترجمه آزاد بوده و بخش هایی از متن حذف و اضافه شده است . به هر حال سعی بر روان بودن متن داشتم . اگر اینطور نشد دوستان بر من می بخشند .
Adobe Flash Platform بستری است برای ایجاد برنامه های قوی ، برنامه های مدیریت محتوا وبرنامه های ویدیویی در همه سیستم عامل ها و دستگاه های مختلف از رایانه های شخصی گرفته تا موبایل و تلوزیون . Adobe Flash Platform بستری است آماده استفاده برای بیش از ۹۸ درصد از کاربران رایانه های رومیزی .
Flash Platform شامل تکنولوژی های مختلفی است و بخش های مختلفی را در بر میگیرد این بخش ها شامل : client runtimes, tools, frameworks, servicesو servers می شوند، که فراهم کننده همه نیاز های شما در زمینه ارائه برنامه های قدرتمند اینترنتی(Rich Internet Application (RIA) ) و پوشش دادن طیف وسیعی از مخاطبان خواهد بود .
در ادامه مقاله با بخش های مختلف Flash Platform شامل سرفصل های زیر آشنا میشویم :

Runtimes
در مرکز تمام بخش های Flash Platform ، Runtimes قرار دارد . این بخش ، بخشی است که کاربران با آن سروکار دارند و شامل دو نرم افزار می شود . فلش پلیر برای اجرا، روی مرورگرها و ایر(َAir) برای اجرای روی دسکتاپ . runtimes بستری برای اجرای برنامه های پلتفرم فلش است .
بیش از ۹۸ درصد از کاربران بر روی سیستم های خود Adobe Flash Player را نصب کرده اند و تقریبا ۸۰ درصد از آن ها ظرف مدت ۹ ماه نسخه های جدید را بروز رسانی می کنند . در اکثر مواقع فرآیند ارتقا در فلش پلیر بدون باز شدن صفحه جدیدی در مرورگر و توسط نسخه های قبلی فلش پلیر به صورت بلادرنگ به اجرا در می آید . بیش از ۸۵ درصد از محبوب ترین سایت ها غالبا در بخشی از سایت خود و یا در تمامی آن از فلش استفاده کرده اند و تجربه ای غنی را برای کاربران خود به ارمغان می آورند . فلش پلیر بسیار غنی شده است و بهبود رابط بصری کاربر ، امکان برنامه نویسی شی گرا ، برنامه نویس مبتنی بر فریم ها و پخش موزیک و ویدیو امروزه در دسترس کاربران و برنامه نویسان است .
فلش پلیر علاوه بر فراهم آوردن امکانات غنی تر برای توسعه دهندگان و برنامه نویسان ، ثبات و پایداری را نیز برای کاربران خود به ارمغان آورده است . برای کسانی که دوست ندارند از جاوا اسکریپت و html برای توسعه سایت های کاربردی قوی استفاده کنند ، فلش پلیر برای تمامی مرورگرها و تمامی سیستم عامل ها در دسترس است. هر چند شما امروزه می توانید برنامه های تعاملی را با فلش و جاوااسکریپت ایجاد کنید و این امکان به صورت بالعکس هم موجود است .
فلش پلیر از پخش همزمان (Stream) و بلادرنگ ویدیو و موزیک پشتیبانی میکند . اکنون بیش از ۸۰ درصد محتوای ویدیویی قرارگرفته برروی وب با فلش پلیر سازگار است و بیش از ۹۷ درصد مردم از فلش پلیر برای دسترسی به ویدیو استفاده می کنند .
فلش پلیر یک بستر برای اجرای برنامه های های کاربردی تحت مرورگر وب شماست . شما همچنین می توانید برنامه های کاربردی تحت وب هم در آژاکس و هم در فلش را بر روی دستکتاپ خود به وسیله Adobe Air اجرا کنید .Air به شما اجازه می دهد برنامه هایی بنویسید که بخشی از کد آن بر روی وب وبخشی از کد بر روی دسکتاپ قرار دارد . Air در زمینه نرم افزار های تلفیقی دسکتاپ و وب بسیار قدرتمند عمل می کند . برای کسانی که به دنبال این هستند که برنامه های وب را بر روی دستکتاپ اجرا کنند Air می تواند در وقت و هزینه آن ها صرفه جویی بسیار زیادی کند .
Adobe Air یک سیستم Runtime برای دسکتاپ است که فلش پلیر ، SQL Lite و موتور WebKit را داراست . از آنجایی که برنامه های مبتنی بر Air مستقل از برنامه های تحت وب هستند می توانند اختیاراتی در اختیار برنامه نویس قرار دهند که در وب وجود ندارد ، مانند کار با File System ( خواندن ، نوشتن ، ساخت و حذف پوشه ها) . Air این قابلیت را دارد که اتصال به شبکه را تشخیص دهد . Air می تواند با انواع پایگا های داده محلی ارتباط بر قرار کند و همچنین تبادل داده را بین یک پایگاه داده محلی و پایگاه داده بر روی سرور انجام دهد . Adobe Air از ویندوز ، سیستم فایل ، منو ها و مواردی از این دست هم پشتیبانی کامل به عمل می آورد
Tools
در این بخش نرم افزار های تولید محتوا برای Runtime های معرفی شده Flash Player و Adobe Air قرار می گیرند . Adobe Flash Professional نرم افزاری است که برای ترسیمات گرافیکی ، کار با timeline و همچنین انیمیشن استفاده می شود .Flash Catalyst نرم افزاری است برای ایجاد محتوای فلش با کمترین میزان نیاز به کد نویسی و Flash Builder برای تولید محتوای فلش مبتنی بر کد استفاده می شود.
قدیمی ترین عضو این خانواده است در سال ۱۹۹۴ ایجاد شده و نزدیک به یک دهه ، تنها نرم افزار، برای تولید محتوای فلش است .بیشتر برای ساخت انمیشن ، مالتی مدیا و کار با ویدیو استفاده می شود .
در طول این ده سال طراحان دریافتند که فلش تنها یک نرم افزار برای تولید محتوای مالتی مدیا نیست . بلکه میتوان از فلش برای خلق یک نرم افزار و سایت اینترنتی غنی نیز بهره برد . در کنار کاربردهایی که ذکر شد Action Script برای کنترل برنامه ها و واسطه های کاربری به وجود آمد. اکشن اسکریپت زبان اصلی فلش مبتنی بر ECMA Script است .
با ظهور برنامه های فلش بر روی وب ، طراحان بیشتر و بیشتر برای خلق برنامه های قوی و قدرتمند ، تحت وب علاقمند شدند . محیط توسعه فلش یک محیط بصری است به هر حال کم کم نیاز به یک محیط کد نویسی اصلی و ابزار های بصری جانبی برای برنامه نویسان سنتی آشکار شد . بدین شکل Flash Builder در سال ۲۰۰۴ شکل گرفت .
Flash Builder (قبلا با نام Flex Builder منتشر می شد) یک پلاگین است بر روی نرم افزار متن باز Eclipse ، که امروزه مورد کاربرد سطح وسیعی از برنامه نویسان است. فلش بیلدر یک ویرایشگر کد است که قابلیت اشکال زدایی و کامپایل را دارد و همچنین دارای ابزار هایی برای ایجاد واسط گرافیکی کاربر به صورت بسیار شکیل است . شما برای کار با این برنامه به دو زبان Action Script و MXML احتیاج دارید. MXML یک زبان مبتنی بر XML ( زبان برچسب گزاری تگ ها) است که تحت فریم ورک Flex به شما اجازه می دهد هر گونه رابط گرافیکی کاربر را خیلی سریع بسازید . وقتی شما نرم افزار خود را کامپایل ( ترجمه) میکنید MXML تبدیل به کد های Action Script شده و بعد تمامی کد های Action Script تبدیل به فایلSWF می شوند . به طور معمول MXML برای لایه بندی محیط گرافیکی برنامه و اکشن اسکریپت برای برنامه نویسی منطق و محاسبه استفاده می شود .
فلش کاتالیست ابزار جدیدی است برای ساخت محیط های مالتی مدیا و تعاملی مبتنی بر فلش ، بدون زدن کد . شما می توانید رابط گرافیکی خود را به صورت ایستا در Adobe Photoshop ، Adobe Illustrator و یا Adobe Fireworks طراحی کرده و سپس به درون فلش کاتالیست import کنید . بعد از وارد کردن رابط گرافیکی ، شما میتوانید تعاملات ، رویدادها ، حرکت ، منوها و سایر موارد از این دست را بسازید . رویداد ها مطابق با timeline است .
Flash catalyst می تواند به راحتی با سایر برنامه ها تعامل کند و پس از ساخت اولیه برنامه ادامه مراحل تولید برنامه را در نرم افزار هایی مانند Flash Builder دنبال کنید یا اینکه مستقیما و به صورت SWF و یا برنامه مبتنی بر Air استفاده نمایید.
Flash Catalyst در سریع کردن و آسان تر نمودن روند ساخت سایت ها و برنامه های فلش نقش بسیار مهمی دارد . برنامه نویس سریع محیط گرافیکی کاربر (User Interface ) را طراحی میکند ودر صورت نیازبه تغییرات در سطح حرفه ای ادامه کار خود را بر روی Flash Builder انجام می دهد . Flash Catalyst برای ساخت انواع برنامه ها مانند پروژه های مالتی مدیا ، وب سایت های شخصی ، راهنمای محصولات ، برنامه های ارائه محتوا به کاربر و … مستقل از سایر برنامه ها نیاز طراحان وب و برنامه نویسان را مرتفع ساخته و از اتلاف وقت به صورت چشمگیری می کاهد.
Frameworks
علاوه بر نرم افزار های معرفی شده ، Adobe چارچوبی برای برنامه نویسان فراهم آورده ، سرشار از توابع غنی و کامل .
Flex Frameworks یک Frameworks رایگان و متن باز است. این Frameworks شامل زبان MXML ، بسته های کلاس به زبان Action Script و خط فرمان برای کامپایل و اشکال زدایی از برنامه هاست . اگر چه Flex Frameworks می تواند به تنهایی به کار برده شود ولی اکثر برنامه نویسان برای سرعت و سهولت بیشتر آن را با IDE نرم افزار Flash Builder به کار می برند . از آنجا که این Frameworks مبتنی بر متن باز است هر برنامه نویسی می تواند با توجه به نیاز های خود پروژه را تغییر دهد . با سیستم سورس کد باز و آزاد ، برنامه نویسان می توانند به رشد Flex Frameworks کمک کنند .
بسته های اکشن اسکریپت موجود در فلکس مانند بلوک ها و کپسول های کوچک است . این بسته کلاس ها شامل اجزای ورودی برای داده ها ( مانند : ورودی متن ، دکمه های رادیویی ، چک باکس ، انتخاب تاریخ و…) ، برای نمایش داده ( Grid , Tree , View) و مالتی مدیا ( مانند : تصاویر ، ویدیو پلیر) است . همچنین دارای کلاس های لایه بندی مانند : عمودی ، افقی ، مرزها ، فرم ها و … است . این کلاس برای کمک به برنامه نویس برای ساخت برنامه های شناور و با لایه بندی آزاد است تا شما بتوانید هر گونه که خواستید در مقابل تغییر اندازه پنجره واکنش نشان دهید .
از دیگر کامپوننت های Flex Framwork می توان به کامپوننت هایی برای تایید اعتبار، فرمت بندی داده ها ، کار با اشیا ، کار با صفحه نمایش ، ناوبری ، کار با مرورگر و بسیاری موارد دیگر اشاره کرد .
یک راه بهتر برای آشنایی بیشتر با کامپوننت های فلکس ، مراجه به وب سایت tour de flex است . در این وب سایت بیش از ۲۰۰ نمونه مثال از فلکس شامل سورس کدها ، مستندات ، فایل های اجرایی و سایر مسائل موجود است . این مثال ها در موضوعات مختلف در دسترس است .
Server
فلش پلتفرم شامل چند برنامه برای” دریافت/ارسال” مطالب و اطلاعات از سرور به سمت برنامه فلش شماست . برای ارسال فیلم و مدیا از سرور بر روی فلش نرم افزار Flash Media Server امکان کار با محتوای متحرک را به صورت بلادرنگ فراهم می کند . برای انتقال اطلاعات و یکپارچه سازی اطلاعات با سیستم های تجاری و فرآیند های کسب و کار ColdFusion ،برای استفاده از سرور J2EE به همراه BlazeDs و برای خدمات داده ای Live Cycle وجود دارد .
شما میتوانید به وسیله ابزارهای گفته شده محتوای فلش به صورت داینامیک و پویا بسازید که قادر به جمع آوری ، بازیابی ، نمایش و ارسال اطلاعات به سرور است .
فلش نحوه ارتباط با سرور را با ابزارهایی که گفته شد به شکل بسیار مطلوبی فراهم کرده است . برای مقایسه سرعت لود برنامه های طرف سرور فلش با Ajax به Data loading benchmark application بروید .
Runtime بسترهای لازم برای کار با اطلاعات را در سمت کلاینت فراهم می کند و برنامه های سمت سرور از کلاینت حمایت کرده و محتوای داینامیک متناسب با نیاز برنامه نویس و کاربر را تولید می کنند. برنامه هایی مثل Live Cycle ، ColdFusion و Blaze DS . اکثر این برنامه های بر روی بستر های Open Source سوار هستند و توسعه آنها به سرعت انجام میشود . همچنین نسخه های تجاری از این نرم افزار ها برای کارکرد های حرفه ای تر در دسترس است .
خانواده Adobe Flash Media Server بستری برای اجرای ویدویوهای همزمان (Real-time ) و ارتباطات مالتی مدیای زنده برای برنامه شما فراهم می آورند . خانواده Adobe Flash Media Serve بستری پیشرو برای انکدینگ FLV ، حفاظت از ویدیوهای همزمان (Streaming) ، ویدیو های کیفیت بالا و حجم بالا ، برنامه هایی که نیاز به ویدیو دارند مثل webcam ، چت ، بازی های Online ، VOIP و موارد دیگر است .
ادوبی” لایو سایکل” بستری برای قابلیت remoting فلش فراهم می آورد تا برنامه های فلش پلتفرم بتواند با داده ها و پیغام های همزمان (Real-Time Data And Message ) کار کنند . لایو سایکل برای نوشتن برنامه های مسنجر و تعاملی با کاربر و سرور کمک می کند. لایو سایکل مشکلات کار با سرور و داده ها ، مثل خطایابی را تسهیل می کند . لایو سایکل برای شما فایل های PDF به صورت بی درنگ و همراه با نمودار ها و متغییر های تصویری را نیز ایجاد می کند .
بخش سرور همچنین توسط برنامه هایی از خانواده ادوبی پشتیبانی میشوند که عضو اصلی فلش پلتفرم نیستند ، اما به روند توسعه برنامه های فلش پلتفرم کمک فراوانی می کنند . از جمله این برنامه ها ColdFusion و BlazeDS است . برای اطلاعات بیشتر در مورد کلد فیوژن به مطلبی که قبلا نوشته ام با عنوان نگاهی به Adobe ColdFusion مراجعه کنید .
Service
علاوه بر بخش های runtime ، ابزارها ، فریم ورک ، سرور و … ادوبی خدماتی برای ارتقا و توزیع برنامه های فلش نیز ارائه می دهد که در سه بخش فعال می باشند . این بخش ها برای کمک به فرآیند توزیع ، فرآیند همکاری و برنامه های شبکه های اجتماعی ، دسته بندی می شوند .
Runtime ، سرور ، فریم ورک ، ابزار ها و سرویس ، بخش های مختلف فلش پلتفرم را تشکیل می دهند . این پلتفرم توسط برنامه های پشتیبانی ، شرکای تجاری و جامعه کاربران حمایت می شود .
ادوبی ، برنامه های پشتیبانی را برای سازمان ها ، کار گروه ها ، توسعه دهندگان و افرادی که در کلاس جهانی با پلتفرم فلش کار میکنند فراهم آورده است تا در مرحله ی توسعه با کمترین مشکلات پشتیبانی مواجه شوند . تیم های ادوبی به سوالات شما پاسخ می دهند . برنامه های پشتیبانی برای به حداقل رساندن هزینه های خرابی برنامه ها در سازمان های بزرگ و آسان کردن روند توسعه برای برنامه نویسان به وجود آمده اند .
“آزمایشگاه ادوبی “فرصت امتحان کردن و کار کردن با تکنولوژی ها و محصولات جدید را قبل از انتشار به شما می دهد .
فلش پلتفرم هر دو طیف شرکای تجاری و اکوسیستم را با هم پوشش می دهد . شرکت ها و راهبران صنعت مانند SAP, SpringSource, Salesforce.com, Zend, Facebook و بسیاری دیگر از این شرکا بستر های توسعه ، پشتیبانی و سرویس ها و خدماتی اضافه بر آنچه ، ادوبی ارائه می کند برای شما فرا هم می آورند .
بیش از یک میلیون نفر از برنامه نویسان و توسعه دهندگان برنامه های اینترنتی غنی از فلش پلتفرم استفاده می کنند و تعداد بسیار بیشتری از جوامع آن لاین و محلی برای به اشتراک گذاری تجربیات و بسط دانش وجود دارند . تعداد و محل این انجمن ها و جوامع ثابت نیست ، ولی تعدادی که ادوبی به آن ها کمک برای رشد و توسعه کمک می کند عبارتند از :
به طور خلاصه :
ادوبی فلش پلتفرم عبارت است از مجموعه ای از فنا وری های یکپارچه ، run-time ، ابزارها ، فریم ورک ، سرور و سرویس است که تواما با هم به همه نیاز های شما برای ایجاد و گسترش برنامه های غنی اینترنتی ( Rich Internet Application ) برای جامعه وسیعی از کاربران ، پاسخگو است . این ترکیب قدرتمند از ابزار های توسعه ، محیطی ایده ال برای رشد و گسترش برنامه های اینترنتی ، در هر سطحی از کسب و کار است .
در ۱۲ دی ماه سال ۱۳۸۸
سلام.ممنون خیلی عالی بود
در ۱۸ اسفند ماه سال ۱۳۸۹
سلام
خیلی عالی بود ، توی این چند ساله واقعا هیچ سایت فارسی ندیده بودم که اطلاعات به این جامعی راجب flash platform داده باشه …
مقاله هاتون عالیه
در ۱۸ اسفند ماه سال ۱۳۸۹
نظر لطف شماست .
در ۰۱ تیر ماه سال ۱۳۹۰
از زحمتی که برای تهیه این مقاله کامل کردید بسیار متشکرم
در ۰۲ آبان ماه سال ۱۳۹۰
ممنونم…