خلق برنامه های کاربردی استثنایی با javafx script
یکی از جدیدترین اعضای خانواده زبان های برنامه نویسی است که روی پلت فرم جاوا و تنها با نصب (java se) 6 standard edition اجرا می شود. جاوا fx اسکریپت، یک زبان بسیار دینامیک و قابل حمل است که از قدرت و توانایی لازم برای ایجاد واسط گرافیکی کاربر با هر اندازه و هر درجه از پیچیدگی برخوردار است. واسط های گرافیکی ایجاد شده توسط جاوا fx اسکریپت شبیه واسط هایی هستند که با swing نوشته شده اند، با این تفاوت که کد نوشته شده کوچک تر و ساده تر است. هرچند دستور زبان جاوا fx اسکریپت با دستور زبان جاوا متفاوت است، بخش بزرگی از فناوری که این دو زبان بر پایه آنها بنا شده اند یکسان است. تاریخچه جاوا fx اسکریپت (بخش اسکریپت نویسی جاوا fx )، زندگی خود را به عنوان پروژه ای به نام 3f که توسط کریس اولیور انجام می شد آغاز کرد. پیدایش جاوا fx در ماه می سال 2007 برای اولین بار اعلام شد. در ماه می سال 2008 شرکت sun اعلام کرد که نسخه رومیزی و نسخه طراحی شده برای جستجوگرها تا پاییز سال 2008 منتشر می شوند و javafx mobile نیز در بهار سال 2009 در دسترس کاربران قرار خواهد گرفت. از ماه جولای سال 2008 توسعه دهندگان کد می توانستند یک پیش نمایش از javafx sdk را برای ویندوز و مکینتاش بارگذاری کنند. هنوز اطلاع رسمی دقیقی در مورد زمان پشتیبانی جاوا fx از لینوکس وجود ندارد. با اینحال هم اکنون بیشترسرویس های جاوا fx روی لینوکس اجرا می شوند. ویژگی ها جاوا fx اسکریپت مجموعه ای از محصولات نرم افزاری است که برای ایجاد آنچه که برنامه های کاربردی اینترنتی غنی1 و به اختصار ria نامیده می شوند پدید آمد. علاوه بر ria این زبان برای توسعه برنامه های کاربردی تحت وب که ویژگی ها و کاربرد برنامه های کاربردی رومیزی سنتی را داشته باشند، مورد استفاده قرار می گیرد. از میان این برنامه ها می توان به برنامه های کاربردی چندرسانه ای اشاره کرد. محصولات جاوا fx می توانند برنامه های کاربردی برای رایانه های رومیزی، موبایل، تلویزیون و دیگر پلت فرم ها ایجاد کنند.بخش اصلی و اولیه جاوا fx ، جاوا fx اسکریپت نامیده می شود که یک زبان توصیفی است و به منظور ساده تر کردن استفاده از سویینگ برای آن دسته از برنامه نویسان واسط کاربر یا طراحان برنامه های ویژوال که با زبان های اسکریپت نویسی آشنایی دارند ایجاد شد. در جاوا fx اسکریپت، ساختمان کد برنامه نویسی به نحوی طراحی شده است که با ساختار واسط گرافیکی کاربر سازگاری بالایی داشته باشد. از دیگر بخش های جاوا fx ، می توان به جاوا fx موبایل اشاره کرد. جاوا fx موبایل یک سیستم عامل برای تلفن های همراه است. تلفن های هوشمند2 و pda ها از مهم ترین ابزارهایی هستند که در این طرح مورد نظر قرار گرفته اند. جاوا fx موبایل که روی یک هسته لینوکس اجرا می شود، java se و java me را پیاده سازی می کند. جیمز گاسلینگ، از پیشگامان جاوا می گوید: "در بخش هایی از جهان، تلفن همراه یک کاربر، نقش رایانه شخصی رومیزی او را ایفا می کند. این گروه از کاربران هدف اصلی ما در این طرح هستند." هریک از ما می توانیم یکی از اعضای این گروه باشیم. زمانی که سفر می کنیم، تلفن همراه ما در صورت برخورداری از امکانات کافی، جانشین مناسبی برای رایانه شخصی و لپ تاپ خواهد بود. وی در مورد چگونگی پیدایش ایده اصلی این پروژه می گوید: "اکثر زبان های اسکریپت نویسی موجود، در جهت رفع نیازهای صفحات وب کار می کنند. هدف ما طراحی زبانی بود که بیشتر در خدمت واسط های گرافیکی کاربر باشد و نیازهای واسط هایی را که از حجم زیادی پویانمایی برخوردارند برطرف کند."شواهد موجود حاکی از این هستند که جاوا fx از رقبای اصلی flash player ، air و silverlight مایکروسافت خواهد بود. مقایسه جاوا fx اسکریپت و زبان های مشابه تمرکز شرکت سان روی جاوا fx اسکریپت منجر به کند شدن پیشرفت در زمینه بهبود و توسعه سویینگ و قدرت تولید کد توسط آن شده است. اکنون این سوال ذهن بسیاری از برنامه نویسان را به خود مشغول کرده است: آیا تمرکز روی جاوا fx به مرور منجر به نابودی و محو تدریجی سویینگ خواهد شد؟ هرچند جاوا fx با کد جاوا به خوبی کار می کند، سازگاری آن با سویینگ چندان زیاد نیست. در حقیقت برنامه نویسانی که تجربه کار با سویینگ را دارند، لازم است یک مدل جدید برنامه نویسی، api و حتی کار با ابزارهای جدیدی را فراگیرند تا بتوانند پروژه های مشابهی را با جاوا fx اسکریپت پیاده سازی کنند. از طرف دیگر، برخی از اجزای موجود در سویینگ مانند jtable در محیط جاوا fx اسکریپت کار نمی کنند و کد نویسی برای آنها باید مجددا انجام شود. به عبارت دیگر، اگرچه سویینگ و جاوا fx اسکریپت می توانند با هم کار کنند، دو فناوری کاملا مجزا برای توسعه واسط کاربر3 هستند. عمر سویینگ تقریبا به یک دهه می رسد و در زمانی که بسیاری از فناوری های دیگر با مشکلات متعددی دست به گریبان بودند سویینگ انتخابی عالی و درخشان بود. در مقایسه با ajax ، کار با اجزای سویینگ ساده تر و عملکرد آنها به ویژه وقتی حجم داده های حاضر در پروژه زیاد است، به مراتب بهتر است. اما در سال های اخیر، با پیدایش جعبه ابزار های جدید و متنوعی مانند flex که توسعه واسط های گرافیکی کاربر را آسان می سازند، قدمت سویینگ بیشتر به چشم می آید و به نظر می رسد که سویینگ کم کم جای خود را به اعضای جدید خانواده زبان ها و ابزارهای توسعه دهنده واسط گرافیکی کاربر خواهد داد. از دید بسیاری از برنامه نویسان، فلکس به مراتب مولدتر و کارآمدتر از سویینگ است. فلکس فاقد بخش های خسته کننده موجود در سویینگ، مانند data binding ، validation و ui layout است. برنامه نویسان شرکت سان پیش از آغاز پروژه جاوا fx اسکریپت با ایجاد اجزای جدید، برخی از این مشکلات را از میان برداشتند. اما با ظهور جاوا fx اسکریپت توسعه سویینگ با جدیت سابق دنبال نمی شود. از دیگر موضوعات مورد بحث، مقایسه جاوا fx اسکریپت با زبان های مشابه مانند فلش، dhtml و سیلورلایت است. یکی از عواملی که بقای نرم افزارهای قدیمی را تضمین می کند این است که آنها روی اکثر جستجوگرها نصب شده اند. اکنون بیش از 75% از جستجوگرها مجهز به جاوا هستند. این رقم در مورد flash به 85% و در مورد جاوا اسکریپت به 98% می رسد. در مقابل، javafx فعلا روی هیچ جستجوگری اجرا نمی شود. جذابیت سیلورلایت و جاوا fx در این است که هر دو آنها از همان فناوری هایی استفاده می کنند که در سمت سرور استفاده می شود. فلش و جاوا اسکریپت از این قاعده پیروی نمی کنند و این امر، آنها را با محدودیت منابع روبرو می کند. مشکل ای جکس و dhtml این است که کدهای نوشته شده با استفاده از این دو زبان آنچنان ضعیف هستند که همه برنامه نویسانی که از آنها استفاده می کنند برای جلوگیری از ایجاد مانع در اجرای کد به ایجاد wrapper های سمت سرور رو آورده اند. ابزار توسعه کدهای فلش، فلش است. کدهای dhtml و ای جکس با استفاده از notepad و gwt در ویندوز و xemacs در یونیکس ایجاد می شوند. در مورد جاوا fx ابزار برنامه نویسی نت بینز است. برنامه نویسان سیلورلایت از visual studio orcas همراه با یک ابزار طراحی استفاده می کنند. در میان این ابزار ها، نت بینز از دیگران قوی تر است. به این ترتیب برنده نبرد میان این زبان ها پیشاپیش مشخص است. کدهای جاوا در زمان اجرا به حافظه اصلی بسیار زیادی نیاز دارند. یک واسط کاربر ساده در زمان اجرا به طور متوسط به حدود 65 مگابایت حافظه اصلی نیاز دارد. اجرای همزمان چند برنامه جاوا، در ازای هر برنامه 65 مگابایت دیگر از حافظه اصلی را اشغال می کند. فرض کنید یک وب سایت آموزشی، مجموعه ای از نرم افزارهای نمایشی4 را بارگذاری کرده است. بارگذاری همزمان چند دمو، در عمل تمام حافظه اصلی سیستم را اشغال می کند. این امر استفاده از کدهای جاوا در حجم انبوه را با محدودیت هایی مواجه می سازد.شواهد موجود حاکی از این است که در دراز مدت، برنامه های فلش از شانس رقابت کمتری در مقایسه با رقبای دیگر برخوردارند. فلش برای تولید سریع فایل های ویدئویی، ساخت آگهی های تبلیغاتی و فیلم های کوتاه مناسب است. اما در مورد پویانمایی ها و ویدیوهای بزرگ کارایی لازم را ندارد. در مقابل، جاوا fx و سیلورلایت شانس بسیار بیشتری برای بقا دارند. مایکروسافت به دلیل نفوذ گسترده در بازار جهانی و در میان کاربرانی که از رایانه برای کاربرد های عمومی استفاده می کنند همواره مخاطبان خاص خود را دارد. شرکت سان نیز با دارا بودن میلیون ها برنامه نویس جاوا در عرصه باقی خواهد ماند. از ویژگی های برنامه نویسان جاوا این است که خود را با هر قالب کاری جدیدی که برای زبان جاوا ایجاد شود تطبیق می دهند. از سوی دیگر بخش قابل توجهی از کاربران جاوا و محصولات شرکت سان را کاربران دانشگاهی تشکیل می دهند. این کاربران خود از ایجاد کنندگان فناوری های جدید هستند.آیا جاوا fx به یک فناوری ria پویا و تکامل یافته تبدیل خواهد شد؟ این موضوعی است که در هفته آینده به آن خواهیم پرداخت. پی نوشت هاrich internet client. 1 smartphones. 2 user interface. 3 demo. 4
+ نوشته شده در شنبه سی ام آذر 1387ساعت 16:0  توسط یوسف عبدلیان باریکرسفی
|
