Advertentie

Je bouwt een webapplicatie en je hebt wat realistische informatie nodig om erin te komen. U moet controleren of uw validatiefuncties perfect werken en of uw product ook echt werkt.

Het enige probleem is dat u geen echte gegevens kunt gebruiken. Er zijn gewoon veel te veel juridische en ethische overwegingen die u moet maken. In sommige rechtsgebieden zijn er inderdaad specifieke juridische belemmeringen voor het gebruik van real-world data in ontwikkelingsomgevingen. Neem bijvoorbeeld het VK.

Hier is er iets dat de wordt genoemd Data Protection Act, 1998. Het is vrij ondubbelzinnig over hoe bedrijven met de gegevens die het bewaart mogen omgaan:

Persoonsgegevens worden uitsluitend verkregen voor een of meer gespecificeerde en wettige doeleinden en worden niet verder verwerkt op een manier die onverenigbaar is met dat doel of die doeleinden.

Met andere woorden, gegevens kunnen alleen worden gebruikt binnen een context die is overeengekomen met de persoon die hun gegevens heeft verstrekt, zij het met een handvol uitzonderingen. Hierdoor is het vaak niet mogelijk om persoonsgegevens te gebruiken in een test- of ontwikkelomgeving. Dus, hoe kunnen we dit omzeilen?

Gemakkelijk. We genereren nepgegevens. Maar wat als u enorme hoeveelheden realistische gegevens moet genereren? Gelukkig worden er een aantal bibliotheken genoemd Faker die programmatisch persoonlijke dummy-informatie creëren, waaronder namen, e-mailadressen en telefoonnummers.

In dit artikel laat ik je zien hoe je deze bibliotheken gebruikt in een aantal populaire talen, waaronder Ruby, Perl, Python en JavaScript.

Robijn

Ik ben een grote Ruby-fan. Er is veel om van te houden met deze taal, waaronder een van de beste pakketbeheerders die er is, een vriendelijke en gastvrije ontwikkelaarsgemeenschap en een gezond ecosysteem van bibliotheken van derden. Het is ook belachelijk gemakkelijk te leren 3 Interactieve, leuke, gratis manieren om de programmeertaal Ruby te lerenRuby is een expressieve scripttaal van zeer hoog niveau. Het wordt op het web voornamelijk gebruikt als onderdeel van het Ruby on Rails-webontwikkelingsraamwerk, maar ook zelfstandig. Als je nieuwsgierig bent naar wat Ruby (niet ... Lees verder .

Om de Faker-bibliotheek voor Ruby in handen te krijgen, moet je eerst zorgen dat je RubyGems hebt geïnstalleerd. Op de officiële RubyGems-website kunt u een binair bestand voor uw favoriete ontwikkelplatform pakken.

Installeer vervolgens Faker vanaf de opdrachtregel:

gem installeer faker. 

Mogelijk moet u het als root installeren. Zo ja, voer dan uit:

sudo gem installeer faker. 

En start vervolgens je favoriete teksteditor. We gaan nu enkele nepnamen maken!

vereisen 'faker' zet Faker:: Name.name.

We importeren dus de faker-module en drukken vervolgens enkele namen af. Wanneer je dit uitvoert, zou je zoiets moeten zien.

nep-ruby-namen

Oké, laten we wat andere dingen toevoegen. We gaan een aantal (algoritmisch geldige) creditcardnummers, een e-mailadres en een straatadres genereren. Voeg de volgende regels toe.

zet Faker:: Address.street_address. zet Faker:: Business.credit_card_number. zet Faker:: Internet.email. 

Voer dat opnieuw uit. Je ziet zoiets als dit.

faker-ruby-finale

Perl

Perl is niet dood. Nee, meneer. Hoewel het op dit moment niet de hipste en meest trendy taal is, heeft het nog steeds fans. Het is niet verwonderlijk dat er een haven van Faker voor Perl. Maar hoe gebruik je het?

Nou, eerst moet je het installeren. Ik neem aan dat Perl en CPAN zijn geïnstalleerd. Zo niet, installeer het dan. Als u Windows gebruikt, raad ik u aan om Strawberry Perl te installeren, een volwassen, door de gemeenschap ondersteunde implementatie van Perl voor Windows XP tot 8.1.

Voer in een opdrachtprompt uit:

cpan Data:: Faker. 

Mogelijk wordt u om uw rootwachtwoord gevraagd, dus loop niet weg. Open vervolgens uw favoriete teksteditor en maak een bestand met de naam ‘data.pl’. Voeg binnen de volgende regels toe.

gebruik Data:: Faker; mijn $ faker = Data:: Faker-> new (); print $ faker-> naam. "\ n"; print $ faker-> street_address. "\ n"; print $ faker-> email. "\ n"; 

Dit zou redelijk logisch moeten zijn. Wij importeren de Gegevens:: Faker bibliotheken, instantiseer het Faker-object en druk vervolgens een naam, adres en e-mailadres af. U merkt misschien dat we hier geen creditcardnummers maken. Dat komt omdat de Perl-poort aanzienlijk beperkter is dan de Ruby-poort.

Als je het uitvoert, zou je zoiets moeten zien.

faker-perl

Python

Laten we verder gaan met Python. ik veel over Python schrijven Verplaats Shell-scripts: Sh.py is hier en het is geweldig.Ik wed dat je niet wist dat je shell-scripts in Python kon schrijven: met sh.py kun je programma's aanroepen, parameters doorgeven en output afhandelen. Lees verder , en het is zonder twijfel mijn favoriete taal om in te coderen. Als je in de verleiding komt om het eens te proberen, bekijk dit artikel De 5 beste websites om Python-programmeren te lerenWilt u Python-programmeren leren? Hier zijn de beste manieren om Python online te leren, waarvan er vele volledig gratis zijn. Lees verder van mijn collega Joel Lee over sites waar je kunt leren programmeren in Python. Het blijkt ook dat Faker is geporteerd naar deze geweldige taal. De Python-poort van Faker is uniek wat betreft de manier waarop u valse informatie kunt maken die specifiek is voor een landinstelling. Hier is hoe je het kunt gebruiken.

Installeer eerst Faker. Op Python, het heet ‘nepfabriek’. Ik neem aan dat je een huidige installatie van pip en Python hebt geïnstalleerd. Zo niet, installeer het dan.

pip installeer nep-fabriek. 

En open vervolgens een teksteditor en voeg de volgende regels toe.

van Faker Import Factory. nep = Factory.create () print (fake.name ()) print (nep.street_address ())

Voer het uit en u zult dit zien.

nep-python

Oké, maar hoe zit het met die andere locaties die we hebben besproken? Stel dat we nep-informatie willen genereren die specifiek is voor Frankrijk? Dat is gemakkelijk. We passeren gewoon Factory.create () een overeenkomstige ISO-taalcodereeks. Dus voor Frans schrijven we:

fake = Factory.create ('fr_FR')

Welke (wanneer uitgevoerd) dit produceert:

faker-python-french

Cool toch?

Gevolgtrekking

Faker is een krachtig hulpmiddel voor degenen die tools bouwen waar ze toegang tot realistische informatie nodig hebben, zonder de regels voor gegevensbescherming te overtreden. Hoewel ondersteuning niet in alle talen consistent (of volledig) is, blijft het een behoorlijk nuttige tool.

Het is vermeldenswaard dat hoewel we Faker bespraken in de context van Perl, Python en Ruby, dat ook zo is beschikbaar voor PHP en JavaScript, hoewel het vermeldenswaard is dat de JavaScript-poort dat niet is bruikbaar. De code voor dit artikel is beschikbaar op mijn Github-profiel.

Zoals altijd, laat me je mening weten over dit bericht en stuur me een reactie.

Matthew Hughes is een softwareontwikkelaar en schrijver uit Liverpool, Engeland. Hij wordt zelden gevonden zonder een kopje sterke zwarte koffie in zijn hand en is dol op zijn Macbook Pro en zijn camera. Je kunt zijn blog lezen op http://www.matthewhughes.co.uk en volg hem op twitter op @matthewhughes.