نمایان
www.3manage.com
لایسنس آنتی ویروس

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

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

 

میکرو سیستمهای سان دوره جدید خط مشی جاوا – ۲ را دردسامبر ۱۹۹۸ درست کردند و برای اولین بار جاوا ۱-۲ منتشر شد.

شهرت محصول سان این دوره را برای هر سه ویرایش جاوا تا امروز حفظ کرد.

 

استاندارد ویرایش (J2SE) : یک خط مشی برای دسکتاپ و PC است و ایستگاههای کاری و حمایتی را فراهم میکند. حمایتهای درونی را برای TCP/IP فراهم می کند و ۱/GUIرا جاری می کند.

 

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

 

ریز ویرایش(J2ME): یک نسخه جاوا( ریز مجموعه ای از J2SE + APIS) وسایل را با محدودیت منابع سخت افزاری نشان می دهد. از توسعه برای جا دادن درخواستها یا دانلود درخواستهای شبکه استفاده می کند.

 

 

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

 

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

امروزه شاید IT های شخصی بدون دانش و قدرت جاوا نیست.

جاوا واقعا تکنولوزی از بسته های مختلف است که می تواند رده بندی نشود + اجزای ان به سه بخش زبان برنامه نویسی جاوا و ساختار علم ترکیب لغات و ماشین مجازی جاوا و کلاسهای کتابخانه ای وانجمنهای این زبان.

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

تا زمان کودکی شبیه زبان برنامه نویسی سرورساید از فرمانها استفاده میکرد.در نوجوانی از محاسبه تعهدات ناتوان بود ودرخواستها را توزیع میکرد و پایگاه داده برنامه ها و اجزا را توسعه می داد. حالا با کامل شدن ان کاوش میکند درجهان بدون سیم با پنهان شناسی و زیاد شدن امنیت . در اینده این حمایت ها ممکن است نهایی به نظر برسد .

اخرین اما نه کوچکترین و اموزش می بیند یکسوسازی را در طول مراحل مختلف زندگی و هستی خود .

جاوا درست از شروع ان به طور مثال برای بهتر کردن تولیدات برنامه نویسان متمرکز شده بود.

جاوا هنوز همه طرح های مطلوب را حفظ کرده است.معماری جاوا فرش میکند راه ها را برای نرم افزارهای شبکه های شئ گرای جدید که فراهم میکند همه امکانات را برای حمایت از جاوا وبرای سهولت حرکت در شبکه از کدها و شئ ها استفاده میکند.

قبلا ما پردازش را تقویت میکردیم حالا به ما اجازه دهید تا به طور مختصر در مورد امکانات جاوا بحث کنیم.

                                               استقلال خط مشی

این حقیقت معلوم که استقلال خط مشی یکی از ابزار های بحرانی در همه درخواستها است ودرنتیجه طبیعت نامتناجس از ابزارها و زیر بنای شبکه میباشد.

طرح جاوا ممکن میسازد تا خلق کنیم اجرای باینری را که این خط مشی غیر قابل تغییر است.

حمایت از استقلال خط مشی در جاوا در طول معماری توسعه پیدا میکند. همه اجزا در زبان معماری JVM وAPI نقشی را در ناتوانی خط مشی ها بازی میکنند.

جاوا در حال حاضر سه مرحله است هر کدام از اینها از دیگری مستقل است اما تشکیل هر سه مرحله راحتی انرا با درجه بالا فراهم میکند.

  • قابلیت حمل کد منبع: به کد منبع یک برنامه اجازه میدهد تا تولید کند نتایج یکسان را بدون توجه به اساس CPU یا کامپایلر جاوا
  • قابلیت حمل معماری CPU : بر خلاف زبانهای دیگر جاوا تولید نمی کندکدهای متفاوت

را برای CPU های متفاوت به جای ان کامپایلر جاوا تولید میکند کدها را برای CPU های متفاوت به صورت بایتی در JVM به هر حال این طرح نیاز دارد به حضور JVM در همه CPU ها که برنامه جاوا نامزد اجرای ان است.

  • قابلیت حمل OS/GUI : شبیه به JVM در CPU های متفاوت وجود دارد API های جاوا که ارتباط برقرار میکند باOS وGUI تا مبارزه کند با مشکلات و شرح دهد قابلیت حمل GUI را تا برنامه ها استفاده کنند از این کتابخانه ها.

بنابراین جاوا فراهم میکند محیط های اجرایی مشابه را.

اخیرا تکنولوزی جاوا (JINI) نشان داده به صورت دینامیکی شبیه اجرای شبکه به صورت

PLUG AND PLAY در یک شبکه . یک وسیله گذاشته میشود در شبکه تا بتواند متصل شود به سایر وسایل و اجازه دهد به وسایل دیگر تا به ان برسد.و به اسانی به اتصال نائل شود.

 

                                     قابلیت استفاده مجدد و نگهداری

قابلیت استفاده مجدد در این زبان مقایسه میشود با وسعت حمایتی که از کدها می شود یا موافقت با سایر درخواستها . جاوا به طور خالص هست زبان oop و کدهایی که دوباره استفاده میشوند در ان قرار میگیرد.نتیجه کلی از تعاریف API در این ساختار طبقه بندی میشود به بسته های اطلاعاتی و همچنین حمایت میکند از کدهایی که دوباره استفاده میشوند.

یکی از تکنولوزی های متفاوت جاوا دانه جاوا است که فراهم میکند راه حلهای عملی برای مشکلات که سر سخت بودند در مقابل توسعه در مدت ۱۰ سال. صنعت IT در بردارد دانه جاوا که گروه های بحرانی دوباره استفاده میکنند از دانه جاوا.توسعه ساختمان و ساختارهای جدید استفاده میکنند از ابزارهای DRAG AND DROP تا وصل شود به دانه های دیگر در گذشته.

اخیرا سان تحت فشار قرار داده درخواستها را تا فراهم کند به طور اساسی اجزای قابل استفاده و درخواستها که میتواند با موفقیت استفاده شود.

نگهداری از طرح این زبان حمایت میکند از دستورالعملهاکه میتواند به اسانی تغییر دهد و ابزارهای جدید را راضی کند . برنامه نویسی شی گرا جاوا ظرفیت نگهداری از درخواستها را دارد .اخیرا گنجایش نمونه های طراحی در جاوا (یک نرم افزار مهندسی که بیرون میاید از ایدئولوزی شی گرا ) در نظر دارد که توسعه را ترفیع دهد در دوره های طولانی نگهداری . نرم افزارهای توسعه به صورت خط به خط حرکت میکند و از اجزای مختلفی استفاده میکند.

 

                             در خواستها و برنامه نویسی با رشته ها

در خواست تعداد زیادی از برنامه نویسان در جاوا هست حمایت برای برنامه نویسی همزمان. برنامه های رشته ای خلق می کنند جریان های همزمان بیشتری برای کنترل کارها در هر زمان .مراقبت کردن از جذب اشکار همه درخواستهای جاوا که به هم میپیوندند درGUI به صورت رشته های اصلی هستند.زیبایی رشته API جاوا اینست که کارها را در پس زمینه انجام می دهد تا زمانیکه احساس کند کاربر به ان نیاز دارد.

 

                                                   معماری جاوا

معماری اصلی در جاوا باقی مانده از زمانیکه برای اولین بار منتشر شد.تغییر پیدا کرد API جاوا به طور پیوسته و هر نسخه تصحیح میکرد کمبودهای نسخه قبلی را و اضافه میکرد ابزارهای مناسب را به ان . هسته معماری در جاوا هست به طور مثال : یک کامپایلر که ترجمه میکند کدهای منبع جاوا را به بیت کدها که میتواند در ماشین جاوا اجرا شود . این معماری انجام میدهد نیازهای JVM را برای سطح های متفاوت.یکی از سطح های مخصوص JVM که در دسترس است بایت کد جاوا است که میتواند استفاده شود در سیستمهای OS و سیستم های معماری.

                                           قابلیت استفاده مجد

قابلیت استفاده مجددهست یکی از مسائل اصلی در جاوا .سان تعریف کرد زبان برنامه نویسی مخصوصی برای ماشین مخصوص جاوا JVMکه از انواع داده ها مراقبت میکند بایت کدها و کدهای باینری در برنامه جاوا به صورت مستقل هستند و در سیستم قابل اجرا میباشد.

                                          سیر تکامل جاوا

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

(مجموعه ابزارهای توسعه جاوا =JAVA DEVELOPMENT KIT)

نسخه JDK تمامی ابزار لازم برای توسعه و اجرای برنامه های JAVA را در بردارد.دو امکان برجسته جاوا در نسخه ۱٫۰٫۲از این قرار است:

  • AWT :یک مجموعه از خانواده API برای ساختن GUI (یعنی واسطه گرافیکی کاربر)
  • APPLETS: عبارتند از برنامه های کوچک جاوا که در مرورگر های وبی که امکان اجرای انها باشد جای میگیرند. این مرورگرها شامل یک JVM میشوند که عمل دانلود کردن درخواست ها را خیلی مطمئن در محیطی امن اجرا میکند.

نسخه بعدی جاوا ۱٫۱است که امکانات اضافی را به ان افزودند مانند نمایندگی مدل پیشامد سری سازی کردن اجزا RMI, کامپایلر JIT وکلاسهای درونی (البته برای جاوا )مجموعه پیشرفته ای ازAPI و نوسان های انتخابی API .جدا از این چیزها این نسخه میتواند یک مدل امنیتی خاص جنبه های بین المللی و بقیه تعاریف JDK را تعبیه کند.

نسخه بزرگ بعدی کمپانی سان JAVA 1.2 است که به وسیله پلت فرمهای جاوا ۲ شناخته شده است . جاوا ۱٫۲ را به JSDK منسوب کردند توجه کنید که این JSDK با JDK یکی نیست JSDK شامل قسمتهای RUN TIME نمی شود .

یک سیستم RUN TIME هم اکنون جداگانه در JRE قابل دسترس است. SWING در بسته JSDK وجود دارد و البته امروزه همچنین در JSDK 1.3 وJSDK 1.4 قابل دسترس است.

 

