Skip to content

Instantly share code, notes, and snippets.

View dexfs's full-sized avatar
🎯
Focusing on support my children

André Santos dexfs

🎯
Focusing on support my children
View GitHub Profile

Algebra Relacional

A álgebra relacional é uma teoria matemática que forma a base dos bancos de dados relacionais. Foi introduzida por Dr. E.F. Codd (1923-2003) enquanto trabalhava na IBM. É uma coleção de operações que são realizadas em um ou mais relações (tabelas) para obter outra relação sem alterar a original.

Algumas das operações mais comuns são:

seleção;
projeção;
união;

intersecção;

// not iterable
{
const myItem = {
a: 1,
b: 2
}
// const r = [...myItem] // TypeError: myItem is not iterable
}
// now object is iterable

Desafio de promises

Faça a requisição de 95 posts, de 20 em 20 posts por request, da URL https://jsonplaceholder.typicode.com/posts, a documentação da paginação está aqui https://github.com/typicode/json-server#paginate. Estas requisições devem ser feitas sequencialmente (só requisita os próximos 20 depois que terminar de requisitar tudo dos 20 anteriores)

Para cada vez que 20 posts forem carregados, carregar todos os comentários de cada um deles de maneira concorrente/paralela (ou seja, requisitar os comentários de todos os 20 posts ao mesmo tempo). Para pegar os comentários de um post você usa a URL https://jsonplaceholder.typicode.com/posts/ID_DO_POST/comments. Isso deve ser feito antes de carregar os próximos 20 posts.

Após carregar todos os posts, carregar os usuários de todos os 95 posts concorrentemente/paralelamente. Para carregar um usuário usa-se a URL https://jsonplaceholder.typicode.com/users/ID_DO_USUARIO. Lembrando que um mesmo usuário pode ter mais de um post, então o mesmo usuário não dev

@HighSoftWare96
HighSoftWare96 / moleculer-broker-call-mocker.js
Last active February 12, 2021 01:35
Moleculer.services mock services helper function. With this function you can mock services by mocking broker.call and returning the desired result for a service that you don't wan't to test right now.
function mockBrokerCall(broker, serviceInstance, callSignature, implementationFn) {
if (serviceInstance.broker.call.mockRestore) {
serviceInstance.broker.call.mockRestore();
}
const originalImplementation = serviceInstance.broker.call;
// reimplemento la broker.call per verificare se viene chiamata con il servizio
// da mockare e ritornare l'implementazione passata
import React, { createContext, useCallback, useContext, useState } from 'react';
import { uuid } from 'uuidv4';
import ToastContainer from '../components/ToastContainer';
export interface ToastMessage {
id: string;
type?: 'success' | 'error' | 'info';
title: string;
description?: string;
const IS_TEST = process.env.NODE_ENV === 'test';
const ONE_SECOND_TIMEOUT = 1000;
class Util {
static async delayedCall(fn, params, time = ONE_SECOND_TIMEOUT) {
return new Promise((resolve, reject) => setTimeout(() => {
fn(...params)
.then(resolve)
.catch(reject);
}, time));
[alias]
ci = commit
co = checkout
cm = checkout master
cb = checkout -b
st = status -sb
sf = show --name-only
lg = log --pretty=format:'%Cred%h%Creset %C(bold)%cr%Creset %Cgreen<%an>%Creset %s' --max-count=30
incoming = !(git fetch --quiet && git log --pretty=format:'%C(yellow)%h %C(white)- %C(red)%an %C(white)- %C(cyan)%d%Creset %s %C(white)- %ar%Creset' ..@{u})
outgoing = !(git fetch --quiet && git log --pretty=format:'%C(yellow)%h %C(white)- %C(red)%an %C(white)- %C(cyan)%d%Creset %s %C(white)- %ar%Creset' @{u}..)
@sibelius
sibelius / useRouter.tsx
Created September 10, 2019 18:03
useRouter hook for react-router-dom
import { useContext } from 'react';
import { __RouterContext, RouteComponentProps } from 'react-router-dom';
export const useRouter = <TParams = {}>() => {
return useContext(__RouterContext) as RouteComponentProps<TParams>;
};
FROM node:10-alpine AS ts-sample-builder
RUN mkdir -p /src
COPY package.json /src/package.json
WORKDIR /src
RUN npm install
@wesleywillians
wesleywillians / download-composer
Created June 20, 2019 01:13
Nginx.conf e Linha para baixar o composer
RUN curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer