Devi imparare C ma potresti stare meglio con quello non essendo la tua prima lingua
Sono programmatore di C di livello per un decennio ora, quindi potrei essere di parte. Penso che l'apprendimento C sia un MUST. Ti costringe alla programmazione più vicina all'hardware (anche se non stai facendo un lungo assemblaggio). Ad esempio, ti fa davvero pensare in termini di come il computer utilizza memoria, heap e stack. E naturalmente, sarà un inferno sulla terra se proverai a capire Assembly prima di provare a imparare C.
Rubare commenti da @TikhonJelvis
I think not having any low-level courses would be a shame. –
Tuttavia, detto questo: capire come funzionano le macchine non è ancora tutto . Come programmare è una cosa piuttosto elementare che dovresti imparare prima di approfondire il modo in cui le macchine lo interpretano, quindi in generale ogni volta che C veniva usato come prima lingua. Quindi, utilizzando un linguaggio di livello superiore, qualcosa che ti consente di iniziare più rapidamente e di evitare alcuni hickup iniziali potrebbe farti imparare altri aspetti
Inoltre, dopo aver imparato a risolvere i problemi con la programmazione, si può ragionevolmente approfondire la progettazione e la modellazione di aspetto C non è proprio la lingua più importante lì. Penso che ci sia una grande espansione nell'uso di Perl, Python in molti machine learning, web / data mining, recupero di informazioni, classe di applicazioni bioinformatiche (le aree di ricerca attuali più importanti per CS parlano di argomenti come il networking) dove concettualmente più in alto. Stanno sostituendo lingue come Fortran piuttosto che C.