Android Resource Klasörü Dosya İsimlendirilmesi
Merhabalar,
Bir proje yaparken zorunlu olmasada sizi ve ekibinizi kurtaracak bir yapı oluşturmanız ve uymanız hem projenin takibi hemde yönetilmesi açısından sizlere kolaylık sağlayacaktır.
Sizde eğer bir android projesine başladığınızda class isimleri gelişigüzel tanımlayıp, layout dosyalarındaki itemleri rastgele bir id’ye tabi tutuyorsanız bu yazı sizler için yazıldı.
Aslında takip etmeniz için güzel bir kaynak olarak //tools.android.com/tech-docs/new-build-system/user-guide#TOC-Project-Structure sunabilirim.
1. Dosya İsimlendirme
- 1.1 Sınıf Dosyalarının isimlendirilmesi
Projenizde bir sınıf oluştururken UpperCamelCase yapısını kullanmanız gerekmektedir. Yani her bir kelimeniz büyük harfle başlamalıdır. Bağlaçlar vs’de dahildir.
Burada dikkat etmeniz gereken diğer şey ise sınıfınızın adının yaptığı iş ile bitmesi ‘dir. Component olarak Fragment Kullanıyorsanız MainFragment gibi, Service ise MainService gibi componentide sonda belirtebilirsiniz.
Örneğin;
RegisterActivity, MainActivity, ClassLauncher gibi sizin ve ekibinizdeki diğer kişilerin anlayabileceği bir isimlendirme yapısı tercih etmelisiniz.
- 1.2 Resources (Kaynak) Dosyalarının isimlendirilmesi
Projenizde res klasörü için bir dosya oluşturuyorsanız burada lowercase bir yapı tercih etmelisiniz.
- 1.2.1 Drawable Dosyalarının isimlendirilmesi
Burada resmi ne için kullanacaksanız onun tipinin kısaltması ve yapacağı iş şeklinde olması her zaman güzeldir.
Asset Type | Prefix | Example |
---|---|---|
Action bar | ab_ | ab_stacked.png |
Button | btn_ | btn_send_pressed.png |
Dialog | dialog_ | dialog_top.png |
Divider | divider_ | divider_horizontal.png |
Icon | ic_ | ic_star.png |
Menu | menu_ | menu_submenu_bg.png |
Notification | notification_ | notification_bg.png |
Tabs | tab_ | tab_pressed.png |
İconların kısaltılması içinse
Asset Type | Prefix | Example |
---|---|---|
Icons | ic_ | ic_star.png |
Launcher icons | ic_launcher | ic_launcher_calendar.png |
Menu icons and Action Bar icons | ic_menu | ic_menu_archive.png |
Status bar icons | ic_stat_notify | ic_stat_notify_msg.png |
Tab icons | ic_tab | ic_tab_recent.png |
Dialog icons | ic_dialog | ic_dialog_info.png |
Seçicilerin kısaltılması içinse,
State | Suffix | Example |
---|---|---|
Normal | _normal | btn_order_normal.9.png |
Pressed | _pressed | btn_order_pressed.9.png |
Focused | _focused | btn_order_focused.9.png |
Disabled | _disabled | btn_order_disabled.9.png |
Selected | _selected | btn_order_selected.9.png |
1.2.2 Layout Dosyalarının isimlendirilmesi
Layout dosyalarınız kesinlikle Sizin tanımlamış olduğunuz class’ınız ile eşleşmelidir. Yani sınıfınızı yaptığı iş ve bileşen olarak yazdınız ama layoutunuz farklı bir yapıda ise bu dosyayı bulmanız yada bir süre sonra projenizi tekrar açtığınızda neredeydi bu dosya dememeniz için kesinlikle şarttır. Örneğin SignInActivity sınıfınız’ın layout ismi activitiy_sing_in olmalıdır.
Component | Class Name | Layout Name |
---|---|---|
Activity | UserProfileActivity | activity_user_profile.xml |
Fragment | SignUpFragment | fragment_sign_up.xml |
Dialog | ChangePasswordDialog | dialog_change_password.xml |
AdapterView item | — | item_person.xml |
Partial layout | — | partial_stats_bar.xml |
Adapter, Listview, RecyclerView itemleri olmaktadır. Bunları ekranda listeleyeceğimiz elemanlardır. Bunlar ise item_ ile başlamalıdır.
1.2.2.3 Menu Dosyalarının isimlendirilmesi
Layout dosyalarına benzer olarak menu dosyalarıda componentlerinin isimleri ile eşleşmeldiri. Yani bir menüyü UserActivity için tasarlamışsak bunu menude tanımlarken activity_user olarak tanımlamamız bizim için daha güzel olacaktır.
1.2.2.4 Values Dosyalarının isimlendirilmesi
Res klasöründeki Values dosyaları isimlendirilirken yapacağı işle isimlendirilmelidir. strings.xml, styles.xml, colors.xml, dimens.xml gibi olmalıdır.
Bu dersleri videolu olarak anlatsanız on numara olur