سوال در مورد تفاوت کاربرد ActivityEnhanced و G
سلام.
من تفاوت کاربرد ActivityEnhanced و G رو متوجه نشدم. اگه امکانش هست یه توضیحی بدین. ممنون.
اگر بخواهیم، اکتیویتیهای ما ویژگیهای مشترکی داشته باشند، مثل مثال استاد که میخواستند برای هر دو اکتیوتی موجود در برنامهی تست، منوی مشترک داشته باشند، از یک اکتیویتی با نام ActivityEnhanced استفاده میکنیم، که بقیهی اکتیویتیها از این ارثبری میکنند، اما G کمی فرق میکند و به جای ارث بری از Activity از Application ارث بری دارد و قبل از آغاز هر اکتیویتی فراخوانی میشود، بر ای همین بهترین مکان برای تعریف چیزهایی است که از آنها در طول برنامه زیاد استفاده میکنیم، یک بار در G تعریف میکنیم و در طول برنامه فقط با یک خط کَد فراخوانی میکنیم و دیگه نیاز به تعریف مجدد در هر بلوک و هر اکتیویتی نداریم.
چیز پیچیده ای نیست و فعلا الزامی در استفاده از اونها نیست، ولی کار رو راحت تر می کنند و کد نویسی را هم تمییز تر.
هر چیزی رو که قرار هست یک بار تعریف کنید و چند بار استفاده کنید، در G تعریف میکنیم، این میتونه شامل یه LOG ساده باشه،
مثلاً شما یک String رو که خیلی در متن استفاده می کنید، اینجا به صورت public تعریف می کنید و دیگه لازم نیست، برای تغییر متن، برید 100 تا کدی که از این عبارت استفاده شده رو تصحیح کنید، یه بار تصحیح می کنید و تمام.
مثال خود استاد بهتره، مثل وقتی که توی G تعریف می کنیم:
public String LogTag = "LOG";
و در هنگام Log گرفتن این عبارت رو فراخوانی می کنیم:
Log.i(G.LogTag, "some things");
این شاید برای یکی دو عبارت در ابتدای کار زیاد به درد بخور به نظر نرسه ولی وقتی تعداد کدهایی که نوشتی زیاد شد و خواستی ویرایش کنی، خیلی راحت و بدرد بخور هست
پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .