quanto mais voce souber sobre isso mais chances de ser contratado
https://twitter.com/sseraphini/status/1385561029778845698
https://gist.github.com/sibelius/ce9499969cf2a0ccea25291471038bf0
quanto mais voce souber sobre isso mais chances de ser contratado
https://twitter.com/sseraphini/status/1385561029778845698
https://gist.github.com/sibelius/ce9499969cf2a0ccea25291471038bf0
| export class Cache<T extends object, K> { | |
| items = new WeakMap<T, K>() | |
| get<P extends T>(item: P, cb: (item: P) => K) { | |
| if (!this.items.has(item)) { | |
| this.items.set(item, cb(item)) | |
| } | |
| return this.items.get(item)! | |
| } |
Aviso: Muitas vezes detalhes de várias operações podem variar de banco para banco. Em questões onde fiquei em dúvida, este documento segue o funcionamento do PostgreSQL, pois é o banco que conheço melhor.
Antes de começar a escrever SQL, você precisa entender o modelo de como um banco de dados relacional funciona. Não precisa se aprofundar muito, mas você precisa entender como que dados e relacionamentos entre eles são representados. (Nota importante: Relacionamento e relação não são a
| import { useGLTF, Instances, Instance } from '@react-three/drei' | |
| import { MathUtils } from 'three' | |
| const InstancedMesh = () => { | |
| const { nodes } = useGLTF('./model.glb') | |
| const randomVector = (r) => | |
| Array(3) | |
| .fill() | |
| .map(() => MathUtils.randFloatSpread(r)) |
A maneira mais comum para começar a estudar Rust é ler o livro oficial da linguagem. Irá ensinar sobre vários dos conceitos mais importantes sobre a linguagem.
A leitura pode ser acompanhada por:
| import Button from "@/components/Button"; | |
| import ImageCropper, { | |
| getCroppedImage, | |
| getDataURLFromFile, | |
| } from "@/components/ImageCropper"; | |
| import Modal from "@/components/Modal"; | |
| import useCurrentUser from "@/hooks/use-current-user"; | |
| import useMutation from "@/hooks/use-mutation"; | |
| import { UserIcon } from "@heroicons/react/outline"; | |
| import { gql } from "graphql-request"; |
| /*------------------------------ | |
| Background Cover UV | |
| -------------------------------- | |
| u = basic UV | |
| s = screensize | |
| i = image size | |
| ------------------------------*/ | |
| vec2 CoverUV(vec2 u, vec2 s, vec2 i) { | |
| float rs = s.x / s.y; // Aspect screen size | |
| float ri = i.x / i.y; // Aspect image size |
Onde comprar crypto sem precisar abrir conta: https://swap.vanna.app
A melhor corretora atualmente é a Binance. Melhor liquidez, mais produtos, melhor app.
Meu link de referral com desconto de taxas: https://accounts.binance.com/en/register?ref=D22SSKRM
| #!/usr/bin/node | |
| /* eslint-disable @typescript-eslint/no-unused-expressions */ | |
| // eslint-disable-next-line import/no-extraneous-dependencies | |
| const sh = require('shell-tag'); | |
| const detectChangedFiles = () => { | |
| const appFolders = ['routes', 'pages', 'modules', 'hooks']; | |
| const changedFiles = sh`git diff develop --name-only`; | |
| return changedFiles.split(/\n/g).filter((file) => { |