J2ME                                                   چیست؟

J2MEاخرین وجمع وجور وبا درجه انتخابی بالا برای JREاستJ2ME روی هم رفته یک زبان جدید نیست اما مانند جاوا ی قدیمی برای کنترل و پیاده کردن دستگا ه ها به کارمیرود

J2ME هنوز سازگاری J2SE را از دست نداده . در واقع تمامی درخواست های J2ME می توانند اجرا شوند روی J2SE با اختلاف بسیار کم . دستگاه های ا لکترونیکی مصرف کننده کوچک دارای راهی برای تاثیر روی زندگی ما هستند .

منتشر کردن J2ME خیلی به موقع بود . با گسترش دهندگان IT در عملیات کامپیوتری طبق خواسته با ارتباط قوی برای دستگاه های ا لکترونیکی کوچک. امکانات اجرایی جاوا امادگی اجرا شدن در هر محیطی را دارند . واقعا جالب است بدانید که قصد اولیه برای به وجود اوردن جاوا ارتقاء زبانی برای برنامه هایی با قابلیت قابل حمل بودن درخواستها برای دستگاه های ا لکترونیکی مصرف کننده مثل سیستم های صوتی ماشینهای لباس شویی و چیز هایی از این قبیل بودند که در این مسیر با کوتاهی مواجه شده بودند . چنان جاوا را ساختند که بسیار محبوب شد به خاطر سادگی قابل حمل بودن وامنیت و امکانات اپلت ان که ارضاءکننده نیاز های جنبش محیط اینترنت شد . با J2ME MIDLETS کمپانی سان توانست بخشی از رویا های خود را محقق کند .

                                                 ساختار J2ME

محصولات الکترونیکی مصرف کننده در طبیعت و وظایف خود با هم تغییرات زیادی دارند .برای بیان بعضی از تغییرات یک نیاز ضروری برای J2ME فقط سایز کوچک نیست همچنین طبق خواسته بودن و پیمانه ای بودن . این پیمانه ای کردن توسط جدا نمودن همه ساختار و پروفایل JVM انجام میگیرد این سه جزء با هم یک JRE کامل را شکل میدهند این اجزا لایه های بالایی یک سیستم عامل برای دستگاه های هدف هستند .

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

                                       پیکره بندی ها(شکلها)

پیکره بندی پلت فرم های جاوا ی اولیه ای هستند برای دستگاه ها با خواسته های مشابه در رابطه با حافظه کلی سرعت پردازش و قدرت ونمایش محتویات . مشخصا یک شکل امکانات زبان جاوا امکانات jvm و محدودیت های مجموعه عمومی API ها را شامل میشود.

پیکره بندی رابطه تنگاتنگی با JVM دارد. در واقع پیکره بندی یک دوره شناختن امکانات زبان جاوا است مانند مجموعه API ها و JVM مخصوص برای یک پیکره بندی مخصوص.

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

  • CLDC : به منظورمتصل کردن منابع تحمیل شده دستگاه های کوچک مثل تلفن و پیجر
  • CDC : جهت دستگاه هایی با منابع بزرگ مرتبط با هم مانند جعبه های SET-TOP

بقیه اندک پیکره بندی ها در اینده نزدیک در دسترس است.

CLDC : یکی از پیامد های JCP است (پردازش اجتماع های جاوا) که یک قابل حمل استاندارد شده است و در بلاک های ساختمانی جاوا برای دستگاه های دارای منابع تحمیل شده کوچک کمترین اثر را میگذارد . JCP یک پلت فرم باز است که به نماینده های صنعت و افراد دیگر اجازه میدهد که شریک شوند در یک پردازش تعریفی تجدید نظر کردن و توسعه دادن قسمتهای مختلف یک پلت فرم جاوا . در اینجا فقط یک توضیح کوتاه از چگونگی تابع های JCP وجود دارد . یکJSR (درخواست مشخص جاوا) ارائه میشود بوسیله یک پیشنهاد مخصوص برای توسعه دادن پلت فرمهای جاوا . اگر JSR پذیرفته شود برای توسعه یک EG

(گروه ویزه ) که شامل اعضای JCP و داوطلبان هستند شکل میدهند تعریف را از یک تشخیص رسمی برای JCP . کار انها مورد بازبینی سایر اعضای JCP قرار میگیرد و به وسیله همگان که بازبینی میکند تفسیرهای انها را که استفاده می شود در تجدید نظر کردن قبل از انتشار یک استاندارد رسمی.

CLDC هست نتیجه تلاشهای گروه های متخصص JCP که کار میکنند در JSR . وقتی JSR تاسیس شد نشان داد که دنبال میکند این سازمانها را : امریکا انلاین و بال و اریکسون ,FUJITSUMATSUSHITA میتسوبیشی وموتورولا ونوکیا   NTTDOCOMO,ORACLE

RIM و سامسونگ و شارپ و زیمنس و سونی و سان و SYMBIAN

CLDC هست یک VM و پایه کتابخانه ها . ماشین KVM در CLDC معرف اجرا در JVM هستند

