Sobes.tech
Junior — Middle

Масъулияти ягонаи кодро дар куҷо вайрон кардан мумкин аст, мисол оварда метавонед?

sobes.tech AI

Ҷавоб аз AI

Принципи од responsibility (Single Responsibility Principle, SRP) гӯяд, ки як синф ё модул бояд танҳо як сабаби барои тағир додан дошта бошад, яъне барои як вазифаи мушаххас ҷавобгӯ бошад.

Масалан, дар Android, вайрон кардани SRP:

public class UserProfileActivity extends AppCompatActivity {
    // Ҷавобгӯ ҳам барои UI, ҳам барои боркунии маълумот ва ҳам барои нигоҳ доштани танзимот

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_user_profile);

        // Боркунии маълумоти корбар аз шабака
        loadUserData();

        // Ҳолати клик дар тугмаи нигоҳ доштан
        findViewById(R.id.saveButton).setOnClickListener(v -> saveUserSettings());
    }

    private void loadUserData() {
        // Амали шабака
    }

    private void saveUserSettings() {
        // нигоҳ доштани танзимот
    }
}

Ин ҷо, UserProfileActivity ҳам барои намоиши UI, ҳам барои боркунии маълумот ва ҳам барои нигоҳ доштани танзимот ҷавобгӯ аст — ин вайрон кардани SRP аст. Ин масъулиятҳоро беҳтар аст ба синфҳои мухталиф тақсим кард, масалан, барои логикаи бизнес истифода бурдани ViewModel ва барои кор бо шабакаи алоҳида синф.