مرجع مقالات رسمی طراحی اپلیکیشن

مقالات رسمی طراحی اپلیکیشن

مرجع مقالات رسمی طراحی اپلیکیشن

مقالات رسمی طراحی اپلیکیشن

معرفی شش لایبرری برتر ORM برای اندروید


در بخش اعظمی از اپ های اندروید نیاز میباشد تا داده ها را از دیتابیس اخذ کنیم، ولی گه گاه تعداد درخواست های ارسال گردیده  طراحی اپلیکیشن برای دیتابیس بسیار زیاد میباشد و از این رو نیاز میگردد تا از یک ORM برای سئو همت نرم افزار و کاهش وسعت عملیات به کار گرفت و روی بقیه بخش های نرم‌افزار متمرکز شد.

درین مقاله قصد دارم به معرفی 6 لایبرری برتر ORM بپردازم. امید داریم تا بعد از مطالعه این مقاله، تعیین نیکی داشته باشید و بتوانید شایسته ترین لایبرری را بسته به نیازمندی های پروژه خویش گزینش نمایید.

 

Room

گوگل در اتفاق افتاد I/O 2017 خویش به معرفی Room پرداخت که در واقعیت یک لایبرری برای SQLite آبجکت مپینگ است و مطابقت خیر با Clear Architecture داراست.

 

سایت: https://developer.android.com/topic/libraries/architecture/room.html

 

OrmLite

Object Relational Mapping Lite یا این که به عبارتی OrmLite یک ORM بی آلایش و معدود وسعت میباشد و کادر ورک های متفاوت جاوا مانند Spring نیز از این ORM پشتیبانی میکنند.

OrmLite از فراخوانی های نیتیو به دیتابیس SQLite اندروید پشتیبانی میکند و در تارنما آن هم می‌توانید مستندات مختص به اندروید را به طور جدا بیابید.

 