از نام KVM مشخص میشود این حقیقت که اندازه گیری سایز ان به کیلو بایت است نه مگا بایت . ساختار CLDC هست برای ابزارها به صورت خطوط پایین:

  • اهسته و متناوبی بودن خطوط ارتباطی شبکه
  • محدود بودن قدرت
  • وسعت حافظه بین ۱۶۰ تا ۵۱۲ کیلو بایت
  • پردازنده ۱۶ یا ۳۲ بیتی

حافظه های فرار برای اجرای درخواستها مصرف میشوند. حافظه های غیر فرار اختصاص داده میشوند به گنجایش ایستا در VM

طرح CLDC حفظ میکند قسمت اصلی زبان جاوا را با چند استثناء . این استثناء ها مناسب هستند برای نیاز های CLDC (وسایل محدود میشوند به گنجایش اتصال)

  • JVM حمایتی
  • امنیتی
  • هسته کتابخانه برای I/O شبکه و امنیت بین المللی
  • سازگاری یک بخش اصلی در CLDC هست زیر مجموعه ای از J2SE

 

                                           محدودیت های CLDC

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

یک امنیت بستگی دارد به تلاش و اندازه API و مصرف حافظه مانند زیر:

  • کلاس های بارکننده
  • بازتاب
  • RMI
  • به هم پیوسته
  • اشکال زدایی JVM
  • سود JVM
  • ضعف بازگشت

Best regards,همه ی کاربردهای CLDC کاربردهای CDC هستنى اما بر عکس ان نیستCDC شبیه CLDC نیست وزبان Full java داردومشخصه JVM دارد۰ CVM همه ی مشخصه استاندارد java 2vm را دارد۰

اما حافطه ی ان کوجکتر از یک ردپا است یک کاربرد CDC می تواند دستیابی به J2ES APIS باشد که کاربرد CLDC می تواند جدا از مشخصه ی API های CLDC باشد۰

 

مشخصه ی CDC

  • 2 MB یا بیش از حافطه ی جمع کننده
  • متشکل از ارتباط دهنده ی شبکه
  • Processor ان ۳۲بیت است

 

CDC در مقابل  CLDC

یک تفاوت بین CDC , CLDC این است که نیاز به J2ES که موافق با JVM دارند۰

گذاشتن ان در CDC VM فراهم می کنى همه ی امتیازات مشخصه ی J2SE VM که شامل  JVMDI,JVMPDنمودار زیرارتباط بین J2SE وCDCوCLDCرا نشان می دهد۰

PRO FILE

 

یکپروفایل ساده یک دستگاه گیرنده API است اما شبیه این نیست پروفایلها بیشتر اتصال دهنده است و وسیله ی ویزه ای که توانایی ترکیب کردن را دارد۰ آن ها شامل وسیله ی ویزه ی API هستند وهمچنین کاربر متصل و مداوم و…

پروفایل کسب می کند خواسته های انجام شده را از روی شکل و بنابر این در شکل در سطح بالا هستند۰

جریانی که در به کار بردن یک یا چند پروفایل در مرحله ی نهایی وجود دارد:

  • K j a v a
  • پروفایل وسیله ی انتقال و حرکت است(MIDP)
  • پروفایل ها به دیجیتال شخصی کمک می کنند ( PDAP)
  • Handel pro fill( HP)
  • انجام دادن پروفایل (FP)
  • پروفایل شخصی( PP)
  • پروفایل روش مجزاست(RMIP)

KJAVA

K java    یکپروفایل شخصی خورشیدی که برای J2SE جانشین شده ۰JCP شامل کار های مربوط به K java نیست k java یک وسیله ای بالاتر از CLDC است توانایی کامل ان با CLDC است ان توجه دارد به یک وسیله ای برای نشان دادن   یک پروفایل بر CLDC  است۰

وارد کردن اطلاعات در KVM ىر یک انجام K java است شبیه به یک وسیله کلاسیک j2SE واقعی است واستاندارد K java API استفاده می شود باکت هایی که در

K java API. com. Sun .k java استفاده میشوند به اندازه ی یک plam در سیستم عامل وشبیه به J2SE است ۰

 

MIDP

MIDP     یکپروفایل استاندارد صنعتی و کامل برای حرکت وسیله طراحی شده که بستگی به سازنده ان دارد MADP نتیجه ی  JCP EQ است که روی JSR-37 کار کرده است API ها برای حرکت وسیله ها تعریف شده است که شامل اجزای رابط و تجزیه ی I/O و حتی کنترل کننده در شبکه و زمان توسعه یافته ی برای صفحه و حافظه ی محدود شده وسیله ی حرکت MIDP و شبیه Kjava است که بالاتر از CLDC انجام می دهد۰یک کاربرد توسعه یافته برای وسیله ی MIDP 0 MID let است همه ی

MID let ها همکاری با AMS میکنند این همکاری از طریق ماشینها انجام می شود جایی که MID let ها AMS اعلام می کنند هرگز نیازی به تغییر ضروری منبع ندارند.

 

PDAP

