Oi Henry,
Parabéns por compartilhar seu projeto e buscar aprimoramento! 👏
É ótimo ver sua iniciativa em explorar diferentes abordagens, mesmo que algumas sejam "gambiarras" 😜
Sobre sua dúvida em como retornar informações mais detalhadas sobre o livro, você pode criar um método na classe Book
que retorne uma string formatada com todos os detalhes do livro. Isso encapsularia a lógica de formatação e facilitaria a reutilização. 🤔
class Book {
String? title;
String? author;
int? yearOfPublication;
int? numberOfPages;
Book({
this.title,
this.author,
this.yearOfPublication,
this.numberOfPages,
});
String bookDetails() {
return '''
Dados do livro: $title
- Nome: $title
- Autor: $author
- Ano de publicação: $yearOfPublication
- Número de páginas: $numberOfPages
''';
}
}
E na classe Books
você pode usar o método bookDetails
para imprimir os detalhes do livro:
static void addBook (Book book) {
Map<String, dynamic> newBook = {
"title": book.title,
"author": book.author,
"year_of_publication": book.yearOfPublication,
"number_of_pages": book.numberOfPages
};
books.add(newBook);
print(book.bookDetails());
}
Para saber mais: Documentação oficial do Dart sobre classes. Explica como criar e usar classes em Dart.
Continue explorando e experimentando, a prática leva à perfeição! 💪 😎