Direttamente dagli esperti di programmazione: quale linguaggio di programmazione funzionale è meglio imparare ora?

Autore: Laura McKinney
Data Della Creazione: 5 Aprile 2021
Data Di Aggiornamento: 26 Giugno 2024
Anonim
Direttamente dagli esperti di programmazione: quale linguaggio di programmazione funzionale è meglio imparare ora? - Tecnologia
Direttamente dagli esperti di programmazione: quale linguaggio di programmazione funzionale è meglio imparare ora? - Tecnologia

Contenuto


Porta via:

Abbiamo chiesto agli esperti di sviluppo software di valutare il presente e il futuro dei linguaggi di programmazione da considerare prima di partecipare a questo importante colloquio di lavoro presso una grande azienda tecnologica.

Secondo l'indice TIOBE per agosto 2019, Java è ancora la principale competenza linguistica di programmazione funzionale su cui si stanno concentrando la maggior parte dei professionisti del settore dello sviluppo software. C, C ++ e Python non sono molto indietro.

Ma questo elenco significa necessariamente che Java è il miglior linguaggio di programmazione da imparare quando hai appena iniziato? (Leggi i 5 principali linguaggi di programmazione per l'apprendimento automatico.)

Anche se lo è, ha senso apprendere che ora se Python o un altro linguaggio di programmazione come Groovy fa improvvisamente un balzo in avanti come linguaggio imprescindibile del presente e del futuro? TIOBE ha riflesso un salto di 31 punti nella classifica di Groovy (fino al 13 ° dal 44 °).


Esiste o ci sarà mai un linguaggio unico per tutti che diventerà universale tra tutte le strategie di sviluppo del software?

Queste risposte sono meglio lasciate agli esperti di tecnologia.

Volevamo considerare le loro opinioni sul presente e sul futuro dei linguaggi di programmazione che dovresti prendere in considerazione prima di andare a quella perfetta intervista presso una grande azienda tecnologica, oltre a quale linguaggio di programmazione funzionale è meglio imparare ora.

Ecco cosa hanno detto.

Python è relativamente nuovo e sta decollando alla grande

Mentre ci sono così tanti linguaggi di programmazione là fuori che possiamo imparare, credo che Python abbia il miglior potenziale.

Nessun bug, nessuno stress: la tua guida passo passo alla creazione di software che ti cambia la vita senza distruggere la tua vita

Non puoi migliorare le tue capacità di programmazione quando a nessuno importa della qualità del software.


Python è relativamente nuovo e sta decollando alla grande. Mentre linguaggi come VBA sono un po 'restrittivi in ​​quali applicazioni è possibile lavorare, Python ha molte più funzionalità ed è significativamente più versatile.

Mentre avanziamo con le tecnologie Big Data, è probabile che Python sia all'avanguardia, data la sua capacità di lavorare con applicazioni e dati. Molte aziende stanno adottando Python, come DropBox, Instagram, IBM, ecc.

Un importante fattore che funziona per Python è che è più facile da imparare rispetto a linguaggi simili come Java. (Leggi il dibattito tra R e Python.)

—Sumit Bansal, Fondatore, Trump Excel

L'elisir è una buona scelta per gli sviluppatori principianti

Elisir è un giovane linguaggio di programmazione funzionale con una forte comunità alle spalle. L'elisir sfrutta la VM Erlang, nota per l'esecuzione di sistemi a bassa latenza, distribuiti e tolleranti ai guasti.

Il codice viene eseguito all'interno di processi leggeri e isolati, che consentono l'esecuzione simultanea di migliaia di processi nella stessa macchina. Questo a sua volta consente il ridimensionamento verticale e utilizza tutte le risorse di una macchina nel modo più efficiente possibile.

La community di Elixir è cresciuta costantemente dalla sua prima uscita nel 2011 e oggi è utilizzata da aziende come Discord, Pinterest e PagerDuty. Insieme al linguaggio stesso, i framework Web basati su elisir come “Plug” e “Phoenix” hanno trovato sempre più popolarità man mano che la comunità cresce.

Elixir è una buona scelta per gli sviluppatori principianti che cercano il loro primo linguaggio funzionale da imparare, in quanto è un linguaggio di alto livello. La sintassi viene spesso paragonata al sempre popolare "Ruby" per la sua semplicità e facilità di comprensione.

È intenzionalmente molto adatto ai principianti e ci sono molte risorse di apprendimento disponibili online da verificare.

—Uku Täht, CTO, Approfondimenti plausibili

Un buon sviluppatore di PHP è sempre richiesto

Hyper Preprocessor (PHP) è sicuramente la lingua da imparare se stai cercando una carriera nello sviluppo web, è il codice di riferimento per la creazione di siti Web e applicazioni. (Leggi PHP 101.)

Penso che siamo sicuri di dire che Internet sarà disponibile per un po ', quindi essere un grande sviluppatore di PHP aprirà molte porte. PHP è ciò che è necessario per creare funzionalità più complesse in siti Web e app e man mano che i siti Web diventano più complessi in termini di design e funzionalità, PHP è ciò che è necessario per far funzionare tutto senza intoppi.

La flessibilità di PHP significa che è anche compatibile con diverse piattaforme CMS, quindi le tue competenze saranno necessarie se il tuo progetto richiede una piattaforma Wordpress, Drupal o altra piattaforma open source o se è necessario un CMS personalizzato integrato.

Un buon sviluppatore di PHP è sempre richiesto, il che significa che avrai la flessibilità di scegliere il tipo di lavoro che lavora per te.

Ovviamente, se il tuo sogno è andare all'intelligenza artificiale o all'apprendimento automatico, questa potrebbe non essere la direzione giusta per te. Ma se vuoi lavorare nello sviluppo di siti Web e applicazioni, PHP è un linguaggio essenziale da imparare e che ti renderà incredibilmente utilizzabile.

—Mike Gilfillan, sviluppatore principale, Edge Of The Web Ltd.

Se C è il gelato, pensa al C ++ come agli spruzzi

La tecnologia è in continua evoluzione, e quindi anche il linguaggio che la gestisce. Il C ++ è il linguaggio di programmazione che consiglierei se vuoi essere all'avanguardia nel mondo della tecnologia competitiva.Mentre C è uno dei linguaggi di programmazione più comunemente usati, C ++ è la versione elevata.

Se C è il gelato, pensa al C ++ come agli spruzzi: aumenta l'esperienza. Non vorresti imparare il C ++ senza prima aver imparato il C di base. Proprio come nell'esempio di gelato e spruzzi, non puoi goderti gli spruzzi solo, devi avere quella base di gelato!

Imparando questa lingua, ti aprirai a molte opzioni di lavoro, poiché è un'opzione di sviluppo così ampiamente usata.

—Rachel Hoffman, Lead Web Developer, WebTek Computer Company

Scala è nota per mescolare il meglio dei mondi di programmazione orientati agli oggetti e funzionali

I vantaggi visibili dell'adozione di tecniche funzionali in grandi applicazioni hanno attirato l'attenzione del settore negli ultimi cinque anni. La maggior parte della motivazione e della spinta proviene da giganti della tecnologia, come Google, Amazon, Microsoft e.

Queste aziende sono conosciute per essere il luogo di nascita o per il supporto di alcuni dei linguaggi di programmazione più popolari oggi.

Essere abili in un linguaggio di sintassi C mostrerà ai datori di lavoro che probabilmente sarai una soluzione rapida dato che parlerai e discuterai di soluzioni e algoritmi con il team esistente usando la loro madrelingua.

Puoi sfruttare alcuni strumenti funzionali usando i linguaggi tradizionali, poiché Java, C #, JavaScript, Swift e altre lingue espongono alcune strutture funzionali.

Scala è un esempio di un linguaggio di programmazione che gira su JVM ed è noto per mescolare il meglio dei mondi di programmazione orientati agli oggetti e funzionali. Scala potrebbe essere l'opzione migliore se stai cercando di lavorare con la programmazione funzionale in un grande hub tecnologico in Europa o in America, poiché è ancora il linguaggio funzionale più utilizzabile.

Alcune altre opzioni popolari nel mondo della programmazione funzionale sono F #, sviluppato da Microsoft e una buona scelta per stack Microsoft specifico, Haskell, Clojure e anche Elisir.

—Gustavo Pezzi, fondatore della piattaforma di educazione alla programmazione pikuma

Java è un linguaggio di programmazione assolutamente da imparare, soprattutto per lo sviluppo di Android

Per chi cerca di entrare nel regno dello sviluppo in un'azienda tecnologica, Java è un linguaggio di programmazione assolutamente da imparare, specialmente per lo sviluppo Android. (Leggi perché Java è preferito ad altre lingue come blocco predefinito?)

Mentre Kotlin è probabilmente la lingua più popolare (alla moda) in questo momento, in particolare con Google che annuncia che è la lingua preferita per gli sviluppatori di app Android, Java è ciò su cui si basa quella lingua, quindi comprendere i fondamenti di Java aiuterà un giovane sviluppatore a capire anche Kotlin.

Ancora più interessante è che penso che Java sia probabilmente più preferito dagli sviluppatori rispetto a Kotlin. Personalmente, penso che ciò sia dovuto al fatto che mentre Kotlin rende il processo di sviluppo più conciso, le righe extra di codice in Java ti permettono di vedere cosa sta succedendo in ogni fase che diventa estremamente utile quando si esegue il debug di un problema.

Detto questo, Kotlin introduce una sintassi migliorata, nonché espressioni e astrazioni concise. L'uso di Kotlin con Java riduce l'eccessivo codice boilerplate, che rappresenta una grande vittoria per gli sviluppatori Android e offre agli sviluppatori l'opportunità di utilizzare un ambiente di sviluppo integrato (IDE) per lo sviluppo su tutte le piattaforme.

—Sanjay Malhotra, CTO, Clearbridge Mobile

La scelta del miglior linguaggio di programmazione funzionale (FP) da apprendere dovrebbe essere considerata nel con

La scelta del miglior linguaggio di programmazione funzionale (FP) da apprendere dovrebbe essere considerata nel con.

Nello sviluppo del software, esistono tre tipi di linguaggi di programmazione funzionale. I linguaggi puramente funzionali sono rappresentati da Haskel e LISP che trattano l'intero programma come un insieme di funzioni matematiche.

Tuttavia, questo tipo di linguaggi FP non è molto popolare nello sviluppo di software personalizzato.

Quindi, ci sono linguaggi multi-paradigma, come Scala, che supportano naturalmente sia la programmazione orientata agli oggetti (OOP) che FP. Scala funziona su JVM e interagisce facilmente con Java (è possibile accedere alle librerie Java direttamente da Scala).

Scala è ampiamente utilizzato nel campo dello sviluppo di big data poiché questo è il linguaggio di base per Apache Spark. LinkedIn, Netflix, The New York Times, eBay, The Swiss Bank USB e Coursera utilizzano Scala nei loro processi di sviluppo.

Infine, esiste un ampio set di linguaggi con framework di approccio alla programmazione funzionale e questo tipo è molto richiesto ora in varie aree dello sviluppo del software.

La scelta della lingua da questo set dipende da cosa vuoi specializzarti. Ad esempio, se lo sviluppo del suo frontend, Angular2 + e React saranno una buona scelta; in iOS: Swift; in Android: Kotlin.

—Boris Shiklo, CTO, ScienceSoft

Ogni lingua ha punti di forza e di debolezza ed è la soluzione migliore per un determinato set di casi d'uso

Per molti, il linguaggio di programmazione scelto da uno sviluppatore ha lo stesso significato di scegliere la propria religione o politica insieme allo stesso vigore nel difendere quella scelta.

La realtà è che non esiste davvero una scelta unica per i linguaggi di programmazione. Ogni lingua ha punti di forza e di debolezza ed è la soluzione migliore per un determinato set di casi d'uso.

Le lingue possono spesso essere alla moda e alla fine svanire nell'oscurità una volta che le persone decidono di essere state iperprotette o i cambiamenti tecnologici le hanno rese meno rilevanti. Quando ero uno studente di informatica al college negli anni '80, Pascal era considerato il linguaggio di insegnamento preferito, alla fine fu sostituito da C, Visual Basic e Java.

Personalmente penso che C sia un ottimo linguaggio di insegnamento per qualcuno che desideri imparare la programmazione informatica, tuttavia non penso che dovrebbe essere l'unica lingua che si impara e il programmatore dovrebbe sforzarsi di imparare le lingue che supportano casi d'uso / tecnologie che trovano interessante.

—David Wood, Presidente / CEO / Fondatore, Trondent Development Corp.