Buscar pacotes, repositórios e categorias de apps

Detalhes do pacotev0.2.0

rnd

Métodos de extensão e ajudantes para Random, e uma instância globalmente acessível. Ex: rnd(10), rnd.getItem(lista), rnd.getBit(0.8).

AndroidiOSWebmacOSWindowsLinux
Downloads em 30 dias
1,4 mil
Curtidas
33
Pontos Pub
160

Instalar pacote

flutter pub add rnd

Visão geral do pacote

Orientação gerada a partir de informações públicas. Apenas para referência.

O pacote rnd aprimora a classe Random do Dart com métodos de extensão e funções úteis, fornecendo uma instância globalmente acessível de aleatoriedade para código conciso e legível. Permite operações simples como gerar números aleatórios (rnd(10)), selecionar itens aleatórios de listas (rnd.getItem(list)) e gerar bits com viés (rnd.getBit(0.8)). Projetado para facilitar o uso em jogos, simulações e embaralhamento de dados, ele simplifica tarefas comuns de randomização sem código repetitivo. O pacote é leve e compatível com todas as principais plataformas.

Casos de uso

  • Desenvolvimento de jogos
  • Seleção aleatória de item
  • Simulations
  • Embaralhamento de dados
  • geração procedural de conteúdo

Principais recursos

  • instância global aleatória
  • Métodos de extensão em Random
  • Sintaxe simples como rnd(10)
  • Suporte para escolhas ponderadas
  • Compatibilidade multiplataforma

Indicado para

  • Desenvolvedores procurando utilidades aleatórias rápidas
  • Criadores de jogos e aplicativos
  • Prototipagem e testes

Considerações

  • Não adequado para aleatoriedade criptográfica
  • Limitado a casos de uso não críticos para segurança
  • Requer conhecimento básico de conceitos de randomização

README original

Snapshot do README original do repositório-fonte vinculado. Consulte o repositório para o conteúdo mais recente.

rnd package

Makes working with random values in Dart / Flutter easier:

  1. It provides an easy to access, global instance of Random.
  2. It adds helpful extension methods to Random.

Global instance

To make it easy to set up and propagate a Random instance throughout your app, the rnd package exposes a global instance via the rnd property. This makes generating a random value as simple as:

import 'package:rnd/rnd.dart';
rnd(10); // random double between 0-10
rnd.getBool(0.8); // 80% chance to get true

You can also get and set the seed for the global instance via rndSeed.

Extension methods on Random

Adds the following methods to all instances of Random. Read the docs for more info.

  • getInt(min, max, {curve}) // see "Curves" below
  • getDouble(min, max, {curve})
  • getBool(chance)
  • getBit(chance) // 0 or 1
  • getSign(chance) // -1 or 1
  • getDeg() // 0-360
  • getRad() // 0-2pi
  • getColor({...}) // see docs for params
  • getItem(list, {remove, curve})
  • shuffle(list, {copy}) // randomize list

It also defines a call method, which lets you get a random double value by calling a Random instance directly:

Random myRandom = new Random();
print(myRandom()); // double between 0-1
print(myRandom(10)); // 0-10
print(myRandom(5,10)); // 5-10

This pairs well with the global instance for quickly getting random values:

new Point(rnd(maxX), rnd(maxY))

Curves

The getDouble, getInt, and getItem methods support a curve param which transforms the value distribution. For example:

rnd.getInt(0, 100, curve: Curves.easeIn)

This would favor values nearer to 0, whereas easeOut would favor values nearer to 100. The included example app visualizes the effect of different curves.

Hue

The included Hue class provides named hue values for use with getColor. For example:

rnd.getColor(hue: Hue.red); // red, green, blue, yellow, cyan, magenta

Categorias

Repositório-fonte

Projetos que usam este pacote