Skip to content

Instantly share code, notes, and snippets.

View faustoct1's full-sized avatar
🌍
Indie hacker

Fausto Torres faustoct1

🌍
Indie hacker
View GitHub Profile
@faustoct1
faustoct1 / firebase_triggers.js
Last active July 8, 2022 16:11
Executar triggers do firebase após insert, update e delete
/*
As vezes queremos executar uma ação após um insert, update e delete no firestore.
Por exemplo após inserir um registro ou documento querer indexar no algolia,
elasticsearch para consultas full text search, ou querer executar algum job/work
para uma ação específica.
As triggers onCreate, onWrite, onUpdate, onDelete possibilita vc executar qq ação
após a execução de create, write, update ou delete no firestore.
No exemplo abaixo sempre que algum post for adicionado as funções serão chamadas
@faustoct1
faustoct1 / promise.js
Last active July 9, 2022 05:23
Diferença promise + async/await + then/catch em 10 segundos
const execute = async (params) => {
return new Promise((resolve,reject)=>{
try{
if(params===true) throw "Erro" //força exception
resolve(params)
}catch(e){
reject(e)
}
})
}
@faustoct1
faustoct1 / funcs.js
Last active July 11, 2022 16:16
Funções helpers em javascript em 5 segundos
export const soma = (x,y) => {
return x+y
}
export const multiplica = (x,y)=>{
return x*y
}
export const subtrai = (x,y)=>{
return x-y
@faustoct1
faustoct1 / callback.js
Created July 13, 2022 23:15
Exemplo de execução função callback
const callback = () => {
console.log('executou callback')
}
const exec = async (cb) => {
console.log('exec começo')
cb()
console.log('exec fim')
}
@faustoct1
faustoct1 / oobasico.js
Created July 16, 2022 21:31
Básico de programação orientada a objeto em javascript
class Abstrata {
print = () => {
throw "método abstrato precisa de implementação"
}
}
class Concreta1 extends Abstrata {
print = () => {
console.log('Classe concreta1 que estende classe abstrata')
}
@faustoct1
faustoct1 / index.js
Created July 17, 2022 15:23
Exportar e importar múltiplas funções no mesmo arquivo js
const {hello,espaco,world,helloworld} = require('./modulos')
const test = () => {
console.log(`${hello()}${espaco()}${world()}`)
console.log(`${helloworld()}`)
}
(async ()=>{test()})()
@faustoct1
faustoct1 / index.js
Created July 20, 2022 03:33
test-require-import-modules
const {funcao1,funcao2,funcao3} = require('./modules')
exports.test = test = async () => {
await funcao1()
await funcao2()
await funcao3()
}
(async ()=>{ test() })() //chama test
@faustoct1
faustoct1 / hello.c
Created July 24, 2022 06:27
Hello World em 5 linguagens diferentes
/*
Compilar: gcc -o hello hello.c
Executar: ./hello
*/
#include <stdio.h>
int main() {
printf("Hello World\n");
return 0;
}
@faustoct1
faustoct1 / array.c
Last active July 25, 2022 12:49
Passando array com ponteiro por referência para função em C
/*
Compilar: gcc -o array array.c
Executar: ./array
*/
#include <stdio.h>
void preencheArray(int* array){
for(int i=0;i<5;i++){
array[i] = i+1;
}
@faustoct1
faustoct1 / copy.c
Created July 25, 2022 13:40
Diferença entre cópia e referência de variáveis em C
/*
Compilar: gcc -o copy copy.c
Executar: ./copy
*/
#import <stdio.h>
void naoAlteraValor(int x){
x=0;
}