PDAP وسیله ای است که حافطه ی ان کمتر از ۵۱۲ KB و بیشتر از ۱۶ MB نیست ۰

 

PDAP API ها شامل یک J2SE SAWT برای GUI هاست۰

 

 

Handel pro file( Hp)

برای کسب اطلاعات بیشتر به سایت http://www.java.sun.com/ مراجعه فرمایید۰

 

Foundation pro file( FP)

 

fpمی تواند توسعه دهد و یک پروفایل جدید بوجود اورد fp بالاتر از CDC است FP API ها با CDC API   فراهم می کنندیک J2SE JRE را به طور کامل برای مصرف کننده های الکتریکی وجا دادن وسیله ها۰FP ها استفاده می شوند برای مصرف کننده های الکتریکی وجا دادن وسیله ها۰CDC ها یک جای گزینی برای CLDC ها هستند۰

 

RMIP

RMIP تجهیزاتش کمتر از مصرف کننده الکتریکی است که به اسانی RMI تولید میکند انها محاسبات را به خوبی انجام می دهند این اعمال JINI را برای سازمان شبکه فراهم می کندبنابراین یک قرارداد کامل RMIP احتمالا امکان دارد که از وسیله ها نباشند هنوزدر خواست RMIP وجود ندارد قرارداد RMIP نیاز به مقداری حافظه در حدود ۴MB دارد۰

 

J2ME   در مقابل J2SE

J2ME یک قرارداد تشرش که ارتباط فقط زبان مشخص است و کتابخانه J2SE که یک مشکل ان کاربرد توسعه برای رسیدن به هدف محیط مطرح نکرده است۰

 

JSR-82

 

JSR-82 شامل JAVA API ها برای Bluetooth تکنولوژی بی سیم است یک استاندارد پاکت است که پروتکل   Bluetooth محلی و RF COMM .RFCOMM. OBEX.SDP را فراهم می کند۰ان قصد دارد که با یک توانایی در محیط باز کاربرد Bluetooth توسعه دهد۰ورژن های اینده ممکن پروتکل های adition را فراهم کند۰

JABWT یک اصلی برای( ژنریک اتصال زیر سازی)( GCF) که شامل J2ME CLDC وکلاس های موجود I/O در CLDC می شود۰

JSR-82 ها برای غلبه بر CLDC طراحی شده اندواستفاده میشوند مانند یک MIDP توسعه یافته بنابراین JABWT می تواند با MIDP استفاده شود ان فقط به CLDC APIها و بی توجه بودن MIDP و بی تاثیر بودن رفتار ان بستگی دارد Bluetooth اصل JABWT را شامل می شود ۰

بعضی از اعضای سازمان ها تشکیل شده اند از گروههای خبری که شامل JABWT هستند که سیتم های توسعه یافته و IBM وموتور های الکتریکی و ىر اصل وساد گی نرم افزارو ازمایشگاهی ىر امریکاوحرکت ارتباطات ووسیله های شبکه نیرومند تحقیق می کنند۰

 

نیازمندى های JABWT

 

  • موافق بودن با خصوصیت CLDC
  • ارتباظ دهنده شبکه Bluetooth
  • حافظه کمتر از ۵۱۲kb
  • انجام همکاری با GcfازCLDC
  • OBEX APIباید تعریف شده باشد و به طور مستقل در هسته   APIBluetooth استفاده شود
  • API کاربردش در هر یک از کلاینت یا سرور یا هر ىوی انها
  • که می تواند سطح روی هر سکو java از CDC وj2SE و J2EF باشد
  • موافق بودن سخت افزار Bluetooth و ارتباط دهنده نرم افزار با Bluetooth

 

سیتم Bluetooth به این شکل تعریف میشود

  • SPP
  • Type1 RFCOMM
  • L2cap
  • Bluetooth کنترل می کند مرکز ( BCC) و توسعه می دهد تجهیزات سازنده ابتدایی(OEM)به پارامترهای شکل stack کترل می کند

 

JABWT

JABWT شامل دو باکت است:

  1. java x . bluetooth
  2. java x .o b x

این دو باکتهای اختیاری ومجزا هستندبه این معنی که یک CLDC وسیله ای که می تواند هر دو باکت یا یکی از ىو باکت ها را در خود جای دهدهر ىو باکت یک باکت توسعه یافته java x. micro edition

 

معماری API

وظیفه ادرس ها به وسیله java x. Bluetooth API   که می تواند در این سه مرحله طبقه بندی شود:

 

  • discovery شامل وسیله های اشکار و سرویس دهی اشکار و نام نویسی سرویس
  • ارتباطات شامل اغاز وشروع ارتباط بین وسیله ها و استفاده انها برای ارتباطات بین در خواست هاست۰

 

  • مدیریت وسیله ها شامل در خواست مدیر برای اتصال بین ابزارهاست۰

 

 

MIDP, Bluetooth API

JABWT   یک ارتباط بین MIDP و Bluetooth است بنابراین ابزارهای MIDP انتظار دارند که هدف تجارت برای پیوستگی JSR- 82 در مرحله ی اول است۰

دیاگرام زیر نشان می دهد که JABWT در معماری J2ME اندازه است۰

