برنامه نويسي اندرويد در حال حاضر به عنوان يکي از پرطرفدارترين مهارت هاي دنياي ديجيتال و برنامه نويسي در دنيا مطرح ميشود و هر ساله افراد زيادي عزم خود را براي شروع مسير
براي شروع هر مسيري قطعا بايد بدانيم اين مسير از کجا شروع شده و چه تاريخچه اي دارد و اساسا چيست، اما از آنجا که در بستر اينترنت مطالب، پادکست ها و ويدئوهاي زيادي در مورد تاريخچه اندرويد، شکل گيري هسته مرکزي و البته توسعه آن وجود دارد من تصميم گرفتم از پرداختن به اين موضوع صرف نظر کرده و اين مرحله تئوري و البته خواندني را به خودتان واگذار کنم و بجاي آن در اين قسمت شما را با اصطلاحات مهم در حوزه زبان برنامه نويسي اندرويد آشنا سازم.
به طور حتم، عدم وجود زبان مشترک و فهم اصطلاحات مهم ادامه مسير را براي شما دانشجويان عزيز سخت خواهد کرد.پس به شما توصيه ميکنم؛ مفاهيم و اصطلاحات مهم برنامه نويسي اندرويد را به صورت کامل خوانده و از آن لذت ببريد.
SDK يا همان Software Development Kit که از آن به عنوان کيت توسعه نرم افزاري ياد ميشود مجموعه اي از ابزارهايي است که براي بالابردن سهولت برنامه نويسي در يک محيط يا پلتفرم خاص طراحي و در اختيار برنامه نويسان قرار داده شده است.
SDK به برنامه نويس اين امکان را ميدهد تا او بتواند براي نرم افزارخود، چهارچوب، پلتفرم، سيستم کامپيوتر، کنسول گيمينگ و از همه مهم تر سيستم عامل ايجاد نمايد. SDK در اندرويد نيز در حقيقت همان کيتي است که گوگل در اختيار توسعه دهندگان اندرويد قرار داد تا آن ها بتوانند راحت تر اپليکيشن خود را طراحي کنند.
نکته: پس قبل از شروع هر کاري نياز است تا شما SDK اندرويد را بر روي سيستم خود نصب کرده و با استفاده از ابزارهاي موجود ايده خود را پياده سازي کنيد.
نکته2: شما به عنوان برنامه نويس اندرويد اگر قصد داريد از جاوا استفاده کنيد بايد کيت Java Development Kit يا همان JDK را دانلود کنيد براي اين مهم شما مي توانيد از توسعه دهندگان گوگل و يا سايت جاوا اقدام به اين کار کنيد. (در حال حاضر شما با مفهوم JDK نيز آشنا شديد.)
کيت توسعه بومي يا Native Development Kit، به برنامه نويسان و کاربران اين اجازه را ميدهد که کدهايي که به زبان C و ++C نوشته شده است را در اپليکيشن خود اجرا کنند.
لازم به ذکر است که NDK در حال حاضر زير مجموعه SDK بوده و برنامه نويس، هنگام نصب اندرويد استوديو (در ادامه به آن ميپردازيم) و SDK، نرم افزارها و ابزارهاي مختلفي را نيز همزمان تصب ميکند.
نکته: مهم ترين ويژگي NDK در اپليکيشن هاي مالتي مديا ميباشد چرا که برنامه نويس ميتواند از اين طريق سرعت اجراي برنامه را بهشکل قابل توجهي بهبود ببخشد.
گرادل يکي از رايج ترين مفاهيم و البته الفاظي است که برنامه نويسان اندرويد از آن استفاده ميکنند. در اصل گرادل به معني گرفتن خروجي از سيستم (اپليکيشن طراحي شده) ميباشد.
از مزيت هاي گرادل ميتوان به امکان شخصي سازي آن اشاره کرد. بدين صورت که شما ميتوانيد کدهاي خود را در فايل خود وارد کرده و خروجي مدنظر خود را به آساني دريافت نماييد.
نکته: در اندروبد استوديو افزونه اي به اسم گرادل وجود دارد که شما ميتوانيد از طريق آن به آساني از برنامه خود خروجي دريافت کنيد. اين افزونه به زبان groovy نوشته شده است و اين موضوع کار برنامه نويس اندرويد را بسيار راحت کرده است، چرا که ديگر نياز به يادگيري اين زبان برنامه نويسي نميباشد.(از مزاياي اندرويد استوديو)
شناسه اپليکيشن اندرويد يا مانيفست که اصطلاح بسيار رايجي در بين برنامه نويسان است، در اصل نشان دهنده جزييات مربوط هويت اپليکيشن ميباشد، در اصل مانيفست يک فايل در ميان اپليکيشن هاي اندرويدي است که در آن اطلاعات متفاوتي بيان ميشود.
مانيفيست فايل بسيار حساسي است البته به اين معنا که هر خطايي در ان ميتواند روند اجراي يک اپليکيشن را با مشکل مواجه سازد. در داخل مانيفست همانطور که گفته شد تمام جزييات اپليکيشن قرار ميگيرد مثل تم، پوسته کلي، دستورات خاص و…
در ادامه به بررسي بسته ها و فايل هايي که داخل مانيفيست قرار گرفته و شما بايد با آن ها آشنا شويد، ميپردازيم.
نام بسته مثل اثر انگشت ما انسان ها براي تمام اپليکيشن هاي اندرويد متفاوت است و هر اپليکيشني اسم بسته خاص خود را دارد، در اصل اسم بسته همان چيزي است که نرم افزارهاي ديگري مثل گوگل پلي يا کافه بازار از آن براي انتخاب و نشان دادن برنامه شما به ديگران استفاده ميکنند.
اين اسم توسط خود تيم برنامه نويس انتخاب شده و اغلب ترکيبي از سه اسم ميباشد.
وب سرويس يا Application Programming Interface يک مرز مشترک بين دو سرويس و سيستم مجزا از هم مي باشد. API در اصل کدي است که توسط برنامه نويسان نوشته شده و به ديگر برنامه ها اين اجازه را ميدهد تا بتوانند به آن متصل شده و با آن تعامل کنند.
براي اينکه کمي اين مفهوم براي شما ملموس تر شود آن را با يک مثال پيگيري ميکنم. بر فرض مثال اپليکيشني با يک API مشخص برنامه نويسي ميشود اين بدان معني است که اين برنامه در گوشي اندرويد با يک ورژن خاص فقط اجرا ميشود. به زبان ساده ورژني که ما در زبان عام از آن براي اندرويد ياد ميکنيم مثلا اندرويد 10 در زبان برنامه نويسي به شکل API بيان ميشود.
نکته: API در اندرويد وابسته به SDK مي باشد.
برنامه نويس بايد يک حداقل API را در اپليکيشن خود و در مانيفست تنظيم کند تا برنامه در API هاي پايين تر يا همان نسخه هاي پايين تر اندرويد قابل اجرا نباشد، اين موضوع همان MinsdkVersion ميباشد.
از طرفي اپليکيشن ها گرچه ممکن است در نسخه هاي بالاتر و يا پايين تر اندرويد کار کنند اما اين نکته حائز اهميت است که هر اپليکيشني قطعا براي يک نسخه خاص طراحي شده است، اين نسخه خاص همان Targetsdkversion مي باشد.
نکته: برنامه نويسان هر دو اين تغييرات را مي توانند از طريق مانيفست تنظيم کنند.
اکتيويتي در اصل به هر يک از صفحات اپليکيشن اندرويدي اطلاق ميشود، اين صفحات در برنامه يا همان اپليکيشن اندرويدي کنار هم قرار گرفته و از طريق دکمه هاي مختلف به هم منتقل مي شود. مثل يک بازي که بخش تنظيمات، حساب کاربري، ورود به بازي و … دارد. يک activity از دو بخش مجزا تشکيل شده است:
1) Class
2) Xml
کدهاي نوشته شده به زبان برنامه نويسي جاوا که پشت پرده و موتور فعاليت يک برنامه هستند در class قرارگرفته وآن بخش از اپليکيشن که ما در حال مشاهده و استفاده از آن هستيم در xml قرار دارد.
در اصل يک متخصص اندرويد، کدهاي مريوطه را در جاوا يا همان class قرار داده و ظاهر برنامه، قرارگيري المان هاي مختلف، رنگ و … را در بخش xml ذخيره ميکند.
Emulator يا شبيه ساز يکي از پر استفاده ترين بخش ها در طراحي اپليکيشن اندرويد ميباشد و براي توسعه دهندگان اپليکيشن يک نياز اساسي است. همانطور که در اين مقاله عرض کردم برنامه نويسان اپليکيشن هنگام طراحي بارها و بارها از اپ خود خروجي ميگيرند تا ببينند عملکرد اپليکيشن به چه صورت ميباشد.
براي اين مهم دو راه اساسي وجود دارد؛ تست کردن اپليکيشن روي يک دستگاه واقعي!، استفاده از شبيه ساز
اگر دقت داشته باشيد تقريبا تمام طراحان اپليکيشن دو مانيتور پيش روي خود دارند و يک مانيتور را کاملا به بخش emulator اختصاص داده اند.
نکته: از بهترين برنامه هاي شبيه ساز که سرعت قابل قبولي داشته و به ما دستگاه هاي مختلفي براي تست اپليکيشن را ارائه ميدهد ميتوان به genymotion اشاره کرد.
اندرويد استوديو نيز اين ويژگي را در پکيج خود دارد اما سرعت و قدرت genymotion بسيار بيشتر از شبيه ساز گوگل ميباشد.
اندرويد استوديو و همچنين eclipse به عنوان دو تا از معروف ترين و قدرتمند ترين محيط هاي توسعه اندرويد در بين برنامه نويسان، مورد استفاده قرار ميگيرد.
گرچه در گذشته eclipse حرف اول را در برنامه نويسي اندرويد ميزد، اما اندرويد استوديو در سال هاي اخير با آپديت هاي مختلف توانسته به شکل قابل توجهي گوي سبقت را از رقيب خود بربايد.
در ادامه به بين برخي از برتري هاي android studio نسبت به eclipse ميپردازيم:
در android studio خطايابي و رفع آن آسان تر است.
طراحي رابط کاربري در android studio بسيار راحت تر است.
در محيط android studio بررسي منابع مصرفي رم و پردازنده بسيار کامل است.
و …
نکته: البته لازم به ذکر است که شما براي استفاده و به اصطلاح ران کردن android studio بر روي سيستم خود بايد سيستمي قدرتمند با ويژگي هاي سخت افزاري بالايي داشته باشيد.
در اين مقاله ما سعي کرديم شما را با اصلي ترين و مهم ترين مفاهيم و اصطلاحات دنياي برنامه نويسي اندرويد آشنا سازيم. اگرچه اصطلاحات و مفاهيم اندرويد به اين تعداد ختم نميشود، اما اگر شما قصد ورود به دنياي برنامه نويسي اندرويد را داريد اين اصطلاحات پيشنياز کار شما ميباشد. در مقالات بعدي،
مفاهيم اوليه در يادگيري زبان برنامه نويسي پايتون
برنامه ,اندرويد ,اپليکيشن ,نويسي ,يک ,يا ,برنامه نويسي ,است که ,را در ,در اصل ,از آن ,برنامه نويسي اندرويد ,دنياي برنامه نويسي ,زبان برنامه نويسي ,برنامه نويسي اندرويد آشنا
درباره این سایت