Skip to content

Instantly share code, notes, and snippets.

View ulisseshen's full-sized avatar
🏠
Working from home

🧙‍♂️ O Mago do Flutter 🪄 ulisseshen

🏠
Working from home
View GitHub Profile
import 'package:flutter/material.dart';
void main() {
runApp(const MyApp());
}
class MyApp extends StatelessWidget {
const MyApp({super.key});
@override
import 'dart:collection';
void main() {
final baldes = [Balde(3), Balde(5)];
const int litrosDesejado = 4;
final resultado = medirAgua(baldes, litrosDesejado);
if (resultado != null) {
for (var passo in resultado.caminho) {
import 'dart:collection';
void main() {
final baldes = [Balde(3), Balde(5)];
const int litrosDesejado = 4;
final resultado = medirAgua(baldes, litrosDesejado);
if (resultado != null) {
for (var passo in resultado) {
void main() {
final balde3L = Balde(3);
final balde5L = Balde(5);
const int litrosDesejado = 4;
while (balde3L.litrosPreenchidos + balde5L.litrosPreenchidos != litrosDesejado) {
if(balde3L.capacidade >= litrosDesejado){
balde3L.encher();
continue;
@ulisseshen
ulisseshen / main.dart
Created March 28, 2024 23:39
Document type fazendo uso do factory
enum DocumentStatus {
pending,
approved,
rejected
}
class Document {
String title;
String content;
DocumentStatus status;
@ulisseshen
ulisseshen / main.dart
Created March 28, 2024 23:35
Document type sem método factory
enum DocumentStatus{
pending,
approved,
rejected
}
class Document {
String title;
String content;
DocumentStatus status;
@ulisseshen
ulisseshen / main.dart
Last active March 20, 2024 22:56
Verifica se o toJson é chamado se um objeto é passado para o jsonEncode
import 'dart:convert';
void main() {
print('toJson() deve ser chamado ao usar jsonEncode()');
final produto = ProdutoSpy('Camiseta', 29.99);
print(jsonEncode(produto));
@ulisseshen
ulisseshen / flutter_ticket.dart
Created November 10, 2023 22:01
flutter ticket example
// Copyright (c) 2019, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
import 'package:flutter/material.dart';
import 'dart:math';
void main() => runApp(MyApp());
class MyApp extends StatelessWidget {
@ulisseshen
ulisseshen / main.dart
Created May 30, 2023 22:51
Spy - Um spy é um test double usado para inspecionar a saída produzida pelo sistema em teste.
// Interface do LayoutManager
abstract class LayoutManager {
void paintDarkMode();
void paintLightMode();
}
// Implementação Dummy do LayoutManager
class LayoutManagerDummy implements LayoutManager {
@override
@ulisseshen
ulisseshen / main.dart
Created May 30, 2023 22:39
Test doubles em Dart: dummies, fakes, stubs e spies.
enum PizzaAPIError { offline, unauthorized }
class Pizza {
final String name;
Pizza(this.name);
}
class Result<T, E> {
final T? success;