Bluetooth API و MIDP   API   می توانند همزیستی باشند اما وابسته به یکدیگر نیستند بنابراین یک می تواند وسیله JSR-82 به اندازه ی CLDC + JABWT)) یا اینکه به اندازه ی ( CLDC+MIDP+JABWT) باشد

 

 

پاکت های Bluetooth  java x.

کاربرد وسیع Bluetooth این است که اتصال Bluetooth را بین وسیله ها وابزار کشف شده وثبات سرویس دهى شده فراهم میکند ومدیریت که پرو فایل وارتباطات با پروتکل هارا.

یک لیست رابطه ها وکلاس ها وپاکت هایjava x. Bluetooth  در شکل ۱۳٫۱   نشان داده شده است   ۰

 

رابطه ها

رابطه ها یک ساختار را به حد کافی فراهم می کند یا قرارداد را در روش زیرسازی اعلام می کند که قرارداد به اندازه ی کلا سهای مورد نیاز استبه ما اجاؤه می دهد بیشتر در مورد رابطه ها بدانیم ۰

 

 

توصیف وانتقال رابطه ها

رابطه ها این اجازه را دارند که یک کاربرد دریافت کشف وسیله وسرویس دهی را انجام دهد حتی اعلام کردن این انتقال ۴ روش وجود دارد ۲ تای ان برای وسیله ی کشف شده و۲ تای ان برای سرویس کشف شده است۰

 

 

نام های فیلد وتوصیف

Inquiry-completed نشان می دهد که کاربرد نرمال یک وسیله ی کار کشف را انجام دهد

۰

Inquiry-Error نشان می دهد که خطایی که ىر طی بازجویی از خواسته ها رخ می دهد

۰

Inquiry-terminal نشان می دهد که واضح است که یک وسیله ای که مراحل ان به وسیله ی کاربردش کشف شده است۰

 

Service – search – completed یک سرویس کشف شده را به طور کامل نشان می دهد

 

Service – search –device-not-reachable از کار افتادن یک سریس کشف شده را نشان می دهد۰

 

Service – search –no-record   کاملا سریس کشف شده را بدون رکوردهای پیداشده نشان می دهد

۰

Service – search –terminal   توضیح در مورد کاربرد سرویس را نشان می دهد۰

 

توصیف وانتقال رابطه ها

 

Btl2cap یک پروتکل است که در بوجود اوردن یک اتصال کلاینت استفاده می شود

 

دریافت MTU و انتقال MTU هستند پارامترهای ویژه L2CAP هستند انها پاسخ

 

می دهند به ظرفیت حمل ونقل سایز ماکزیموم و انتقال دادن سایز ظرفیت حمل ونقل

 

ماکزیموم به وسیله ی اتصال های خاص ومجزا۰

فیلد نام وانتقال

 

اهمیت بالای MTU برای اتصال کانال ها است که در حدود ۶۷۲ byte

 

اهمیت مینیموم MTU برای اتصال کانال ها است که در حدود ۴۸ byte

 

هم اکنون ما مختصری از روش ها پارامترها برای اتصال در جدول ۱۳٫۲ توضیح

 

می دهیم۰

 

توصیف وانتقال رابطه ها

ششئ اخطار کننده اتصال L2cap برمی گرداند وقتی که کانکتور باز کمک می کند به رشته بالایی شئ اتصال دهندهL2cap حاصل می شود از اخطار کننده اتصال l2cap fh با کمک پذیرش وباز.

روش ها وتوصیفات:

منتظر باشید برای کلاینت برای اتصال به خدمات l2cap را که می تواند استفاده بشود جهت ارتباط با این کاربر.

رکورد خدماتی:

شرح وبیان داخلی وتوصیف:

رکورد خدماتی عمومی وداخلی:این توصیف می کند کاراکترهایی را از سرویس blue tooth . هر رکورد خدماتی شامل گروهی از خدمات نسبی. هر کدام از آنها دارای عضو با ارزش ID است. ID نسبی هست ۱۶ بایت عددی بدون علامت. وقتی که مقدار ارزش داده شده یک شئ است .

سرور sdp نگه می دارد پایگاه های داده های پوشش خدماتی که شامل رکورد های خدماتی که توصیف می کند خدماتی را از ابزار های محلی.

کلاینت های sdp می تواند استفاده کند آن را برای پرسش از سرور sdp برای هر رکورد سرویس دهنده جالبی.

یک سرویس خدماتی فراهم می آورد اطلاعات کافی را برای اجازه دادن به کلاینت sdp برای اتصال به خدمات bluetooth بر روی ابزار سرویس دهنده sdp.

رکورد های خدماتی ساخته میشود به صورت قابل دسترس بودن برای کلاینت های کاربردی از راه بحث بر روی روش های خدمات پوششی از شنونده های پوششی داخلی.

رکورد های خدماتی قابل دسترسی اند برای کاربردهای سرویس دهنده از راه روش getrecord در ابزار محلی.

sdp قابل دسترسی ساخته می شود فقط آن سرویس هایی را که نسبت داده می شود به احتیاجات کلاینت sdp.

