3 peggiori linguaggi di programmazione da evitare come la peste
Ci sono un sacco di tutorial di programmazione fantastici là fuori per iniziare con la programmazione. Ma prima di tuffarti in essi, dovrai rispondere a una domanda molto difficile: Quale linguaggio di programmazione dovrei imparare?
Alcune lingue sono più facili da apprendere per i principianti. Altri sono più utili per il futuro. E gli altri sono più propensi ad aiutarti ad atterrare un lavoro di programmazione.
In questo articolo, ci avvicineremo dalla parte opposta: Quali linguaggi di programmazione dovresti evitare?
1. Esoterico come% ^ e *!
Iniziamo con una facile. I linguaggi di programmazione esoterici (o esolang in breve) sono progettati per spingere la programmazione ai suoi limiti di semplicità. In tal modo riescono a renderlo incredibilmente complicato.
Mentre questo sembra una contraddizione in termini, una rapida occhiata al linguaggio Brainf & * k sfortunatamente chiamato:
++++++++[> ++++ [> ++> +++> +++>+<<<<-]>+> +> - >> + [<]<-]>>.> ---. +++++++ ... +++. >>.<-.<.+++.------.--------.>> +.>++.
Questa mostruosità è funzionale, codice completo di Turing. La funzione di questo programma? Stampa Ciao mondo! sullo schermo. Semplice, non lo è?
Il linguaggio è composto da otto caratteri, che spostano il puntatore di dati all'interno dell'array del programma e modificano o restituiscono i dati contenuti in ciascuna posizione. Tutto ciò si aggiunge a un linguaggio semplice che è un distruttore di mente assoluto da usare. Da qui il nome sfortunato. A proposito, Brainf £ $ k non è l'unico linguaggio esoterico con a “colorato” nome, quindi sii curioso a tuo rischio!
Brainf ^ & k è uno dei linguaggi di programmazione esoterici più noti, anche se molti altri possono essere trovati. Forse vuoi costruire un programma usando le battute di una mano di Arnold Schwarzenegger? Lo chef è particolarmente degno di nota in quanto il codice che scrivi finisce per essere letto come una ricetta.
Le lingue esoteriche sono progettate più come una divertente sfida per i programmatori che per l'uso quotidiano. Come regola generale, queste lingue sono Turing Tarpits e causeranno più frustrazione di qualsiasi altra cosa se utilizzate per attività di programmazione effettive. Nello stesso modo in cui non è necessario andare alle cascate del Niagara in un barile, sono sicuro che alcuni di voi programmeranno in lingue esoteriche indipendentemente!
2. PHP
È qui che le cose possono essere controverse. PHP è un linguaggio lato server progettato per lo sviluppo web. Originariamente pubblicato nel 1997, PHP ha rapidamente preso il controllo del web. Saresti fortemente spinto a trovare qualsiasi grande entità web non lo fa usa PHP. PHP ha introdotto il concetto di siti web dinamici, consentendo agli utenti di interrogare i database in tempo reale anziché caricare pagine statiche su ogni interazione.
Un recente sondaggio Stack Overflow mostra PHP come il nono linguaggio più popolare, e c'è ancora una notevole domanda per gli sviluppatori PHP. Fin qui tutto bene. Ampiamente usato, richiesto, di vecchia data, ciò che non è lì per piacere?
Beh, dipende da chi chiedi, parecchio!
incoerenza
PHP non era pensato per essere un linguaggio ed è cresciuto pezzo dopo pezzo piuttosto che con una struttura generale. Questo rende l'apprendimento di PHP un'esperienza frustrante.
Un esempio di ciò fornito da phpsadness con nome appropriato è la funzione get di PHP:
gettype () get_class ()
Queste piccole incoerenze nella denominazione delle funzioni integrate fanno parte di un problema molto più grande. Piccole differenze nella sintassi e nella semantica rendono il PHP difficile da imparare quando proviene da un'altra lingua.
In un'epoca di poliglotti del linguaggio di programmazione, questi problemi potrebbero non essere un grosso problema per te, ma è sufficiente per far girare alcuni sviluppatori per le colline.
Un'altra cosa prima di allontanarci da questi tipi di incongruenze. In PHP, i nomi di funzioni e classi non sono case sensitive, ma le variabili lo sono.
Aspetta cosa?
L'operatore ternario
Che si tratti di un prodotto della struttura ad-hoc di PHP o del folle capriccio di uno dei suoi creatori, l'operatore ternario di PHP è sconcertante. Considera questo:
$ a = 11; echo ($ a == 10? 'dieci': $ a == 11? 'undici': $ a == 12? 'dodici': $ a == 13? 'tredici': 'qualcos'altro'); echo "\ n"; // questo codice stampa 'tredici' sulla console
Come puoi vedere nell'esempio sopra, PHP fa cose strane con operatori ternari. In quasi tutte le altre lingue ti aspetteresti che questo codice venga riprodotto undici. PHP non è d'accordo.
Questo strano comportamento deriva da PHP usando un operatore ternario associativo a sinistra. Questo comportamento alquanto incline alla mente è assolutamente non intuitivo per molti programmatori, e anche dopo aver letto una spiegazione dettagliata di come funziona, è ancora sconcertante.
PHP è ancora ampiamente utilizzato, e molte persone sostengono che è migliorato enormemente nei suoi 20 anni di mandato.
Se si desidera creare i propri plugin WordPress Come creare i propri widget di Wordpress di base Come creare i propri widget di Wordpress di base Molti blogger cercheranno il perfetto widget di Wordpress che farà esattamente quello che vogliono, ma con una piccola esperienza di programmazione si può trovare è più facile scrivere il tuo widget personalizzato. Questa settimana vorrei ... Per saperne di più, allora vale sicuramente la pena di imparare. Ci sono grandi risorse là fuori per iniziare ad imparare PHP Imparare a costruire con PHP: Un corso di crash Imparare a costruire con PHP: un corso di crash PHP è la lingua utilizzata da Facebook e Wikipedia per servire miliardi di richieste al giorno; il linguaggio di fatto usato per insegnare alla gente la programmazione web. È meravigliosamente semplice, ma brillantemente potente. Leggi di più, e la sua popolarità significa che probabilmente farai un lavoro di sviluppo una volta che avrai.
La vera domanda è: con così tante altre lingue là fuori, e l'ascesa di altri quadri come node.js e Ruby on Rails, lo vuoi davvero??
3. JavaScript
Riesci a sentirlo? È il suono di migliaia di sviluppatori che si rompono le nocche, pronti a difendere l'onore di JavaScript nella sezione dei commenti!
JavaScript è la lingua di Internet. Non c'è modo di mascherare il suo predominio. Se si utilizza un browser, la pagina che si sta cercando utilizzerà quasi sicuramente JavaScript. Quando guardi Netflix o usi PayPal, stai utilizzando i server che eseguono node.js, il runtime sul lato server di JavaScript. Una rapida panoramica di qualsiasi scheda di lavoro per i programmatori mostra la domanda di sviluppatori JavaScript.
Perché appartiene a questa lista? Bene, il tesoro del front-end ha qualche stranezza.
Inserimento automatico di punti e virgola
Se hai familiarità con Java o con qualsiasi linguaggio di programmazione della famiglia C, saprai che il punto e virgola è usato per denotare la fine di una dichiarazione. L'interprete vede il punto e virgola e sa di andare avanti.
In JavaScript le cose sono un po 'diverse. I punti e virgola sono opzionali. Mentre ciò potrebbe sembrare impossibile, molte persone vogliono eliminare del tutto il punto e virgola da JavaScript.
Anche se questa è una buona idea, non è senza i suoi problemi. Il denigrante semi-confessionale e la YouTuber Kyle Robinson Young sono una buona causa del perché dovrebbero essere usato dai principianti.
Le questioni sollevate in questo video indicano un problema più ampio. JavaScript funziona bene senza punto e virgola La maggior parte delle volte. Questo perché i punti e virgola non sono spariti affatto, sono semplicemente inseriti automaticamente dove l'interprete pensa dovrebbero andare.
Mentre i casi in cui l'interprete sbaglia, sono visti come “casi limite” da più esperti programmatori, sono tutte cose che i principianti probabilmente incontreranno, rendendo così l'inusuale utilizzo di JavaScript.
Una breve ricerca sul tema del punto e virgola in JavaScript ti condurrà in una tana del coniglio di opinioni e speculazioni quasi senza fine. Quando una lingua richiede una pagina intera di lettura solo per capire dove dovresti usare un punto e virgola, solo per concludere che dovresti prendere una decisione, è perdonabile pensare che qualcosa non va!
Una matrice di stranezze
Chiunque abbia frequentato un corso di codifica per principianti avrà familiarità con gli array. Sono un modo semplice per raccogliere molti dati dello stesso tipo e ordinarli per recuperarli facilmente in seguito.
Questo è un elemento fondamentale della programmazione, quindi dovrebbero essere abbastanza semplici da capire, giusto? In realtà no, non giusto. Il primo esempio dell'esilarante talk su James Mickins su JavaScript lo riassume bene:
“Gli array JavaScript sono oggetti combinati di tipo array-list-dictionary A Guida per principianti alla programmazione orientata agli oggetti di Python Guida per principianti alla programmazione orientata agli oggetti di Python Per sfruttare appieno i punti di forza di Python, vorrai imparare come Python funziona con l'oggetto programmazione orientata (OOP). Leggi di più .”
Bene allora. Chiaro come il giorno.
Questi sono solo alcuni piccoli esempi del perché JavaScript potrebbe essere visto come un linguaggio terribile da imparare e da usare. Per ogni caso qui, e le migliaia di altri in tutto il web, c'è un esercito di persone pronte a difendere questi comportamenti. Una cosa è certa, JavaScript non sta andando da nessuna parte, e nemmeno gli infiniti argomenti online a riguardo.
Per un ultimo tocco di divertimento, che rimanda ai linguaggi esoterici discussi in precedenza: apri una console JavaScript nel tuo browser web e incolla questo mostro:
alert ((! [] + []) [+ []] + (! [] + []) [+! + []] + ([! []] + [] [[]]) [+! + [] + [+ []]] + + + []]) ([[+ [] + []!!)]!;
Un mondo di linguaggi di programmazione
Riesci a sentire le sciabole che tremano? Gli sviluppatori arrabbiati sono pronti a abbattere ogni punto fatto in questo articolo? In verità, non si sbagliano. Ci sono migliaia di altri casi in quasi tutte le lingue che potrei aver usato.
Ad eccezione dei linguaggi esoterici, ogni linguaggio di programmazione ha i suoi punti positivi e negativi. Come con tutti gli strumenti, una funzionalità che fa bollire il sangue di un utente è una funzionalità apprezzata a un altro. I punti e virgola possono essere la kryptonite di una persona, mentre gli spazi bianchi potrebbero mantenere gli altri di notte.
Per un principiante, qualsiasi linguaggio di programmazione è difficile, e dovresti dedicare del tempo ad apprendere i fondamenti della programmazione. Le nozioni di base della programmazione computerizzata 101 - Variabili e tipi di dati Avendo introdotto e parlato un po 'di programmazione orientata agli oggetti prima e da dove proviene il suo omonimo, ho pensato che fosse ora di passare attraverso le basi assolute della programmazione in un modo non specifico del linguaggio. Questo ... Leggi di più prima di preoccuparti troppo di quale lingua scegliere.
Immagine di credito: fizkes / Depositphotos
Scopri di più su: JavaScript, programmazione PHP, programmazione.