برنامه نویسی و ITبرنامه‌نویسی موبایلجاوا

ساخت برنامه اندروید با جاوا به چه صورت است

نحوه‌ی ساخت برنامه اندروید با جاوا

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

 

ویدیو پییشنهادی: آموزش پیشرفته جاوا
آموزش پیشرفته جاوا

 

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

 

نحوه‌ی ساخت برنامه اندروید با جاوا

 

برای ساخت برنامه اندروید با کمک جاوا باید برخی از الگوها و قابلیت‎‌های از پیش تعیین شده را در هر یک از سازندگان محبوب ساخت برنامه جاوا تست کنید، این عمل (ساخت برنامه اندروید با جاوا) یک سرمایه گذاری با ارزش فوق العاده عالی برای پول است که یک آزمایش سریع مانند آزمایش بازار را برای شما انجام می‌دهد. فقط این مورد را به یاد داشته باشید که سعی نکنید با یک MVP که شبیه به ده‌ها راه حل متوسط در همان سیستم عامل یا مشابه برنامه‌های اندرویدی بومی است، رقابت کنید.

 

 

می‌توانید برای ساخت برنامه با جاوا به یک آژانس توسعه نرم افزار اندروید متخصص بروید. آنها طیف کاملی از خدمات را در زمینه توسعه، طراحی و تضمین کیفیت به شما ارائه می‌دهند. این احتمالاً گرانترین روش برای دریافت یک برنامه با طراحی جاوا است.

یک اپلیکیشن جداگانه اندرویدی با یک رابط کاربری درخشان، قابلیت‌های پیشرفته و همچنین داشتن طراحی جذاب از موثرترین روش‌ها برای ایستادگی آن برنامه است.

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

حال که این موضوع را فهمیدیم چگونه می‌توانیم یک برنامه با کمک جاوا تولید کنیم؟ برای جواب این پرسش همراه ما باشید.

چگونگی برنامه نویسی اندروید با جاوا

کیت توسعه نرم‌افزار اندروید (Android) اصلی‌ترین ابزاری است که توسعه‌دهندگان برای تهیه برنامه نویسی اندروید با جاوا از آن استفاده می‌کنند.

اول از همه، برنامه اندروید استودیو (Android Studio) را نصب کنید. این محیط رسمی توسعه IDE برای اندروید است و برای سیستم عامل ویندو macOS و لینوکس در دسترس است. با این وجود می‌توانید هنگام برنامه نویسی اندروید با جاوا از محیط‌های دیگر علاوه Android Studio استفاده کنید.

اگر Android SDK و سایر اجزای آن را روی رایانه خود نصب نکنید، Android Studio آنها را به صورت خودکار بارگیری می‌کند. از آنجا که Android SDK یک محیط برنامه‌ نویسی مناسب برای ساخت برنامه اندروید با جاوا است باید با IDE نصب شود.

SDK شامل مواردی همچون کتابخانه‌ها، اجرایی‌ها، اسکریپت‌ها، اسناد و مدارک و… است.

همچنین ایده خوبی است که یک شبیه‌ساز اندروید (Android) را روی رایانه خود نصب کنید تا بتوانید بعداً برنامه‌های APK را روی آن اجرا کنید. شبیه‌ساز با برنامه Android Studio همراه است.

 

 

حال که تمام ابزار‌های مورد نیاز را روی رایانه خود نصب کرده‌اید، می توانید اولین پروژه خود را ایجاد کنید. برای برنامه نویسی اندروید با جاوا شما باید مفاهیم اساسی آنچه را که یک برنامه تشکیل می‌دهد را بشناسید و درک کنید.

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

تعدادی از مزیت‌های کلیدی در استفاده از پرونده‌های منابع XML برای طراحی یک رابط کاربری برخلاف نوشتن کد جاوا وجود دارد. در حقیقت، گوگل به مدارک قابل توجهی در اسناد اندرویدی می‌رود تا فضایل منابع XML را بر روی کد جاوا بگذارد. یکی از مزیت‌های مهم رویکرد XML شامل امکان استفاده از ابزار Graphic Layout است که به خودی خود، منابع XML را تولید می‌کند.

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

 

چگونگی برنامه ‌نویسی اندروید با جاوا

 

کد جاوا برای ایجاد رابط‌های کاربر و همچنین طراحی اپلیکشن به صورت پویا در زمان اجرا ایده آل است. بنابراین، برخی از توسعه دهندگان صرف نظر از مزایای ارائه شده توسط رویکردهای مختلف صرفاً ترجیح می‌دهند کد جاوا را بنویسند تا از ابزارهای طرح بندی و XML استفاده کنند.

