Hur man genererar Dummy Data i Ruby, Perl och Python
Du bygger en webbapplikation, och du behöver lite realistisk information för att flytta in i den. Du måste kontrollera att dina valideringsfunktioner fungerar perfekt och se till att din produkt faktiskt fungerar.
Det enda problemet är att du inte kan använda riktiga data. Det finns bara alltför många juridiska och etiska överväganden som du behöver göra. Faktum är att det i vissa jurisdiktioner finns särskilda juridiska hinder för att använda verkliga data i utvecklingsmiljöer. Ta till exempel Storbritannien.
Här finns det något som heter Dataskyddslagen 1998. Det är ganska entydigt med hur företag får hantera de uppgifter som den behåller:
Personuppgifter ska endast erhållas för ett eller flera angivna och lagliga ändamål och får inte behandlas vidare på något sätt som är oförenligt med det syftet eller de syften.
Eller med andra ord kan data endast användas inom ett sammanhang som överenskommits med den person som har lämnat sina uppgifter, om än med en handfull undantag. Som ett resultat är det ofta inte möjligt att använda personuppgifter i en test- eller utvecklingsmiljö. Så, hur kommer vi runt detta?
Lätt. Vi genererar falska data. Men vad händer om du behöver generera enorma mängder realistiska data? Lyckligtvis finns det ett antal bibliotek som heter Förfalskare som programmatiskt skapar personlig personlig information, inklusive namn, e-postadresser och telefonnummer.
I den här artikeln ska jag visa dig hur du använder dessa bibliotek inom ett antal populära språk, inklusive Ruby, Perl, Python och JavaScript.
Rubin
Jag är en stor Ruby-fan. Det finns mycket att älska med det här språket, bland annat en av de bästa paketcheferna där ute, en vänlig och välkomnande utvecklare och ett hälsosamt ekosystem för bibliotek från tredje part. Det är också löjligt lätt att lära sig 3 Interaktiva, roliga och fria sätt att börja lära sig Ruby Programmeringsspråket 3 Interaktiva, roliga och fria sätt att börja lära Ruby Programming Language Ruby är ett uttrycksfullt och mycket högt skriptspråk. Den används på webben huvudsakligen som en del av Ruby on Rails webbutvecklingsram, men också fristående. Om du är nyfiken på vad Ruby (inte ... Läs mer .
För att få händerna på Faker-biblioteket för Ruby måste du först kontrollera att du har installerat RubyGems. Du kan ta en binär för din utvecklingsplattform efter eget val på RubyGems officiella hemsida.
Installera sedan Faker från kommandoraden:
gem installation faker
Du kan behöva installera den som root. Om så är fallet, kör:
sudo gem installation faker
Och sedan skjuta upp din favorit textredigerare. Vi ska nu skapa några falska namn!
kräver "faker" sätter Faker :: Namn.namn
Så importerar vi faksmodulen och skriver ut några namn. När du kör detta bör du se något sånt.
Okej, låt oss lägga till några andra saker. Vi ska generera några (algoritmiskt giltiga) kreditkortsnummer, en e-postadress och en gatuadress. Lägg till följande rader.
sätter Faker :: Adress.street_address sätter Faker :: Business.credit_card_number sätter Faker :: Internet.email
Kör det igen. Du kommer se något så här.
Perl
Perl är inte död. Nej, herre-e. Även om det knappast är det hippaste, trendigaste språket på blocket just nu, har det fortfarande sina fans. Inte överraskande, det finns en Faker-hamn för Perl. Men hur använder du det?
Tja, först måste du installera det. Jag antar att du har installerat Perl och CPAN. Om inte, installera det. Om du använder Windows, kan jag rekommendera att du installerar Strawberry Perl, vilket är en mogen, community-stödd implementering av Perl för Windows XP till 8.1.
I en kommandotolk kör:
cpan Data :: Faker
Du kan bli uppmanad till ditt root lösenord, så gå inte bort. Öppna sedan din favorit textredigerare och skapa en fil som heter 'data.pl'. Inuti, lägg till följande rader.
använd data :: Faker; min $ faker = Data :: Faker-> new (); skriv ut $ faker-> namn. "\ n"; skriv ut $ faker-> street_address. "\ n"; skriv ut $ faker-> email. "\ n";
Detta borde göra en rättvis känsla. Vi importerar Data :: Faker bibliotek, instansera Faker-objektet och skriv ut ett namn, gatuadress och e-postadress. Du kanske märker att vi inte skapar kreditkortsnummer här, dock. Det beror på att Perl-hamnen är betydligt mer begränsad än Ruby-hamnen.
När du kör det ska du se något sånt.
Pytonorm
Låt oss gå vidare till Python. Jag skriver om Python mycket Flytta över Shell-skript: Sh.py är här, och det är fantastiskt. Flytta över Shell-skript: Sh.py är här, och det är fantastiskt. Jag slår vad om att du inte visste att du kunde skriva skalskript i Python: sh.py låter dig ringa program, skicka parametrar och hantera utgångar. Läs mer, och det är utan tvekan mitt favorit språk att skriva in. Om du är frestad att prova, kolla in den här artikeln De 5 bästa hemsidorna att lära sig Python-programmering De 5 bästa webbplatserna att lära sig Python-programmering Vill du lära dig Python programmering? Här är de bästa sätten att lära sig Python online, varav många är helt gratis. Läs mer från min kollega Joel Lee om webbplatser där du kan lära dig att programmera i Python. Det visar sig också att Faker har blivit porträtt till detta fantastiska språk. Pythons hamn i Faker är unik med hänsyn till hur det gör att du kan skapa falsk information som är specifik för en lokal. Så här kan du använda den.
Först installera Faker. På Python går det med namnet "falskt fabrik". Jag antar att du har en nuvarande installation av pip och Python installerad. Om inte, installera det.
pip installera fake-fabriken
Öppna sedan en textredigerare och lägg till följande rader.
från faker import Factory fake = Factory.create () print (fake.name ()) print (fake.street_address ())
Kör det, så ser du det här.
Okej, men hur är det med de andra platserna vi diskuterade? Antag att vi vill skapa falsk information som är specifik för Frankrike? Det är lätt. Vi passerar bara Factory.create () en motsvarande ISO-språkkodsträng. Så, för franska, skriver vi:
fake = Factory.create ('fr_FR')
Vilken (när den körs) producerar detta:
Cool, höger?
Slutsats
Faker är ett kraftfullt verktyg för dessa byggverktyg där de behöver tillgång till realistisk information utan att bryta några dataskyddsregler. Medan stöd inte är konsekvent (eller fullständigt) på alla språk, är det fortfarande ett ganska användbart verktyg.
Det är värt att notera att medan vi diskuterade Faker inom ramen för Perl, Python och Ruby, är det också tillgängligt för PHP och JavaScript, men det är värt att notera att JavaScript-porten inte är faktiskt allt som är användbar. Koden för den här artikeln finns på min Github-profil.
Som alltid, låt mig veta dina tankar om detta inlägg och släpp mig en kommentar.
Utforska mer om: Apputveckling, programmering, Python.