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

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

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

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

۴ مطلب با کلمه‌ی کلیدی «طراحی سایت» ثبت شده است

  • ۰
  • ۰

نرم افزارها شامل برنامه‎هایی است که با پردازنده سیستم ارتباط برقرار می کند. طراحی نرم افزار اندروید  یا سیستم عامل اندروید به مانند یک نرم افزار مادر عمل کرده که شرایط نصب سایر نرم افزارها و اپلیکیشن‎ها را بوجود می‌آورد.


 نرم افزار یا سیستم عامل

بسیاری به جای استفاده از عبارت «سیستم عامل اندروید» از «نرم افزار اندروید» نیز استفاده می‏کنند. قضاوت در مورد درستی یا نادرستی این موضوع کمی پیچیده بوده و نیازمند بررسی برخی مؤلفه‎های دیگر است. در نگاه اول می‏توان گفت منظور از برنامه‎هایی که بر روی گوشی‌های همراه نصب و اجرا می‎شوند، مجموعه‎ای از اپلیکیشن‎هاست که تحت شرایطِ نرم افزار‎ها، نصب و اجرا می‏شوند. سیستم عامل نیز یک نرم افزار به شمار می‏رود. پس زمانی که می‏گوییم «سیستم عامل اندروید»، این عبارت کاملاً صحیح می‏باشد چرا که سیستم عامل به عنوان یک نرم افزار محسوب می‌شود. دو اصطلاح نرم افزار و سیستم عامل رابطه عموم و خصوص با یکدیگر دارند. نرم افزار جامعیت بیشتری داشته  و در برگیرنده سیستم عامل است. بنابراین استفاده از نرم افزار اندروید به جای سیستم عامل اندروید صیحیح می‎باشد.

نرم افزار اندروید یکی از محصولات محبوب کمپانی گوگل برای تلفن‌های همراه و تبلت‎ها است. اندروید از زبان یویانی گرفته شده و به مواژگانی چون انسان، مرد، شبه آدم یا رُبات معنا شده است. نرم افزار اندروید یا سیستم عامل اندروید به کاربرانشان این اجازه را می‎دهند تا از تمامی قابلیت‌ها و پتانسیل‎های گوشی‎های هوشمند بهره ببرند و هر گاه اراده کنند، توانایی تغییر دستگاه و محیط تلفن همراه براساس ایده‌ها و سلیقه خود را داشته باشند.

 

بسیاری دو عبارت طراحی نرم افزار موبایل را با تولید  اپلیکشین‎ موبایل به جای یکدیگر به کار می‎برند. این در حالی است که برای اجرا و عملکرد سیستم، هم نرم افزارها و هم اپلیکیشن‎ها عمل می‎کنند اما نرم افزارها غیرقابل مشاهده و اپلیکیشن‎ها قابل مشاهده هستند.


 نرم افزارهای موبایل اپلیکشین‏ های موبایل

