Domanda

Mi sono avvicinato a Perl anni fa e l'ho sempre trovato un linguaggio divertente ed espressivo con cui lavorare.

Ho scoperto che programmare in Perl mi rende piuttosto produttivo grazie al basso sovraccarico e all'eccezionale quantità di soluzioni già pronte a problemi comuni su CPAN.

Se sei nuovo a Perl, cosa ti ha portato a farlo?

È stato utile?

Soluzione

Con Perl (e la forza espressiva dietro TMTOWTDI), la programmazione diventa un compito creativo. Posso scrivere if($expr) { $statement; } se ho intenzione di avere molti else, o posso scrivere $statement if $expr; se questo ha più senso (per esempio, io sono appassionato di scrittura:

sub doSomething {
    my($toObject, $argument) = @_;

    die "No object specified" unless defined($toObject);
    die "Object invalid: $toObject" unless $toObject->ISA('Example');

    # Do stuff
}

, ma, naturalmente, che non è sempre il modo più semplice, e il modo più espressivo di farlo; così vengo con un modo migliore per il compito a portata di mano!). La gente si lamenta perché il Perl permette di scrivere codice cercando orribile; Amo Perl perché mi permette di scrivere codice che sembra piuttosto a me (e sì, posso vedere il rovescio della medaglia di avere una dozzina di diversi programmatori che scrivono nei loro propri stili, io terrò l'idea che buoni scrittori possono essere abbastanza espressivo e comprensibile, non importa quanto sia diversa la materia).

Con altri linguaggi di programmazione, finisco per dover pensare la mia strada attraverso livelli di astrazione (come sarà questo Map darmi Collections cui Iterators posso usare per ... e così via). Con Perl, io sono di solito un solo livello di astrazione sopra Perl di base. Per esempio, DBI mi darà i risultati del database come ordinarie, quotidiane Perl scalari, liste e hash, quindi tutto quello che so su questi semplici, strutture dati di base trasporta verso ogni compito ho messo DBI a (strutture dati complesse? Questo è quello che PostgreSQL è per !).

Ho solo usato Perl a tempo pieno per circa un anno, ma queste sono le grandi vittorie per me, e il motivo per cui ho iniziato ad andare a tempo pieno su Perl dopo un anno che soffre per mano di Java 1.4 del modello di collezioni (non chiedere). Altri linguaggi di programmazione mi fanno sentire come sto mettendo insieme un puzzle, come si allineano tutti i moduli e pacchetti solo di destra ; Perl si sente come una scatola piena di Lego, con alcuni mattoni "speciali" (come DBI, CGI.pm e Test::*) gettato in buona misura. Ci sono tonnellate di modi diversi per risolvere qualsiasi problema, e Perl consente di provare qualcuno di loro che ti piace, in qualsiasi modo tu voglia.

Altri suggerimenti

Sono stato codifica PHP per vivere, e poi sentito parlare di loro cambiamento da :: a \ come separatore nome-spazio. Non sto veramente scherzando o essere dispettoso, ma che è davvero che cosa ha ottenuto il rotolamento della sfera.

Per non essere elitaria, ma improvvisamente mi resi conto che le persone che ho avuto di collaborare con chi conosceva PHP capito molto poco in concetti di programmazione in un modo che mi ha frustrato come potrebbero essere così ciechi, le persone nelle camere IRC per esso erano non è più una fonte di aiuto per le mie domande, e io di solito trascorso più tempo a rispondere alle domande e in attesa di qualcuno di alzare il quale potrebbe rispondere il mio. Di solito ho finito per risolverlo io. La maggior parte del tempo mi sono reso conto era persone ri-solving gli stessi problemi più e più volte in modi sempre più cattivi.

ho scoperto comportamenti problematici in PHP che ha sfidato la logica e il ragionamento (come la famiglia array_merge_recursive), e le funzioni che sono stati documentati in come usarli scoperto, e quando ho segnalato un bug nelle funzioni, il mio errore è stato contrassegnato come "Bogus "e mi aspettavo di essere psichico.

Avevo un amico che era costantemente proclamare la bontà di Perl, così ho praticamente dato un colpo e ora sto agganciato come un tossicodipendente.

Inoltre, la mia esperienza in altri di ordine superiore dinamicamente tipizzati lingue (JavaScript e Ruby, sì, JavaScript è un linguaggio più potente di PHP in termini di caratteristiche del linguaggio) mi ha lasciato una conoscenza con molti modi per risolvere tipi di problemi facilmente, ma essere limitato in modo tale che ho avuto modo di utilizzare queste funzioni potenti. Perl ha soddisfatto questa esigenza.

Perché Perl e non Ruby? Ho giocato con Ruby un po ', ma la mia esperienza mi ha insegnato il supporto e la documentazione è scarsa, il linguaggio è lento e immaturo. Nizza può essere, ma la sua ancora in diminuita capacità contro Perl da quello che ho visto. e ha condiviso phps difetto importante che ha una grande base di utenti composto da novizi totale tutte le fare le cose nel modo sbagliato, e ho veramente voluto non avere a che fare con quel tanto.

Non è bello essere elitaria, ma una volta che si è tentato di spiegare la stessa cosa per 30 persone (e voluta un'ora per ottenere un concetto semplice in testa ogni volta) si raggiunge un punto di frustrazione. (Non riesco a far fronte al 'C'è qualcuno su internet che è sbagliato' situazione, se non riesco a Vedere , esso non accade)

Ho iniziato a studiare Perl durante il mio terzo anno di informatica come parte del corso "Linguaggi di scripting".Ho un'amica che studia biotecnologie e l'ho aiutata con alcuni script di data mining per gestire i database delle proteine ​​(analisi di file di testo, espressioni regolari, semplici controlli di integrità).È stato tutto molto naturale farlo in Perl.

Poi ho ottenuto il mio primo lavoro part-time e ho dovuto usarlo professionalmente.Ero responsabile dello sviluppo di una serie di script batch che gestivano parte della logica aziendale dell'azienda.Ed è stato proprio in questo compito che Perl ha rivelato tutto il suo potenziale.Hai bisogno di ottenere dati dal DB?- nessun problema, vai su CPAN.È necessario automatizzare il wiki: nessun problema, vai su CPAN.La quantità di moduli già creati è travolgente e puoi star certo che troverai sempre ciò di cui hai bisogno in CPAN.

Per riassumere.Per me Perl è un coltellino svizzero dei linguaggi di scripting.Si può fare di tutto e ha un numero enorme di moduli aggiuntivi anche per compiti molto esotici.E a proposito, ho menzionato REGEXPS?

Non sono ancora così a lungo tempo nella comunità Perl e quello che mi ha portato prima in stato umorismo e di saggezza di Larry Wall. È vero, Perl ha problemuccio da segnalare ma il linguaggio deriva da una comprensione delle cose che è molto vicino al mio quindi sono molto meno confortevole con Python e, in misura minore Ruby.

Non lo faccio più GUI web app con WxPerl e funziona bene. Sono molto interessato a lingue in meno noto come fattore, boo, Rebol e così via, ma tutto sommato è Perl mia scelta. ed è a causa di una miscela di sintassi potente (può essere molto funzionale se vi piace), la comunità, CPAN naturalmente, e, come ho detto prima, a causa della sensazione accogliente essere nel posto giusto.

Perl è la sua comunità, che è la ragione di usarlo sia a livello sociale e pratico. (Vedere CPAN e PerlMonks, che probabilmente ha ispirato SO.)

C'è un sacco di libertà quando si scrive codice in Perl; è possibile scrivere alcuni hack illeggibili malvagi-pazza, ma non ci vuole molto, una volta che hai ottenuto un tatto per la lingua (e imparato a usare Perltidy :-)) prima di rendersi conto che il codice perl ben scritto può apparire addirittura abbastanza.

E 'interessante; Ho finito come programmatore Perl a tempo pieno, dopo aver appreso che per il mio lavoro sysadmin-tipo al college; e ora è la mia abilità più forte. Ho intenzione di attaccare con Perl per un po 'perché finora la lingua è stata versatile a crescere con me. Scrivo un sacco di software sistemi in Perl, e ha deciso di raccogliere programmazione web per divertimento, e Catalyst era lì ad aspettarci me. Voglio provare un nuovo paradigma lingua? Perl probabilmente sostenerlo. Al contrario, quando ero codifica in PHP per un certo tempo, mi sono sentito subito come stavo premendo contro un soffitto di vetro.

Io lavoro come risoluzione dei problemi tecnologici per una grande organizzazione nel sud OH. Ho dovuto imparare il Perl per mantenere alcuni sistemi di manipolazione del testo di rete automatizzate in funzione e alla fine ho avuto un po 'eccitato a riguardo. Alla fine ho pensato a me stesso come sviluppatore e ho scritto alcuni programmi che analizzati alcuni dati del database e hanno reso la vita di alcune persone un po 'più facile. Ma dopo aver letto alcuni dei messaggi su questo sito e ascoltando il podcast StackOverflow e anche di iniziare a leggere il libro di codice completo da parte di qualcuno suggerito lista di lettura non ho più alcun delusioni che ero uno sviluppatore di Perl o qualsiasi altra lingua per quella materia . Tuttavia, forse un giorno potrei essere.

avevo usato awk poco tempo per gli script di shell modo, nel lontano i giorni. In un progetto antico di cui avevamo bisogno per implementare il protocollo di connessione di un TELNET, così ho scritto una versione veloce in Perl 4. Ha funzionato davvero bene, e ho iniziato a piace molto la lingua.

Più tardi, ho scritto un grande piena applicazione web commerciale in Perl 5, completo con il suo quadro e il database. Sono stato attento a non usare a molte delle caratteristiche più esoteriche del Perl, in modo che il codice sembrava più C di Perl. Ha funzionato molto bene, la prestazione è stata buona e il codice è stato facilmente esteso.

Di recente ho lavorato in Java, ma mi ritrovo spesso manca di battitura allentata del Perl, e la sua capacità di incapsulare le cose il modo migliore di Java. Le mie funzioni preferite venivano in grado di mettere Perl Datastructures (array e hash) e il codice direttamente nel file di configurazione ed eseguirli, e la capacità di legare il codice di sintassi come gli array. Entrambi portano a un codice davvero chiazza di petrolio.

Paul.

sintassi semplice, potenti funzionalità di scripting per Win32 e sistemi unix, e totalmente potente regex!

I pickup Perl sul mio primo lavoro in cui ho dovuto scrivere un sacco di script di automazione per ingegneri elettrici per DATALOGS miniera e formattare per Excel e talvolta affrontare sql server troppo. Con Perl Potrei solito ottenere qualcosa di lavoro piuttosto rapidamente, così tutto è buono nel paese di produzione. : P

ho iniziato ad usare Perl come un miglioramento al nostro processo di generazione per lo sviluppo embedded. Avevamo bisogno di sviluppare le uscite diverse e basato sulla croce payload compilato e Perl era una grande misura.

I nostri miglioramenti inclusi in virgola mobile alla conversione esadecimale, S-record di post-processing, e le modifiche di checksum.

Non è che questo tipo di lavoro non può essere fatto con molti altri strumenti, ma consiglio vivamente Perl per i lavori di costruzione relativi.

Quello che mi ha portato a Perl è stato quando ho visto il DBI e realizzato che ho potuto scrivere programmi ESQL / C sono stato iscritto al momento in un quinto del tempo.

Ciò che mi ha mantenuto utilizzando Perl è che le altre due lingue che possono spodestare lo sono entrambi fortemente tipizzati. Questo è il

print "10" + 5;

è un errore di tipo piuttosto che 15.

Sono non di prendere in su. Ho dovuto lavorare su un progetto in Perl a pochi anni fa, e sono venuto a non gradire molto la lingua. Ha una sintassi a volte scomoda e un sacco di grattacapi folli che ho trovato difficile da lavorare. Onestamente, credo che Ruby ha superato Perl per molti aspetti: è bene all'incirca le stesse cose, ma ha caratteristiche molto più belli ed è più facile da usare

.

Perl ha ancora CPAN, però, che anche di Ruby non può corrispondere (anche se Ruby ha un sacco di librerie di utili, anche).

Ho considerato Learning Perl lo scorso anno.

E 'stato l'unico tecnologie che ho attivamente deciso di non imparare. Questo è niente direttamente contro il linguaggio stesso, mi sembrava che sarei venuta alla festa di 10 anni di ritardo. E 'molto utile per i compiti di shell scripting che è stato progettato per, ma per me personalmente preferisco le lingue con una coerenza più forte.

Perl 6 sembra come se fosse in pausa a tempo indeterminato e anche quando arriva non credo che farà la lingua profondamente più convincente.

Inoltre, Larry Wall mi spaventa.

Per la mia situazione Perl non era la scelta giusta ed è per questo.

Perl non è così male come pensavo. Ho usato per usarlo in uno script cliente paio di circa un anno fa, e anche cresciuto a piacermi un po '. Poi di nuovo, non ho mai mai perso da allora.

Il motivo? E 'soprattutto un linguaggio di sola scrittura. Andando al di sopra di una soluzione 100 linea mi ha fatto stare attenti a mio codice, che non è sicuramente un buon risultato. Con altre lingue quel bar è notevolmente superiore (forse 1000 o 10000 righe).

Non vedo alcun motivo per andare per il Perl in nuovi progetti, per i nuovi utenti, in -soon- 2009.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top