@DatabaseTable(tableName = \"account\")
public class Account {
@DatabaseField(id = true)
private String username;

@DatabaseField(canBeNull = false)
private String password;

Account() {
// a must defined no-arg constructor
}
public Account(String username, String password) {
this.username = username;
this.password = password;
}
//...getter and setter methods can go below
}
 

OrmLite منبع گشوده بوده و در GitHub می‌توانید آن را بیابید.

 

وب سایت: http://ormlite.com

 

ActiveAndroid

این ORM به شما قابلیت و امکان می‌دهد تا فارغ از تایپ کردن اوامر SQL، رکوردهای دیتابیس SQLite را ذخیره و بازیابی نمائید.

لایبرری همگی عملیات و پیکربندی را انجام می دهد و صرفا با یکسری کد معمولی و پیکربندی ابتدایی می توانید از آن به کار گیری نمائید.

می توانید فولدر JAR را دانلود کرده یا این که با استعمال از کامند ant، فایل لایبرری را کامپایل فرمائید.

 

@Table(name = \"Books\")
public class Item extends Model {
@Column(name = \"Name\")
public String name;

@Column(name = \"Price\")
public float price;

@Column(name = \"Publisher\")
public String publisher;
}
 

وب سایت: http://www.activeandroid.com

 

GreenDAO

در‌حالتی که که پروژه تان جدول های متعددی از اطلاعات داراست، بهتر میباشد از این لایبرری استعمال فرمائید. greenDAO سریع ترین لایبرری ORM برای اندروید به حساب می آید. نرم‌افزار هایی مانند Pintrest و Path که بیش تر از 10 میلیون نصب داشته اند نیز از این لایبرری استعمال کرده اند.

 



 

در تحت مثال ای از ایجاد آبجکت و اضافه کردن خصوصیت های متفاوت به آن را مشاهده می کنید:

 

Entity account = schema.addEntity(\"Account\");
account.addIdProperty();
account.addStringProperty(\"username\");
account.addStringProperty(\"password\");
 

سایت: http://greenrobot.org/greendao

 

SugarORM

SugarORM یک لایبرری ORM میباشد که فقط برای اندروید درست شده و مقصود آن بی آلایش سازی تعاملات با دیتابیس SQLite است.

 

public class Game extends SugarRecord {
String title;
String developer;

public Game(){
}

public Game(String title, String developer){
this.title = title;
this.developer = developer;
}
}
 

//Add new 
Game game = new Game(\"Uncharted 4\", \"Naughty Dog\");
game.save();
//find and delete a game 
Game game = Game.findById(Game.class, 1);
game.delete();
//list all games
List<Game> games = Game.listAll(Game.class);
Game.deleteAll(Game.class);
 

وب سایت: http://satyan.github.io/sugar/index.html

 

DBFlow

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

 

//define a database
@Database(name = AppDatabase.NAME, version = AppDatabase.VERSION)
public class AppDatabase {
public static final String NAME = \"App\";
public static final int VERSION = 1;
}
//define a table
@Table(databaseName = AppDatabase.NAME)
public class TestModel1 extends BaseModel {
@Column(columnType = Column.PRIMARY_KEY)
public
String name;
}
 

وب سایت: https://github.com/Raizlabs/DBFlow

 

بقیه لایبرری های ORM اندروید:

Requery: یک لایبرری امروزی SQL در اندروید می باشد. این لایبرری رابط های مدرنی را در اختیارتان قرار می‌دهد تا با استعمال از آنان بتوانید کوئری بزنید.

Ollie: یک ORM کامپایل-تایم برای اندروید میباشد که از RxJava نیز پشتیبانی میکند.

RushOrm: شبیه بقیه لایبرری ها، RushOrm با مپینگ کلاس های جاوا به جدول های SQL، نیاز به زدن کوئری های متفاوت را کاهش می‌دهد. میتوان این لایبرری را در پروژه هایی که ساختار داده ای پیچیده ای دارا هستند یا این که از Rest API استعمال میکنند، به فعالیت موفقیت.

مراحل طراحی اپلیکیشن/از ایده تا طراحی


فرآیند پباده سازی برنامه


از ایده تا پباده سازی


ارزیابی قابلیت پیاده سازی : بعداز اینکه  ایده ای به ذهنتان آمد آن را بنویسید طراحی اپلیکیشن و طریق های پیاده سازی آن را برای خویش محاسبه نمایید تا مشاهده کنید  که آیا به هیچ وجه قابلیت اجرای ایده تان وجود دارااست یا این که نه.همینطور ممکن میباشد مانع ها و مشکلاتی بر رمز منش اجرای ایده تان باشد , آن هارا نیز در لحاظ بگیرید  تا درصورتی که حل شدنی باشند حل نمائید چنانچه خیر دنبال شیوه راه حل یا این که تغیییر ایده خویش باشید.


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



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

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

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



 


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

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


چگونه سفارش ساخت اپ موبایل بدهیم؟


غرض از ایجاد اپ معین نمایید
رقبای احتمالی را پیدا و تحلیل  طراحی اپلیکیشن  فرمایید
یک طرح اول بروی برگه بکشید
موسسات ساخت و ساز اپ را تحلیل فرمائید
چه مواقعی را در قرارداد توصیه تولید نرم افزار تحلیل کنیم؟
چطور متوجه شویم بها تولید نرم‌افزار صحیح تقریب زده شده‌است؟
پیشنهاد ایجاد نرم افزار نیتیو باشد یا این که هیبریدی؟
چطور اپ تشکیل‌شده را تحویل بگیریم؟
پشتیبانی دربرگیرنده چه مواقعی باشد؟
آیا توسعه و گسترش موردنیاز میباشد؟
زیرساخت و سرور صاحب خانه اپ کجا باشد؟
مجوزهای موردنیاز برای تولید اپ کدام میباشد؟


1- غرض از ساخت‌و‌ساز نرم افزار تلفن همراه معین فرمائید
یک شیت اتوماتیک بردارین و به‌این سوال های جواب به این. مشخص و معلوم نمایید برای چه عده ای قصد ساخت و ساز نرم‌افزار تلفن همراه را دارید. جنسیت اونها چیه؟ در چه منزلت سنی قرار دارن؟ بیشتر در چه جای هایی حضور دارن؟ چه سرویس یا این که محصولی را از روش نرم افزار میخواین بدین اشخاص ارائه به این و مهم ترین سرویس یا این که جنس شما چیه؟ مزیت شما نسبت به بقیه نرم افزار ها در چیه؟

چشماتون ببندین و فرض فرمائید اپ شما تشکیل‌شده و بروی کافه بازار قرار داره. شما چه نکته ای دارین که سبب ساز میشه خودتون این برنامه نصب نمایید؟ آیا حقیقتا نصب می کنید؟ در‌صورتی‌که نصب کردین چه چیز سبب گردد که به یکی دوستاتون هم بگین نصب کنه؟

2- حریف ها رو حداقل نگیرید. پیداشون فرمائید
همین حال حاضر که ایده ایجاد برنامه به ذهنتون رسیده و دنبال یک کمپانی یا این که فریلنس برای تولید اون میگردین احتمالا رقبایی در بازار وجود دارن که اون برنامه ساختن و یا این که توده ی دیگه در مکان دیگه دارن به همین ایده برای ایجاد نرم‌افزار تامل میکنن. پیداشون نمائید.

تو گوگل کاوش نمائید. برین تو مارکت ها مثل کافه بازار یا این که گوگل پلی و نرم افزار استور دنبالشون بگردین. برنامه هاشون نصب فرمائید. ذیل و روشون نمایید ببنید چه نقاط قوت و ضعفی دارن. ورقه و خود کار که کنار دستتون می‌باشد. یادداشت بردارین.

3- یک طرح نخستین بروی صفحه بکشید
چشماتونو ببندین. فرض فرمایید اپ شما درست شده. وارد نرم‌افزار بشید و از ورقه لاگین و ورود استارت به کشیدن صفحه های بکنید. دوست دارین کاغذ اساسی چه شکلی باشه؟ چه امکاناتی در خودش جا بده. صفحات داخلی چه شکلی باشه؟ بعداز کشیدن این صفحه ها روی شیت هم اکنون شما یک طرح اول یا این که پروتوتایپ دارین. اینو در هنگام پیشنهاد برنامه به کمپانی خالق نشون به این. اما کمپانی بعداز اون طرح شما رو بی نقص کرده و مبادرت به طراحی صفحه میکنه. ولی میتونید از اپ های مطرح اهل ایران یا این که فرنگی نیز ایده بگیرید. 

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

5- مواقعی را که بایستی در هنگام عقد قرارداد ساخت و ساز نرم افزار رعایت فرمایید
در اولِ قرارداد بایستی طرفین به صحت معرفی گردیده باشند. طرف نخستین صاحب کار که شما باشید و طرف دوم پیمانکار که کمپانی تولید برنامه میباشد. درستی داده ها وارداتی را با مدارک کمپانی بسنجید. فردی که از طرف کمپانی مبادرت به امضا قرارداد می نماید می بایست صاحب و مالک حق امضا باشد. قضیه قرارداد ساخت‌و‌ساز نرم‌افزار بایستی خلاصه انجام فعالیت را در برگرفته باشد. یعنی به وضوح معلوم باشد پیمانکار چه چیزی را و به چه نحوی قرار میباشد برای صاحب کار بسازد. ضمیمه قرارداد معمولا دربرگیرنده شرح جزئیات تجهیزات سامانه و اپ به همدم صفحه ارایی منحصر به فرد یا این که غیر منحصر خواهد بود. ضمیمه های تولید اپ را به اعتنا آنالیز نمایید تا به عبارتی مراد شما در ضمیمه وجود داشته باشد. تعهدات پیمانکار و صاحبکار بایستی روشن و معلوم باشد و در غایت بندهای پشتیبانی ساخت‌و‌ساز برنامه می بایست معلوم نماید که پیمانکار تا چه سطحی و به چه شکل سرویس ها پشتیبانی خویش را ارائه می‌دهد.

6- بها تولید برنامه گوشی چه‌طور معین میشود؟
ارزش معمولا بر پایه ی ترازو ساعت صرف گردیده برای ایجاد اپ و بک اند آن معلوم می‌شود. حقوق ساعتی هر نفر نیروی فنی مبتنی بر تخصص سالانه به وسیله سازمان نظام صنفی رایانه ای در اولِ هر سال مشخص و معلوم می گردد. شرکت های بر طبق این حقوق و دستمزد و معیار ساعت ما یحتاج هر پروژه برآورد اول ای از ارزش ایجاد اپ انجام میدهند. به کار گیری از تکنولوژی های فراتر ساخت و ساز نرم افزار به طور نیتیو و همینطور گویش نرم‌افزار نویسی سطح فراتر حقوق و دستمزد اپلیکیشن نویس را ارتقاء داده براین اساس نرم افزار های تشکیل شده کیفیت خوب هزینه بیشتری را برای شما در بر خواهند داشت. از کمپانی نرم افزار نویسی بخواهید تحلیل ارزش تولید اپ را برای شما ارسال کنند.

معرفی 25 لایبرری و ابزار کارآمد برای توسعه دهندگان اندروید - بخش دوم


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

 

14. gradle-dependency-graph-generator-plugin

به یاری این افزونه گرادل می توانید تعلق های پروژه را به طور گراف به تصویر بکشید.

 



 

در داکیومنت طریق فعال‌سازی پروژه و به کارگیری از آن شرح داده گردیده و این پروژه ذیل مدرک کارشناسی Apache 2.0 عرضه شده‌است.

 

15. Runtime permission

به گفته Florent Champigny این لایبرری معمولی ترین رویه برای درخواست مجوزهای ران تایم (هنگام اجرای نرم افزار) میباشد که برای گویش های ذیل در دسترس است:

Kotlin
Kotlin with Coroutines
RxJava
Java8
Java7
 



 

برای کسب داده ها بیشتر نگاهی به داکیومنت بیندازید. این پروژه زیر مدرک کارشناسی Apache 2.0 عرضه شده‌است.

 

16. Prefekt

Prefekt یک لایبرری SharedPreferences برای کاتلین می باشد که به راحتی متوانید از آن استعمال فرمائید و به لطف سیستم in-memory caching با صرفه نیز است. در صورتیکه مقدار  SharedPreferences عوض گردد، یک فراخوانی شکل میپذیرد.

 



 

به گفته تالیف کننده، Prefekt تجهیزات جالبی داراست و ذیل مدرک لیسانس Apache 2.0 عرضه شده‌است.

 

17. ColorPickerPreference

به یاری این لایبرری می‌توانید ColorPickerView ،ColorPickerDialog و ColorPickerPreference را پیاده سازی فرمایید.

 



 

فقط با لمس عکس های آلبوم می‌توانید مقادیر HSV ،RGB و کد رنگی HTML آنها‌را بگیرید.

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

این لایبرری پایین مدرک کارشناسی Apache 2.0 عرضه شده‌است.

 

18. MusicVisualization

این پروژه music visulization shader را از WebGL وارد Android OpenGL ES میکند. به امداد ویژوالایزر سیستم ftt و دیتای waveform را از صدا می گیرد و آن‌ها را برای اپ shader ارسال میکند.

 



 

یک apk مثال هم در دسترس می باشد.

این پروژه زیر مدرک لیسانس Apache 2.0 عرضه شده‌است.

 

19. TreeView

Android TreeView برای اکران دیتا به طور ساختار درختی آیتم به کار گیری قرار می گیرد.

این لایبرری از الگوریتم های مختلفی پشتیبانی میکند. اکنون صرفا الگوریتم Walker پیاده سازی شده‌است.

 



 

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

 

20. inline-youtube-view

در شرایطی که می خواهید از یوتیوب در اپ اندروید به کار گیری نمایید می‌توانید از این لایبرری امداد بگیرید. کامپوننت YouTube برای اندروید، آی وی اس و React Native قابل استعمال میباشد.

 



 

اما مشکلاتی در به کارگیری از این لایبرری وجود داراست که در پایین به بعضی از این موردها اشاره گردیده:

YouTube SDK در کل تلفن همراه ها فعالیت نمیکند (در صورتیکه که YouTube Services حذف گردیده باشد)
قابلیت و امکان اجرای بیشتر از یک instance از ویوی یوتیوب نیست
در اجرای یکسری ویدئو در یک لیست واحد نقص‌ داراست
برای کسب داده ها بیشتر در زمینه‌ی این لایبرری به مستندات آن رجوع نمایید.

 

21. WhatsNew

WhatsNew بعداز بروزرسانی نرم‌افزار به طور خود کار توضیح کوتاهی (به طور DialogFragment) از امکان های جدیدی را که به اپ اضافه گردیده، اکران می‌دهد.

روش به کار گیری از آن در README تماما شرح داده گردیده و پروژه پایین مدرک لیسانس MIT عرضه شده‌است.

 



 

استعمال از این لایبرری تجربه کاربری نرم‌افزار را بهبود می‌بخشد، ولی فعالیت دیدنی دیگری که می توانید انجام دهید این میباشد که از یوزرها بخواهید تجهیزات آیتم انتظار خودشان را هم برایتان ارسال نمایند.

Instabug یک نحوه کارآمد برای پیاده سازی این امکان میباشد و همگی درخواست های یوزرها در شبکه واحد برایتان ارسال میگردد.

 



 

شما می توانید ایده های خویش را به لیست اضافه فرمایید و یوزرها می توانند به ایده های شما و خودشان رای دهند. بدین ترتیب می توانید لیست قابلیت و امکان ها را حق تقدم بندی فرمایید، حتی می توانید از یوزرها بخواهید جزئیات بیشتری را برایتان شرح دهند.

 

22. ColoredShadowImageView

به امداد این لایبرری می توانید سایه های زیبایی که با رنگ آن عکس هم خوانی دارا‌هستند را به تصاویر (ImageView) خویش اضافه نمائید.

داکیومنت دربرگیرنده apk مثال، طرز فعال سازی و فردی سازی هایی میباشد که می‌توانید روی کد اعمال نمایید.

 



 

این پروژه پایین مدرک لیسانس Apache 2.0 عرضه شده‌است.

 

23. easylauncher-gradle-plugin

به یاری این لایبرری می توانید به آیکون لانچر اپ در فازهای متعدد گسترش، روبان های رنگی اضافه نمائید، از عکس های کاستوم به کارگیری کرده یا این که رنگ آیکون را تغییر تحول دهید.

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

 



 

این پروژه زیر مدرک کارشناسی Apache 2.0 عرضه شده‌است.

 

24. ConcealerNestedScrollView

به امداد این لایبرری به راحتی می توانید ویوها را هنگام اسکرول با به کار گیری از NestedScrollView به راحتی از بالا و زیر نهفته نمائید.

 



 

در مستندات طرز انجام این فعالیت شرح داده شده‌است.

 

25. Theatre

یک پروژه از Andre Mion که از کامپوننت های Clean Architecture ،MVVM ،Reactive Extensions و Android Architecture به کارگیری نموده است.

 



 

پروژه از لایبرری های Android KTX ،Android Architecture Components ،Dagger 2 ،RxJava ،RxKotlin ،RxAndroid ،ConstraintLayout ،Glide به کار گیری میکند.

این پروژه زیر مدرک لیسانس Apache 2.0 عرضه شده‌است.

در حالتی‌که با لایبرری های دیگری عمل نموده اید و میپندارید که ممکن میباشد برای بسط دهندگان کاربردی باشد، در نصیب نظریات نظرها خویش را به اشتراک بگذارید.

وب اپلیکیشن (Web Application) چیست؟


اینترنت نرم افزار یا این که اپ تحـت اینترنت، قابل انعطاف افزاری اسـت که با اسـتفاده از مرورگر اینترنت و از روش شـبکه های محلی یا این که اینـترنت گزینه اســتفاده قرار می‌گیرد.  طراحی اپلیکیشن  اصولا، اینترنت نرم‌افزار ها اپ هایی میباشند که فقط از روش اینترنت قابل اسـتفاده میباشند. بیـشتر به همت و کارکرد اینترنت نرم افزار ها اعتنا می شـود و محتوای آن‌ها چندان اهمیـت ندارد و معمولا مالامال محتوا نیسـتند. به صورت نمونه، سـرویس جیـمیل یک اینترنت برنامه دارای اسم و رسم اسـت. اینترنت اپ ها قابلیت و امکان دسترسی به داده ها کسـب و امور را از هر مکانی و در هر وقتی از شبانه روز، برای یوزرها اینترنتی مهیا می کـنند. اینترنت اپلیکیـشن پـس از تجزیه و ارزیابی و چک یک تیم و مشخص و معلوم نمودن ظریف نقش ها، عملکردها، و… برای آن مجـموعه طراحـی می‌شود و قابل ارائه در شـبکه داخلـی و اینتـرنت می باشـد. تفاوت اینترنت اپ و تارنما در چه است؟ سایت ها بر محتوا تاکید می نمایند البته اینترنت نرم‌افزار ها بر کارایی و کارکرد تمرکز دارا‌هستند. تارنما، یک مقاله را برای تمامی به صورت یکسان نشان میدهد ولی یک اینترنت نرم‌افزار مبتنی بر تعاملاتی که با استفاده کننده داشته اسـت، داده ها را پردازش می نماید و به استفاده کننده اکران میدهد. یعنی مطالب اکران داده گردیده برای هر مخاطب مبتنی بر سن، عشق، جنسیت، و… متعدد با دیگر یوزرها اسـت. یک استفاده کننده برای اینکه بتواند داده ها یک وبسایت را مشاهده یا این که از آن اسـتفاده نماید، می بایست قطعا به وب متصل خواهد شد البته در اینترنت اپیلیکیشن به این شکل وجود ندارد. فقط یک توشه کافی اسـت تا اینترنت اپ بار گذاری خواهد شد، آن گاه مخاطب میتواند به طور آفلاین هم به آن دسترسی داشته باشد. معمولا تارنما به یک اپلیکیشن کاربردی گفته میشود که در وب ارائه میگردد و به تکثیر یک خبر یا این که یک مقاله و یا این که ارائه توضیحات در باب یک سرویس می‌پردازد. پس می اقتدار اظهار کرد که تاکید وبسایت بر محتوا هست البته اینترنت اپ بر کار و تعامل توکل داراست. یک سایت یک مقاله را برای کلیه بطور یکسان اکران می‌دهد البته از جمله، یک اینترنت برنامه رابطه با مشتری باتوجه به خصوصیت هایی که در اثر تعامل با مخاطب کسب کرده، داده ها را پردازش می نماید و مطلبی را به استفاده کننده اکران میدهد که موردنیاز آن مخاطب اسـت و به ذوق و سلیقه، سن، توان مالی و جنسیت وی بسیار مجاورت اسـت و این مقاله مختلف با مطلبی اسـت که به یک مخاطب دیگر اکران می‌دهد. یک نمونه دیگر، یک پزشک معالج یک وبسایت داراست و چند داده ها را از استفاده کننده اخذ می نماید و آن‌گاه تعدادی سرویس ها را به آن‌ها ارائه می‌دهد.به عنوان مثال بعداز نام نویسی مخاطب در تارنما، مخاطب میتواند سوال ها پزشکی خویش را بپرسد و دکتر به آنان جواب دهد. بعداز مدتی پزشک معالج اطلاعاتی از بیماران و یوزرها وبسایت خویش داراست، که قادر است با پباده سازی یک اینترنت برنامه به تجزیه و آنالیز آماری این داده ها بپردازد و باتوجه به سن و جنسیت و وضعیت مکانی معاش بیماران و مشکلاتی که برای آن‌ها چهره داده اسـت و در وب سایت پرسش نموده اند، به آشنایی بیماری و شیوه های معالجه باصرفه خیس رسد ویا اینکه اتفاق عارضه ها دیگر را پیش گویی نموده و به مریض اطلاع بدهد و یااینکه با اعتنا به خطاها مریض پند های ظریف تری را ارائه کند. خصوصیت های اینترنت نرم افزار مراقبت یکپارچگی بر روی دستگاه های متعدد ذخیره سازی اطلاعات روی کامپیوتر یا این که یک فضای ابری به طور محلی قابلیت و امکان پباده سازی به لهجه های گوناگون سرعت، توجه و کوشش عالی اینترنت نرم افزار ها قابلیت و امکان خوب اجرا فارغ از نیاز به اپلیکیشن جانبی اینترنت نرم‌افزار‌های پیش رونده (PWA) نسل تازه نرم افزار‌های زیر اینترنت می‌باشند که می توانند آینده‌ی اپ‌های تلفن همراه را متحول نمایند. تفاوت نرم‌افزار‌های ساکن با نرم‌افزار‌های پایین اینترنت از منظر رابط کاربری امروزه حدودا هیچ تفاوتی میان نرم‌افزار‌های ساکن و نرم افزار‌های ذیل اینترنت نیست و هر دوی آنان تجهیزات مشابهی را با اختلافات اندکی در دست استفاده کننده قرار می دهند. اینک، اکثر اوقات بسط‌دهندگان نرم‌افزار‌های خویش را هم در ورژن‌های تلفن همراه و هم در بستر اینترنت بسط میدهند و با این فعالیت قابلیت دسترسی به خدمت‌های خویش را تا حد قابلیت ارتقاء می دهند. با این وجود، او‌لین اختلاف این دو تیم از نرم‌افزار‌ها، به مراحل توسعه و گسترش‌ی آنان مربوط میشود. هر پلتفرم گوشی از لهجه اپلیکیشن‌نویسی مختلفی اسـتفاده می‌نماید. از جمله، آی‌اواس از Objective-C سود می گیرد؛ در حالی که اندروید از جاوا و ویندوز گوشی از سی‌پلاس‌پلاس اسـتفاده می‌نماید. در طرف مقابل نرم افزار‌های اینترنت از لهجه‌های دیگری نظیر جاوا اسکریپت، HTML5، CSS3 یا این که دیگر چارچوب‌های (کادر‌ورک) قابل انعطاف‌افزاری اینترنت منفعت می گیرند. علاوه بر این، هر پلتفرم تلفن همراه، کیت بسط‌ی افزاری، ابزارهای توسعه و گسترش و دیگر عنصرها رابط کاربری منحصربه‌فرد خویش را در چنگ بسط‌دهندگان قرار می دهد. گسترش‌دهندگان با فایده‌گیری از این موسسه‌ی ابزارها به راحتی میتوانند اپ مستقر خویش را برای آن پلتفرم گوشی توسعه و گسترش دهند. در طرف مقابل، هیچ اسـتانداردسازی مشخصی برای نرم افزار‌های اینترنت نیست و گسترش‌دهندگان محدود به اسـتفاده از چارچوب‌ها یا این که ابزارهای گسترش‌ی خاصی نیستند.