شاید تاکنون مشاهده کرده باشید که برخی به جای گفتن عبارت نرم افزارهای موبایل، از اپلیکشین‎های موبایل استفاده می‌کنند. این در حالی است که میان نرم افزار (Software Program) و (Application Software) تفاوت زیادی وجود دارد.
آنچه که ما از آن به عنوان نرم افزارهای موبایل استفاده می‌کنیم همان Software Program است که به سادگی روی گوشی‎های همراه نصب می‌شود و وظیفه خواندن دستورالعمل‎هایی که بطور مستقیم از پردازنده سیستم موبایل (cpu) به سمت آن‎ هدایت می‌شود، را بر عهده دارد.
در واقع نرم افزارهای موبایل مجموعه‎ای از برنامه‎ها هستند که در سیستم عامل تلفن همراه قابل نصب  و اجرا  می‌باشند و شامل واکنش‎هایی می‌باشند که فعالیت‎ها را بصورت مخفی بر روی سیستم عامل انجام می‌دهند بطوری که شما نمی‎توانید آن را مشاهده کنید اما عملکرد آن را بطور غیرمستقیم دریافت می‌کنید. از سیستم عامل موبایل نیز می‌توان به عنوان یک برنامه نرم افزاری یا Software Program یاد کرد که در درون خود مجموعه‎ای از نرم افزارهای موبایل را جا می‌دهد که در اینجا نیز شما تنها عملکرد سیستم عامل موبایل را دریافت می‌کنید.
اما اپلیکشن‌های موبایل عبارت‌اند از نرم افزارهایی که ارتباط مستقیم با پردازنده‎های سیستم عامل گوشی همراه دارند و مستقیماً درخواست‎های کاربران را انجام می‌دهند. آنچه که موجب تفاوت میان نرم افزار اپلیکیشن (Application Software) با برنامه نرم افزار یا (Software Program) می‌شود در واقع در عملکرد مخفی و یا مستقیم این دو است.
در حالی که اپلیکیشن‎های موبایل بصورت مستقیم کاری را انجام  می‌دهند که کاملاً  برای کاربران ملموس و قابل رؤیت است، نرم افزرهای موبایل یا همان Software Programs of mobile از دید کاربران مخفی هستند. نرم افزارهای موبایل بستر و شرایطی را ایجاد  می‌کنند که به وسیله آنها  می‌توان اپلیکشین‎های موبایل را نصب و اجرا نمود. در واقع قبل از نصب اپلیکشین‌ها، وجود نرم افزارها ضرورت دارد و اولویت با نرم افزارهای موبایل است که پس از آن تلفن همراه قابلیت نصب و اجرای اپلیکیشن‎ها را دارد.
رابطه میان نرم افزار و اپلیکیشن بصورت عموم و خصوص می‎باشد. نرم افزار جامعیت دارد و در برگیرنده اپلیکیشن است. به عبارت دیگر، در حالی که اپلیکیشن زیر مجموعه نرم افزارها به شمار می‎رود، نرم افزار یک اپلیکیشن محسوب نمی‎شود.

 

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

نرم افزار موبایل - طراحی نرم افزار موبایل

افزار به معنای ابزاری برای تولید یا انجام کار است که با نام نرم افزار در مقابل سخت افزار قرار ‎می‌گیرد. نرم افزار برنامه‎ها‎ی طراحی شده توسط تکنیسین‎ها‎ و مهندسین و همچنین تمامی مستندات و اطلاعات پیکربندی برنامه‎ها‎ی یک سیستم اعم از کامپیوتر، تبلت و یا گوشی را در بر ‎می‌گیرد، در حالی که سخت افزار شامل قطعات الکترونیک در یک سیستم است.
در تعریفی دیگر از نرم افزار گفته ‎می‎شود، برنامه‎ها‎ی رایانه ای که انجام امور و کارهای مختلف را بر روی یک سیستم و یا یک گوشی بر عهده دارد. واژه نرم افزار که معادل انگلیسی آن Software ‎ می‎باشد اولین بار در سال 1958 توسط جان توکی مورد استفاده قرار گرفت.
مسئولیت نرم افزارها ثبت اطلاعات، اعداد، تصاویر، صداها، اسناد و همچنین محاسبه و امکان جستجو می‌باشد. سرعت انجام امور توسط نرم افزارها موجب محبوبیت بیشتر آن‎ها‎ شده است.
نرم افزار موبایل نرم افزاری قابل نصب و اجرا بر روی گوشی‎ها‎ی همراه است که با زبان برنامه‎سازی برای گوشی‎ها‎ی با سیستم عامل اندروید، جاوا، ios و سیمبین طراحی می‎شوند.
تا چندی پیش گوشی همراه تنها به عنوان یک وسیله برای برقراری تماس استفاده می شد اما در چند سال اخیر که استفاده از گوشی‎ها‎ی هوشمند جای کامپیوترهای خانگی و شخصی را پر کرده است، یک گوشی کوچک که به راحتی در جیب جا ‎می‌شود ‎می‎تواند بسیاری از کارهایی را که کامپیوتر انجام ‎می‌داد را بر عهده بگیرد.
نرم افزارهایی که بر روی موبایل نصب می‎شود موجب تسهیل ارتباطات و گسترش مبادلات میان افراد در نقاط مختلف جهان می‎گردد. استفاده از موبایل در مقایسه با کامپیوتر آسان‌تر بوده و امکان دسترسی به آن نیز بیشتر است.
در ایران نیز ساخت و طراحی نرم افزار موبایل پیشرفت چشمگیری داشته است. این برنامه‎ها‎ که قابل نصب بر روی تمامی سیستم عامل‎ها‎ی تلفن همراه هستند، به زبان فارسی در بازار عرضه می‎شوند.پس مهم است که برای طراحی سایت خود یک نرم افزار اندروید یا نرم افزار موبایل طراحی کنید و شرکت شما تولید نرم افزار اندروید داشته باشد.وب یونیک به وسیله سرویس توسعه نرم افزار موبایل و ارائه مشاوره های نرم افزاری هدفمند  به شرکت های تجاری و سازمان ها کمک می کند تا بهترین راه حل را در زمینه نرم افزار های موبایل داشته باشند.شرکت وب یونیک ارائه دهنده خدمات طراحی سایت ،بهینه سازی سایت و طراحی سایت در اصفهان می باشد.

 

 

 

  • nafise poornajjar
  • ۰
  • ۰

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