حال که مزیت‌ها و رابط‌های کاربری جاوا را فهمیدیم می‌توانیم به سراغ طراحی یک اپلیکشن اندروید با استفاده از جاوا برویم به این صورت که:

Eclipse را راه اندازی کنید و یک پروژه برنامه اندرویدی با نام JavaLayout با نام بسته مناسب و انتخاب SDK ایجاد کنید. ایجاد یک فعالیت خالی و استفاده از نمادهای پیش فرض پرتاب (launcher) را درخواست کنید. فعالیت JavaLayoutActivity و طرح مربوط به فعالیت javalayout را با طرح قطعه به نام fragment_java_layout نامگذاری کنید.

پس از ایجاد پروژه، در پنل Package Explorer حرکت کنید تا به <name name> برسید و آن انتخاب کنید و بعد بر روی پرونده JavaLayoutActivity.java کلیک کنید تا در پانل ویرایش بارگیری شود. همانطور که انتظار داشتیم، Eclipse فعالیت الگو را ایجاد کرده و روش onCreate را نادیده گرفته است و مکانی ایده آل برای اضافه کردن کد جاوا برای ایجاد یک رابط کاربری و طراحی اپلیکشن فراهم کرده است.

 

 

روش onCreate در حال حاضر برای استفاده از یک فایل طرح منبع (resource layout) و یک قطعه برای رابط کاربری طراحی شده است. بنابراین با حذف این موارد و سطر ها از روش زیر شروع کنید تا به این صورت بخوانید:

 

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
}

 

در قسمت بعدی در روش onCreate برخی از کد‌های جاوا برای اضافه کردن یک موضوع RelativeLayout با یک نمایش دکمه‌ای واحد شروع به فعالیت می‌کند. این عمل باعث ایجاد موارد جدید مانند کلاس‌های RelativeLayout می‌شود.

سپس دکمه نمای (Button view) باید به نمای RelativeLayout اضافه شود که به نوبه خود با تماس با روش setContentView است از نمونه‌های فعالیت آن نمایش داده می‌شود.

 

package com.example.javalayout;

import android.app.Activity;
import android.app.ActionBar;
import android.app.Fragment;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.ViewGroup;
import android.os.Build;
import android.widget.Button;
import android.widget.RelativeLayout;

public class MainActivity extends Activity {

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Button myButton = new Button(this);
RelativeLayout myLayout = new RelativeLayout(this);
myLayout.addView(myButton);
setContentView(myLayout);
}
.
.
.
}

 

پس از اتمام موارد فوق، برنامه یا اپلیکشن (بر روی دستگاه فیزیکی یا شبیه ساز) را کامپایل (compile) و اجرا کنید. پس از راه‌اندازی، نتیجه قابل مشاهده دکمه‌ای خواهد بود که هیچ متنی در گوشه سمت چپ بالای نمای RelativeLayout را ندارد.

حال در این قسمت می‌خواهیم ویژگی‌های نمایش را تنظیم کنیم که برای ما به پیش زمینه نمای RelativeLayout به رنگ آبی و نمای دکمه برای نمایش متنی که می‌خواند Press me نیاز داریم. هر دو این کارها را می‌توان با تنظیم ویژگی‌ها بر روی نماها همانطور که در بخش کد زیر مشخص شده است بدست آورد:

 

package com.example.javalayout;

import android.app.Activity;
import android.app.ActionBar;
import android.app.Fragment;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.ViewGroup;
import android.os.Build;
import android.widget.Button;
import android.widget.RelativeLayout;
import android.graphics.Color;

public class MainActivity extends Activity {

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Button myButton = new Button(this);
myButton.setText("Press me");
myButton.setBackgroundColor(Color.YELLOW);

RelativeLayout myLayout = new RelativeLayout(this);
myLayout.setBackgroundColor(Color.BLUE);

myLayout.addView(myButton);
setContentView(myLayout);
}
.
.
.
}

 

برنامه و اپلیکشن اندروید اکنون کامپایل (compiled) شده و اجرا شده است طرح تنظیمات ویژگی را نشان می‌دهد به‌ گونه‌ای که طرح با پس زمینه آبی ظاهر می‌شود و دکمه متن اختصاص داده شده را بر روی یک پس زمینه زرد نشان می‌دهد.

چگونه با کمک جاوا برنامه برای دسکتاپ بسازیم

ما در این بخش قصد داریم تا یک برنامه دسکتاپ ساده ایجاد کنیم که متن انگلیسی را به مورس کد و بالعکس در مراحل بسیار ساده و همچنین مرور کلی از رابط کاربری گرافیکی جاوا ترجمه کند. این یک آموزش مقدماتی در دنیای Graphics Interface User (GUI) با زبان برنامه‌نویسی جاوا خواهد بود.

