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

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

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

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

  • ۰
  • ۰

 دربرنامه نویسی اندروید (جاوا) برای برنامه نویسی موبایل یکی از متداول ترین ارور ها NullPointerException هست ، و اگر بتونیم بیشتر این ارور ها را قبل از وقوع  جلوگیری کنیم ، برنامه ای روان و بدون اکسپشن های اعصاب خورد کن خواهیم داشت.
NullPointerException  زمانی رخ میده که قصد داریم مثلا از یک لیستی که null هست ، عملیات get یا size  یا هر عملیات دیگری  را انجام دهیم. ویا یک رشته (String) را می خواهیم با یک رشته دیگر که مقدار آن null  هست مقایسه گنیم و یا در اندروید و مخصوصا در صفحاتی که از چند thread استفاده شده  یک thread وظیفه گرفتن اطلاعات از اینترنت را دارد و بعد از دریافت اطلاعات قصد بروز رسانی صفحه (UI) را دارد  اما قبل از اتمام کار صفحه بسته شده است و زمان استفاده از context ارور NullPointerException  می دهد .

در این جا چند روش  ساده برای جلوگیری از این  اکسپشن را  قرار میدهم :


۱ : زمان استفاده از متد  equals() و  equalsIgnoreCase()   رشته ای را که مطمئن هستید null نیست  اول قرار دهید

۲ . برای گرفتن مقدار رشته (String) به جای toString() از String.valueof() استفاده کنید .

اگر بر روی یک شئ که null باشده toString() را فراخوانی کنید ، NullPointerException رخ می دهد ، در صورتی که اگر از String.valueOf() استفاده کنید در صورت null بودن مقدار "null" را برمیگرداند .

 

۳ . از متد و لایبرری های امن (safe) استفاده کنید :

لایبرری های زیادی هستند که زمان null بودن اکسپشن نمی دهند :

مثلا به جای استفاده از isEmpty() می توانید از StringUtils.isEmpty(null)استفاده کنید

. در متد ها مخصوصا متد هایی که قصد برگرداندن یک لیست را دارند null برنگردانید : به جای برگرداندن null یک کالکشن خالی یا یک مقدار خالی را برگردانید (مثلا یک رشته خالی "" ) در این صورت از بروز این اکسپشن در جاهایی که از این متد استفاده کرده اید جلوگیری می کنید.

در ضمن میتوانید از خدمات وب یونیک در زمینه تولید نرم افزار موبایل که روی پلتفرم های موجود از جمله J2ME, Windows Mobile, BlackBerry, iPhone/iPad, Android ارائه می گردد،استفاده نمایید.

نظرات (۱)

  • شهریار صامت
  • سلام
    خوش اومدین
    مطلب مفیدی بود..

    ارسال نظر

    ارسال نظر آزاد است، اما اگر قبلا در بیان ثبت نام کرده اید می توانید ابتدا وارد شوید.
    شما میتوانید از این تگهای html استفاده کنید:
    <b> یا <strong>، <em> یا <i>، <u>، <strike> یا <s>، <sup>، <sub>، <blockquote>، <code>، <pre>، <hr>، <br>، <p>، <a href="" title="">، <span style="">، <div align="">
    تجدید کد امنیتی