معمولا وقتی کاربر بر روی دکمه back گوشی خود اشاره می کند، activity فعلی بسته شده و activity قبلی نمایش داده می شود (اگر activity اصلی باشد، از برنامه اندروید خارج می شود). اما ممکن است که بخواهیم به جای آن، یک سری کد اجرا گردد و عملیات های دیگری صورت گیرد.


برای این منظور، باید درون activity مورد نظرمان، کدهای زیر را بنویسیم :

@Override
public void onBackPressed() {
    // your code
}

سپس باید به جای عبارت // your code ، کدهای مورد نظر خودمان را بنویسیم که دوست داریم، هنگام اشاره کاربر به دکمه back گوشی، آن کدها اجرا شوند.

  • nafise poornajjar
  • ۰
  • ۰


همانطور که اطلاع دارید، قابلیت Lambda Expressions در جاوا نسخه 8 معرفی شد و مهمترین قابلیت در برنامه نویسی موبایل به حساب می‌آید. این قابلیت توسعه در این زبان را به شکلی قابل توجه، ساده و سریع می‌کند. اما همانطور که اطلاع دارد، در حال حاضر اندروید از این نسخه از جاوا پشتیبانی نمی‌کند. اما چطور می‌توانیم امکان استفاده از این قابلیت مفید را به Android Studio اضافه کنیم؟ در ادامه مراحل اضافه کردن این قابلیت در Android Studio و محیط لینوکس Ubuntu را دنبال کنید.

برای اضافه کردن پشتیبانی از این قابلیت از پلاگین Retrolambda برای Gradle استفاده خواهد شد، این پلاگین با تبدیل بایت کد جاوا نسخه 8 به 7 و یا 6 در هنگام کامپایل، این قابلیت را برای شما فراهم می‌نماید. اما در ابتدا نیاز به نصب نسخه 8 جاوا به عنوان نسخه پیش‌فرض در اوبونتو خواهید داشت.

از آنجا که استفاده از جاوای اوراکل برای توسعه اندروید توصیه شده است و این نسخه از جاوا در مخازن رسمی اوبونتو موجود نیست ابتدا می‌بایست مخزن webupd8team که یکی از PPA های معتبر اوبونتو است را به پکیج منجر خود اضافه کنید، سپس برای نصب از پکیج منجر استفاده کنید. دستورات زیر را به تریتیب در ترمینال وارد نمایید.
sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java8-installer
1
2
3
    
sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java8-installer

پس از اتمام پروسه نصب برای اطمینان از نصب جاوا 8 به صورت پیش فرض دستور زیر را برای نصب پکیج دیگری که به این منظور ایجاد شده وارد نمایید.
sudo apt-get install oracle-java8-set-default
1
    
sudo apt-get install oracle-java8-set-default

پس از اتمام نصب، موارد زیر را در انتهای فایل /etc/profile.d/jdk.sh اضافه نمایید.
export JAVA6_HOME="/usr/lib/jvm/java-6-oracle"
export JAVA7_HOME="/usr/lib/jvm/java-7-oracle"
export JAVA8_HOME="/usr/lib/jvm/java-8-oracle"
1
2
3
    
export JAVA6_HOME="/usr/lib/jvm/java-6-oracle"
export JAVA7_HOME="/usr/lib/jvm/java-7-oracle"
export JAVA8_HOME="/usr/lib/jvm/java-8-oracle"

سپس، موراد زیر را نیز در انتهای فایل /etc/profile.d/jdk.csh اضافه نمایید.
setenv JAVA6_HOME="/usr/lib/jvm/java-6-oracle"
setenv JAVA7_HOME="/usr/lib/jvm/java-7-oracle"
setenv JAVA8_HOME="/usr/lib/jvm/java-8-oracle"
1
2
3
    
setenv JAVA6_HOME="/usr/lib/jvm/java-6-oracle"
setenv JAVA7_HOME="/usr/lib/jvm/java-7-oracle"
setenv JAVA8_HOME="/usr/lib/jvm/java-8-oracle"

سپس فایل اصلی بیلد پروژه خود را در اندروید استدیو باز نموده و از طریق اضافه کردن خط مشخص شده در کد زیر، پلاگین Retrolambda را به Gradle معرفی کنید.
buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:1.2.3'
        classpath 'me.tatarka:gradle-retrolambda:3.1.0'
    }
}
1
2
3
4
5
6
7
8
9
    
buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:1.2.3'
        classpath 'me.tatarka:gradle-retrolambda:3.1.0'
    }
}

سپس برای فعال سازی پلاگین خطوط مشخص شده در کد زیر را به فایل بیلد مربوط به اپ اضافه نمایید.
apply plugin: 'com.android.application'
apply plugin: 'me.tatarka.retrolambda'

retrolambda {
    jdk System.getenv("JAVA8_HOME")
    oldJdk System.getenv("JAVA7_HOME")
    javaVersion JavaVersion.VERSION_1_7
}
1
2
3
4
5
6
7
8
    
apply plugin: 'com.android.application'
apply plugin: 'me.tatarka.retrolambda'
 
retrolambda {
    jdk System.getenv("JAVA8_HOME")
    oldJdk System.getenv("JAVA7_HOME")
    javaVersion JavaVersion.VERSION_1_7
}

پس از انجام مراحل بالا برای معرفی نسخه زبان مورد استفاده، کد زیر را به بلاک android در فایل بیلد اپ خود اضافه نمایید.
compileOptions {
    sourceCompatibility JavaVersion.VERSION_1_8
    targetCompatibility JavaVersion.VERSION_1_8
}
1
2
3
4
    
compileOptions {
    sourceCompatibility JavaVersion.VERSION_1_8
    targetCompatibility JavaVersion.VERSION_1_8
}

به عنوان آخرین مرحله، کد زیر را به فایل proguard-rules.pro اضافه نمایید و Gradle را مجددا سینک کنید.
Java
-dontwarn java.lang.invoke.*
1
    
-dontwarn java.lang.invoke.*

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

webuniq.com

  • nafise poornajjar
  • ۰
  • ۰

 دربرنامه نویسی اندروید (جاوا) برای برنامه نویسی موبایل یکی از متداول ترین ارور ها 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 ارائه می گردد،استفاده نمایید.

  • nafise poornajjar