نام فیلد ها توصیف آنها:

authenticate_encrypt: تصدیق اشاره گر ها وencrypt احتیاج دارند به دسترسی به این صفات.

authenticate_noencrypt:تصدیق اشاره گر ها احتیاج دارند به این دسترسی به خدمات واما بدون encrypt.

noauthenticate_noencrypt:اشاره می کند به تصدیق وencrypt احتیاج ندارد به این خدمات.

بیایید خلاصه کنیم روش ها و پارامتر ها را در جدول(۱۳٫۳)

ID های نسبت داده شده عمومی _برمی گرداند خدمات ارتباطی ID را که می توانند مقدار داشته باشند برای نسبت های مقداری.

مقدار نسبتی عنصر داده عمومی_بر می گرداند مقدار ID نسبی خدماتی را اگر پیدا کند در رکورد خدماتی و اگر نهnull برمی گرداند.

اتصال دهنده های رشته عمومی (int,bool)بر می گرداند رشته ای را که شامل پارامتر های انتخابی که می تواند استفادهشود با کلاینت برای اتصال به توصیف خدماتی با رکورد خدماتی.

رکورد مهم عمومی boolean:جبران می کند مقادیر را با عهد بستن ابزار remot برای بخشی از ID های نسبی وخدماتی از خدمات که در دسترس است از ابزارbluetooth.

مقادیر نسبی عمومی boolean(int,datatype):توصیف می کندرکورد خدماتی را که شامل سرویس نسبی است وبهکمک عضوی ارزشی ID نسبت داده شده.

public void set device service: استفاده می کند با کاربردهای سرویس دهنده برای راهنمایی کردن بیت های کلاسخدماتی مهم که باید فعال شود در کلاس ابزار سرویس دهنده وقتی که این رکورد خدماتی اضافه میشود به sddp.

کلاس ها:

عنصر داده:

دکور کلاس و توصیف آن:

عنصر داده کلاس عمومی_آن توصیف می کند انواع داده مختلف را که سرویس bluetoothارزش نسبی آن را می تواند داشته باشد. جدول ۱۳٫۴ توصیف میکند انواع داده را ومقادیر صحیح را که   شئ عنصر داده می تواند ذخیره کند.

نام فیلد ها وتوصیفات:

public static final bool: تو ضیح می دهد داده ها یی را که از نوع boolean.

public static final datalt: توضیح می دهد داده هایی را که از نوع datalt.

public static final dataseq: توضیح داده هایی راکه از نوع dataseq.

public static final int_1: توضیح میدهد عددهای علامت داری را که در سایز یک بایتی.

public static final int_16: توضیح میدهد عددهای علامت داری را که در سایز ۱۶ بایتی.

public static final int_2: توضیح میدهد عددهای علامت داری را که در سایز ۲ بایتی.

public static final int_ 4: توضیح میدهد عددهای علامت دار ی را که در سایز ۴ بایتی.

public static final int_8:توضیح میدهد عددهای علامت دار را که درسایز ۸ بایتی.

public static final null: توضیح می دهد داده هایی را از نوع null.

public static final string: توضیح میدهد داده هایی را از نوع رشته ای.

public static final u_int_1: توضیح میدهد اعداد بی علامت ا در سایز ۱ بایتی.

جدول های ۱۳٫۵ و۱۳٫۶ توصیف می کند توابع سازنده و پارامتر ها و روش ها را.

جدول ۱۳٫۵:   توبع سازنده وتوصیفات:

عنصر داده عمومی (boolean):به وجود می آورد عنصر داده ای را که نوع داده bool و آن را که مقدار آن مساوی است باbool.

عنصر داده عمومی(int):به وجود می آورد عنصر داده ای را که شامل null,datalt,dataseq.

عنصر داده عمومی (int,long):به وجود می آ ورد عنصر داده ای را که شامل مقدار int یا سایز u_int_2,u_int_1,

u_int_4,u_int_8.

عنصر داده عمومی(int,object):به وجود می آورد عنصر داده ای را که شامل url,uud,strig,u_int_16.

جدول ۱۳٫۶:       روش ها وتوصیفات:

عنصر اضافی تابع عمومی: که اضافه می کند عنصر داده بخصوص را به پارامتر datalt یا شئ عنصر دادهdataseq.

public boolean get boolean: برمی گرداند مقدار عنصر داده را اگر به صورت بولین نمایش داده شود.

public int get datatype: برمی گرداند نوع داده ای را از شئ که به صورت عنصر داده نمایش داده شده است.

public long get long: برمی گرداند ارزش عنصر داده را اگر بتواند به صورت طولانی نمایش داده شود.

public int get size: برمی گرداند تعداد عناصر داده را که معمولا حاضر است در شئ datalt,dataseq.

کلاس ابزار:

اظهار کلاس وتوصیف آن:

کلاس ابزار عمومی: نمایش می دهد کلاس را در رکورد ابزار cod هر رکورد شامل اطلاعاتی در مورد نوع ابزار ونوع خدماتی که توسط آنها ارائه می شود.

جدول ۱۳٫۷ توضح میدهد توابع سازنده و پارامتربرای این مداخله.

