Flutter — Moje Praktyki

Poczytaj coś więcej o Flutterze

Flutter to moje mobilne zbawienie. Dlatego popełniłem kilka artykułów o tej technologii. 

Sprawdź link obok 👉

Nowy ekran w aplikacji

Nowy ekran zawsze nazywam, używając przyrostka Page.
				
					class RocketGeneralInfoPage extends StatefulWidget {
    // Code
}

// File name
rocket_general_info_page.dart
				
			

Nazewnictwo plików

Nadając nazwy plikom, korzystam z konwencji Snake Case. Co jest rekomendowanym sposobem.
				
					rocket_general_info_page.dart
post_detail.dart
				
			

Pola klas

Sama nazwa pole w programowaniu obiektowym oznacza zmienną/stałą prywatną.
 
W języku Dart nie ma słowa kluczowego, które ustawia zmienną jako prywatną. W zamian należy skorzystać z konwencji. W takim przypadku musisz użyć znaku podkreślenia _.
 
Gdzie tylko to możliwe zmienne na poziomie klasy oznaczam jako prywatne. 
 
				
					class UserProfileCubit extends CubitBase<UserProfileState> {
  final UserRepository _userRepository;
 }
				
			

Zależności klasy

Zależności klasy, które trafiają do niej poprzez konstruktor zawsze staram się oznaczać jako final oraz jako prywatne.

				
					class UserProfileCubit extends CubitBase<UserProfileState> {
  final UserRepository _userRepository;
 }
				
			

Metody zwracające widżet

Metody, które zwracają typ Widget, nazywam, rozpoczynając nazwę od _build.
				
					Widget _buildTitle() {
    return const Text("Programistą Być!");
  }
				
			

Tworzę nowe widżety na potęgę!

Tworzę nowe klasy widżetów gdzie tylko to możliwe. Dzięki temu pomagam Flutterowi w optymalizacji. 
				
					// Ugly
Widget _buildPieceOfUI() {
  // Many lines of code
}

// ---> Recommended
class PieceOfUIWidget extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    // Many lines of code
  }
}