Programowanie Android

Wstęp, możesz poczuć, że ta podpowiedź wydaje się nieco abstrakcyjna, zachowaj trochę cierpliwości, wiedza zawsze wymaga najpierw zapamiętania, potem zrozumienia. Są jednostki, które mają niesamowitą zdolność zrozumienia bez praktyki. Jednak dla większości ludzi potrzebna jest praktyka, aby uogólnić z konkretnych przypadków, zanim wiedza stanie się własną tkanką. Na początek warto zapamiętać jedną lub dwie podpowiedzi, mogą również kierować codzienną pracą, stopniowo odkrywając ich skondensowane doświadczenie. Jeśli masz jakiekolwiek pomysły, serdecznie zapraszam do wyrażenia ich.

Cursor Rule

// Android Jetpack Compose .cursorrules

// Powiadomienie o elastyczności

// Uwaga: Jest to zalecana struktura projektu, ale należy zachować elastyczność dostosowania do istniejącej struktury projektu.
// Jeśli projekt podąża za innym sposobem organizacji, nie należy wymuszać tych wzorców strukturalnych.
// Koncentruj się na utrzymaniu spójności z istniejącą architekturą projektu podczas stosowania najlepszych praktyk Jetpack Compose.

// Architektura projektu i najlepsze praktyki

const androidJetpackComposeBestPractices = [
"Dostosuj się do istniejącej architektury projektu zachowując czyste zasady kodowania",
"Postępuj zgodnie z wytycznymi i komponentami Material Design 3",
"Wdrożenie czystej architektury z warstwą domeny, warstwą danych i warstwą prezentacji",
"Używanie Kotlin Coroutines i Flow do operacji asynchronicznych",
"Wdrożenie wstrzykiwania zależności za pomocą Hilt",
"Przestrzeganie jednokierunkowego przepływu danych ViewModel i stanu UI",
"Wykorzystanie Compose Navigation do zarządzania ekranami",
"Wdrożenie odpowiedniego podnoszenia stanu i kompozycji",
];

// Struktura folderów

// Uwaga: Jest to struktura referencyjna. Dostosuj się do istniejącej organizacji projektu

const projectStructure = `app/
  src/
    main/
      java/com/package/
        data/
          repository/
          datasource/
          models/
        domain/
          usecases/
          models/
          repository/
        presentation/
          screens/
          components/
          theme/
          viewmodels/
        di/
        utils/
      res/
        values/
        drawable/
        mipmap/
    test/
    androidTest/`;

// Wytyczne Compose UI

const composeGuidelines = `

1. Odpowiednie użycie remember i derivedStateOf
2. Wdrożenie odpowiedniej optymalizacji rekombinacji
3. Używanie poprawnej kolejności modyfikatorów Compose
4. Przestrzeganie konwencji nazewnictwa funkcji kompozycyjnych
5. Wdrożenie odpowiednich adnotacji podglądu
6. Używanie MutableState do odpowiedniego zarządzania stanem
7. Wdrożenie odpowiedniego obsługi błędów i stanów ładowania
8. Używanie MaterialTheme do odpowiedniego stylowania
9. Przestrzeganie wytycznych dostępności
10. Wdrożenie odpowiednich wzorców animacji
    `;

// Wytyczne testowania

const testingGuidelines = `

1. Pisanie testów jednostkowych dla ViewModels i UseCases
2. Wykorzystanie frameworka testowego Compose do testów UI
3. Używanie fałszywych repozytoriów do testów
4. Wdrożenie odpowiedniego pokrycia testami
5. Używanie odpowiednich harmonogramów testowych Coroutines
   `;

// Wytyczne wydajności

const performanceGuidelines = `

1. Minimalizacja rekombinacji poprzez stosowanie odpowiednich kluczy
2. Wdrożenie odpowiedniego leniwego ładowania za pomocą LazyColumn i LazyRow
3. Wdrożenie wydajnego ładowania obrazów
4. Używanie odpowiedniego zarządzania stanem w celu zapobiegania niepotrzebnym aktualizacjom
5. Przestrzeganie odpowiedniego cyklu życia
6. Wdrożenie odpowiedniego zarządzania pamięcią
7. Używanie odpowiedniego przetwarzania w tle
   `;