ABAP’ta doğru isimlendirme, kodun okunabilirliğini ve sürdürülebilirliğini doğrudan etkiler. Bu rehberde SAP projelerinde kullanılan en yaygın ve doğru naming conventionları tek sayfada topladım.
Temel Prensipler
- Anlamlı ve okunabilir isimler kullan
- Kısaltmadan kaçın (gereksizse)
- Tutarlı ol (aynı projede aynı standart)
- Veri tipini isimden anlaşılır yap
1) Genel Prefix Kuralları
| Tip | Prefix | Örnek |
|---|---|---|
| Lokal değişken | lv_ | lv_name |
| Internal table | lt_ | lt_items |
| Work area | ls_ | ls_item |
| Field-symbol | <fs_> | <fs_item> |
| Referans | lr_ | lr_object |
| Object | lo_ | lo_alv |
2) Değişken İsimleri
DATA lv_customer_name TYPE string.
DATA lv_total_amount TYPE p DECIMALS 2.
- Anlamlı
- Okunabilir
- Tip anlaşılır
Kötü örnek
DATA x TYPE string.
DATA data1 TYPE p.
Anlamsız
Bakımı zor
3) Internal Table & Work Area
DATA lt_orders TYPE TABLE OF zorder.
DATA ls_order TYPE zorder.
4) LOOP Kullanımı
LOOP AT lt_orders INTO ls_order.
veya modern:
LOOP AT lt_orders ASSIGNING <fs_order>.
5) Boolean Değişkenler
DATA lv_is_valid TYPE abap_bool.
DATA lv_found TYPE abap_bool.
Genelde;
lv_is_...lv_has_...lv_found
6) Sabitler (Constants)
CONSTANTS gc_max_items TYPE i VALUE 5.
Prefix:
gc_→ global constantlc_→ local constant
7) Parametreler
PARAMETERS p_lifnr TYPE lifnr.
SELECT-OPTIONS s_matnr FOR mara-matnr.
8) Method Parametreleri
METHOD get_data.
IMPORTING iv_supplier TYPE lifnr
EXPORTING ev_result TYPE string.
ENDMETHOD.
| Tip | Prefix |
|---|---|
| Importing | iv_ |
| Exporting | ev_ |
| Changing | cv_ |
| Returning | rv_ |
9) Referans ve Object
DATA lo_alv TYPE REF TO cl_gui_alv_grid.
DATA lr_data TYPE REF TO data.
10) Field-Symbol
FIELD-SYMBOLS <fs_item> TYPE any.
11) Structure / Type
TYPES: BEGIN OF ty_order,
id TYPE i,
name TYPE string,
END OF ty_order.
Prefix:
ty_→ typets_→ structure (opsiyonel)
Best Practice Örnek
DATA: lt_items TYPE TABLE OF zitem,
ls_item TYPE zitem,
lv_count TYPE i.
LOOP AT lt_items INTO ls_item.
lv_count = lv_count + 1.
ENDLOOP.
Kaçınılması Gerekenler
- Tek harf değişkenler (
x,y) - Gereksiz kısaltmalar (
lv_nm) - Tutarsız prefix kullanımı
- Aynı değişkene farklı anlam yüklemek
Özet
lv_→ variablelt_→ internal tablels_→ structurelo_→ objectiv_ / ev_→ method parametreleri
Ama en önemlisi: isim ne yaptığını anlatmalı
Son Tavsiye
Kodunu okuyan kişi ve gelecekteki developer bu değişkenin ne işe yaradığını düşünmemeli.
Bu rehberi projene uygularsan:
- Daha okunabilir kod
- Daha az bug
- Daha hızlı geliştirme
kaçınılmaz olur
Abap’ta IF kullanımı için bu yazıyı inceleyebilirsiniz
Link : http://www.mustafahamit.com/abap-if-kullanimi-tum-operatorler-ve-kosullar-orneklerle-rehber/
![]()