gradle چیست ؟

سلام دوستان در این آموزش می خواهیم بدونیم Gradle (گریدل) چیست من نمی دونم چرا سایت های فارسی زبان انقدر لقمه رو می پیچونند  یا ترجمه ها مشکل داره یا کلا اشتباه می فهمند به هر حال خوبه بدونید gradle یک کلمه است و این نام را  موسس آن یعنی Hans Docter بروی آن گذاشته و  علت نام گذاری آن را تلفظ خوب آن اعلام کرد.
اگر در یک جواب کوتاه بخواهید بدونید گریدل چیست گریدل یک سیستم ساخت (build System ) است.
و جواب طولانی ما شاید بهتر باشه به این طور تعریفش کنم
قبل از اندروید استودیو ما از اکیلیپس برای اهداف توسعه استفاده می کردیم و نمی دانستیم چه جوری بدون استفاده از اکلیپس فایل apk خود را به اصطلاح build  کنیم (بسازمیش) ما این کار را در command line می توانسیتم انجام دهیم اما مجبور بودیم دستور هایی مثل dx , aapt را به طور کامل یاد بگیریم و eclipse زمان را برای ما save می کرد و نمی گذاشت تا ما با همچین دستور های پیچده و Low level درگیر بشویم. اگر دقت کرده باشید در eclipse یکسری فولدر به صورت مجزا وجو دارد منظورم فولدر هایی مثل src و res و… اما در اندروید استویو بیشتر فولدر ها در ریشه src قرار دارد یعنی خود res درون src است و در اینجا علت استفاده از gradle نمایان می شود. پس  gradle یک سیستم اتوماتیک است که این امکان در آن وجود دارد تا فایل های javd را به dex و تمامی فایل ها را به یک فایل فشرده شده در آورد ! اگر از gradle در اندروید استودیو استفاده نشود حجم یک اپ ساده حدودا 60 مگ می شود ! و امکان ندارد تا ما یک اپی رو اندروید استودیو می نویسیم از Gradle استفاده نکنیم چون خود gradle فایل های جاوا رو به jar تبدیل می کنه ولی کل کار دیگه که از حوضله این بحث خارج است در کل می توان گفت gradle یک سیستم ساخت است که بهترین ویژگی آن نسبت به سیستم های ساخت دیگر یکی کردن (فشرده کرده (combine ) ) کردن فایل ها به یک فایل است  و گریدل بر پاییه JVM نوشته شده است پس این به این معنی است که شما می توانید اسکریپت های خود را نوشته تا اندروید استودیو از آن استفاده کند شاید یکم گیج شده باشید من هم سختر از سایت های فارسی زبان توضیح دادم ولی کامل تر بود
یک مطلب خیلی جالب مرتبط با Gradle که از دونستنش ضرر نمی کنید !
Gradle سیستمی بر پاییه Plugin است . خب یعنی چی ؟!
یعنی این که اگر شما زبان برنامه نویسی خودتون رو داشتید و خواستید بخشی از وظایف رو اتوماتیک کنید (مثلا ساختن بعضی از پکیج ها مثل خروجی فایل های جاوا به صورت jar ) شما می توانید آن را به صورت یک پلاگین منتشر کنید تا بقیه هم بتونند از آن استفاده کنند.
شاید بپرسید چرا گوگل از آن استفاده کرده ؟
وقتی گوگل دید که این یک سیستم ساخت بسیار ساده , مفید , انعطاف پذیره و به جای این که از زبان curve یا Groovy  را برنامه نویسان یاد بگیرن بتون از هر زبانی استفاده کنن (البته نر هر زبانی در اندروید استودیو زبان جاوا است ولی شاید بشه گفت شبیه یک compiler کار می کنه ولی گفتن این حرف از نظر برنامه نویسی کاملا اشتباه است ) به این شکل بود که گوگل از آن استفاده کرد.
 
در گریدل شما می توانید کتاب خانه ها را از اینترنت دانلود کنید (دانلود نمیشه بهش گفت ولی کد ها و کلاس ها را برای شما قابل استفاده قرار میده  )
یعنی می توانید از یکسری کلاس که قبلا در اندروید استودیو نبوده بعد از آن استفاده کنید.

مطالعه بیشتر