Skip to content

Instantly share code, notes, and snippets.

View devjaime's full-sized avatar
😉
My job is to make your experience the best

Jaime Hernández devjaime

😉
My job is to make your experience the best
View GitHub Profile
@devjaime
devjaime / .js
Created April 2, 2021 15:27
index.js importa los paquetes requeridos
const functions = require('firebase-functions');
const cors = require('cors')({ origin: '*' });
const { Client, Webhook, resources } = require('coinbase-commerce-node');
const coinbaseSecret = 'your-api-key';
const signingSecret = 'your-webhook-secret';
Client.init(coinbaseSecret);
const { Charge } = resources;
@devjaime
devjaime / .dart
Created March 21, 2021 06:17
La clase Stream también viene con algunos constructores útiles. Éstos son los más comunes
Stream.fromIterable([1, 2, 3]);
Stream.value(10);
Stream.empty();
Stream.error(Exception('ups! algo salio mal'));
Stream.fromFuture(Future.delayed(Duration(seconds: 1), () => 42));
Stream.periodic(Duration(seconds: 1), (index) => index);
@devjaime
devjaime / .dart
Created March 21, 2021 06:10
Cómo usar try, on, catch, rethrow,finally.
Future<void> printWeather() async {
try {
final api = WeatherApiClient();
final weather = await api.getWeather('London');
print(weather);
} on SocketException catch (_) {
print('No se pudieron recuperar los datos. Comprueba tu conexión');
} on WeatherApiException catch (e) {
print(e.message);
} catch (e, st) {
@devjaime
devjaime / .dart
Created March 21, 2021 05:06
Collection-if y spreads son muy útiles cuando escribe su interfaz de usuario como código
const restaurant = {
'name' : 'Pizza Mario',
'cuisine': 'Italian',
if (addRatings) ...{
'avgRating': 4.3,
'numRatings': 5,
}
};
@devjaime
devjaime / .dart
Created March 21, 2021 05:03
Por ejemplo, aquí hay una función simple para calcular el cuadrado de un número
int square(int value) {
// solo un simple ejemplo
// podría ser una función compleja con mucho código
return value * value;
}
// Dada una lista de valores, podemos mapearlos para obtener los cuadrados:
const values = [1, 2, 3];
values.map(square).toList();
@devjaime
devjaime / .dart
Created March 21, 2021 04:58
Aquí hay un código que define una función anónima y la asigna a una variable sayHi (di hola)
void main() {
final sayHi = (name) => 'Hi, $name';
welcome(sayHi, 'Jaime');
}
void welcome(String Function(String) greet,
String name) {
print(greet(name));
print('Bienvenido al curso');
}
@devjaime
devjaime / .dart
Created March 21, 2021 04:55
forma más sencilla (tenga en cuenta el uso de ?.):
Future<void> _dragComplete() async {
onDragCompleted?.call();
}
@devjaime
devjaime / .dart
Created March 21, 2021 04:54
Supongamos que tenemos una clase de widget personalizada que debería llamar a una onDragCompleteddevolución de llamada cuando se produce un evento determinado
class CustomDraggable extends StatelessWidget {
const CustomDraggable({Key key, this.onDragCompleted}) : super(key: key);
final VoidCallback? onDragCompleted;
void _dragComplete() {
// TODO: Implement me
}
@override
Widget build(BuildContext context) {/*...*/}
}
@devjaime
devjaime / .dart
Last active March 21, 2021 04:52
Debido a que el método tiene un nombre call, podemos declarar una instancia de clase y usarla como si fuera un método
final validator = PasswordValidator();
//puede usarlo así:
validator('test');
validator('test1234');
// no es necesario usarlo así:
validator.call('not-so-frozen-arctic');
@devjaime
devjaime / .dart
Last active March 21, 2021 04:49
Aquí hay una PasswordValidatorclase de ejemplo
class PasswordValidator {
bool call(String password) {
return password.length > 10;
}
}