ابتدا قبل از شیرجه رفتن به بخش گرافیکی، اجازه دهید منطق رانندگی (driving logic) را مرور کنیم HashMap زیر (کلاس Map که یک فروشگاه Key-Value است) برای ساخت فرهنگ لغت نامه‌های انگلیسی و کد مورس مربوطه استفاده می‌شود. بنابراین ما چیزی شبیه به این مورد داریم:

 

private HashMap<String, String> englishToMorseLib = new HashMap<>();
englishToMorseLib.put("A", ".-");
englishToMorseLib.put("B", "-...");
englishToMorseLib.put("C", "-.-.");
.
.
.
.
//link to full source code on github is giving at the end of the article

 

سپس در این موقعیت دو روش ایجاد شد: یکی ترجمه متن انگلیسی به کد مورس و دیگری برای انجام بالعکس آن. در هر دو حالت، متن با استفاده از Regex که با فضای سفید و کاراکترهای خط جدید مطابقت می‌کند تقسیم می‌شود. هر یک از آرایه‌های حاصل با بهره‌گیری از Java Streams برای کارآیی بهتر پردازش می‌شوند.

 

//this method will convert English Words to Morse Code
public String englishWordToMorseWord(String englishWord) {
StringBuffer buffer = new StringBuffer();
Stream.of(englishWord.split("[\\s\\n]"))
.forEach( s -> {
for(char c: s.toCharArray()) {
buffer.append(englishToMorseLib.containsKey(String.valueOf(c).toUpperCase()) ? englishToMorseLib.get(String.valueOf(c).toUpperCase()) + " " : "?? ");
}
buffer.append(" / ");
});
return buffer.toString();
}
//this method will convert Morse code to English Word
public String morseWordToEnglishWord(String morseWord) {
StringBuffer buffer = new StringBuffer();
Stream.of(morseWord.split("[\\s\\n]"))
.filter((s) -> s != null && !s.isEmpty())
.forEach( s -> {
if(s.equalsIgnoreCase("/") || s.equalsIgnoreCase("|")) {
buffer.append(" ");
} else {
buffer.append((morseToEnglishLib.containsKey(s) ? morseToEnglishLib.get(s) : "?? ").toLowerCase());
}
});
return buffer.toString();
}

 

حال می‌خواهیم به سراغ عناصر جاوا برای طراحی برنامه برای دسکتاپ برویم.

عناصر GUI در جاوا

جاوا مجموعه‌ای غنی از عناصر رابط کاربری گرافیکی دارد که به عنوان بلوک‌های ساختمانی برای یک برنامه کامل دسکتاپ از GUI استفاده می کند.

عنصر JFrame

بالاترین لایه Java GUI JFrame است. این خارجی‌ترین کانتینر (container) است که عناصر یا موارد دیگر را در خود جای داده است. خطوط کدنویسی زیر یک شی JFrame ایجاد می‌کنند.

 

//create JFrame Instance
JFrame frame = new JFrame();
frame.setTitle("Morse Code Translator by Seun Matt (@SeunMatt2)");
frame.setLayout(new BorderLayout());

//add other containers and elements to the JFrame
frame.add(mainPanel, BorderLayout.CENTER);

frame.setSize(new Dimension(800, 650));

//this terminate the app when the close button is clicked
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

//this will make the app to always display at the center
frame.setLocationRelativeTo(null);

//well, I don't want you to resize the window
frame.setResizable(false);

//and yes this will show the visible frame/app
frame.setVisible(true);

 

آنچه کد فوق انجام می‌دهد ایجاد اساس و نمونه‌ای از شی JFrame است که تنظیم پارامترهایی از قبیل عنوان چیدمان، اندازه، مکان و همچنین تنظیم رفتار JFrame مانند توانایی تغییر اندازه قاب و قابلیت مشاهده است.

 

عنصر JPanel

این ظرف (container) است به این معنی که عناصر دیگر را در کنار هم نگه می‌دارد. خطوط کدنویسی زیر مسئول ایجاد سطر دکمه در پایین قسمت Morse Text در سمت راست برنامه هستند.

 

JPanel morseControlPanel = new JPanel();

//set the layout style
morseControlPanel.setLayout(new FlowLayout(FlowLayout.RIGHT));

//add the Morse >> English button
morseControlPanel.add(morseToEnglishBt);

//add the Clear Text >> button
morseControlPanel.add(clearMorseText);

نوشته های مشابه

‫3 دیدگاه ها

  1. مطالب اونطور که باید گویا و واضح نیستن ، برای یک شخص مبتدی یا کسی که حداقل حرفه ای نیست این مطالب منظور رو واضح به مخاطب نمی رسونه

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

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دکمه بازگشت به بالا