جدول ۱۳٫۷:     توابع سازنده وتوصیفات:

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

روش ها وتوصیفات:

کلاس ابزار بزرگ عمومی:بر می گرداند کلاس ابزار بزرگ را.

کلاس ابزار کوچک عمومی: بر می گرداند کلاس ابزار کوچک را.

کلاس های خدمات عمومی: برمی گرداند کلاس های خدمات بزرگ را.

پوشش فوری:

تعریف کلاس و توصیفات :

پوشش فوری کلاس عمومی: آن آماده می شود با پوشش ابزاری و توانایی پوشش خدمات. شئ پوشش فوری ایجاد می شود با استمداد get discovery agent از ابزار محلی.

ابزار ها از دو راه می توانند پوشش داده شوند:

(a): کاربری استمداد می طلبد از startinquiry برای شروع پرسش برای پوشش ابزارهای نزدیک.

روش پوشش ابزاری در مداخله شنونده پوشش برمی گرداند پوشش ابزارها را.

(b): کاربری استمداد می طلبد برای ابزارهای کمکی که برمی گرداند ابزارهایی را که شناخته شده است در مدت احتیاجات قبلی. از زمانی که این ها تولید می شوند سریع ترین راه است برای دسترسی به ابزارهای نزدیک.

سرویس ها نیز می تواند از دو راه پوشش داده شوند:

(a): کاربری کمک می کند به سرویس های جستجو برای پوشش سرویس هایی که بر روی ابزارهای به خصوص است.

(b): کاربری کمک می کند به سرویس های انتخابی برای پوشش سرویس های محتاج بر روی ابزارهای قابل دسترس.

نام فیلد وتوصیف:

publicstatic final CACHED: استفاده می شود با ابزارهای نسبی برای برگشت ابزارهای یافته شده در مدت احتیاجات قبلی.

GIACPublic static final : استفاده می شود برای احتیاجات نا محدود مهم.

Public static final LIAC: استفاده می شود برای احتیاجات اهدایی محدود.

Public static final NOT-DISCOVERABEL: استفاده می شود برای قرار دادن ابزارهای غیر پوششی.

Public static final PREKNOWN: استفاده می شود با ابزار های نسبی برای برگرداندن ابزار های شناخته شده. ابزار های شناخته شده بارها قابل تماس هستند با ابزار های محلی و نگه داری می شوند با مرکز کنترل blue tooth(bcc).

اکنون روش ها وپارامتر ها خلاصه می شوند در جدول ۱۳٫۸٫

جدول ۱۳٫۸:             روش ها وتوصیفات:

Public Boolean cancelinquery: سرویس دهی می کند احتیاجات ارزشی را.

Public Boolean cancel search: سرویس دهی می کند سرویس جستجویی را که ID انتقالی به خصوص است.

Public remot device [] retrive device (int): بر می گرداند آرایه ای شاملابزار های blue tooth قبلی یا ابزار های شناخته شده وابسته به بحث .

Public int searchservices: جستجو می کند برای سرویس ها بر روی ابزار blue tooth که حاوی uuid ,uuidset

Public string select service (uuid,int,Boolean): قرار دارد در جایی که سرویس شامل uuid در لیست ID کلاس سرویس از رکورد سرویس.

جدول ۱۳٫۸:

روش ها وتوصیفات:

Public Boolean startinquary(int,discoverylister): شروع می کند پردازش های لازم را.

ابزار های محلی:

تعریف کلاس و توصیف آن:

Public class localdevice: توضیح می دهد تابع های اصلی را از مدیریت blue tooth. وآن ذخیره می کند پایین ترین سطح ممکن را در پشته BLUE TOOTH.

آن فراهم می کند دسترسی وکنترل ابزار BLUE TOOTH.

جدول ۱۳٫۹:

روش ها وتوصیفات:

Public string get bluetoothaddress(): نسبت می دهد bd_addr به ابزار محلی.

Public deviceclass getdeviceclass(): نسبت می دهد ابزار کلاس را که مربوط می شود به کلاس های سرویس.

 

مطالب مرتبط

دانلود تحقیق  تاثیر خصوصیات سیستمهای اطلاعاتی حسابداری بر عملکرد شرکت
دانلود تحقیق مسئله زمانبندی پروژه با در نظر گرفتن محدودیت منابع تک هدفه با الگوریتم مبتنی بر ممتیک ترکیبی قورباغه
دانلود تحقیق فن آوری سیستم های رادیو شناسه‎
دانلود تحقیق طرح ریزی شرکت تولیدی باتری اتومبیل
دانلود تحقیق  تاثیر آموزش پیش دبستانی بر روی کودکان کلاس اول ابتدایی ناحیه یک ساری از دیدگاه معلمان‎
دانلود تحقیق آنتولوژی Ontology و مجوزهای نرم افزاری Licence
دانلود تحقیق آموزش زبان انگلیسی از مبتدی تا پیشرفته
دانلود تحقیق کارآموزی در شرکت فنی حفاظتی‎

یک نظر بگذارید

دسته‌ها
اين سايت را حمايت مي کنم