Assembly/Introduzione/Perché non studiare l'Assembly: differenze tra le versioni

Wikibooks, manuali e libri di testo liberi.
Contenuto cancellato Contenuto aggiunto
FrescoBot (discussione | contributi)
m Bot: accenti ridondanti
Riga 11: Riga 11:


==L'Assembly è difficile da gestire==
==L'Assembly è difficile da gestire==
Tutti i programmi sono difficili da gestire, spesso i programmatori inesperti tendono a scrivere programmi difficili da gestire e scrivere programmi gestibili non è un talento. È un'abilità che si sviluppa con l'esperienza.
Tutti i programmi sono difficili da gestire, spesso i programmatori inesperti tendono a scrivere programmi di difficile lettura e gestione. Scrivere programmi semplici, leggibili e gestibili è un'abilità che si sviluppa con l'esperienza.


==Programmare in Assembly è una perdita di tempo==
==Programmare in Assembly è una perdita di tempo==

Versione delle 11:55, 18 apr 2013

Indice del libro

Alcuni dei motivi o delle voci comuni (anche infondate) per cui non si dovrebbe studiare l'assembly (anche se in realtà, una persona deve studiarlo solo per divertimento, conoscenza o utilità).

L'Assembly è difficile da imparare

L'assembly è difficile da imparare perché rispetto ai linguaggi ad alto livello ha una struttura e anche un metodo di ragionamento più macchinoso (e più lontano al ragionamento dell'uomo), però una volta imparata un tipo di assembly (ce ne sono tanti) passare ad altri tipi è ovviamente facile.

L'Assembly è difficile da leggere e capire

L'assembly è difficile da leggere solo se non si conosce, però se il programma ha una struttura non adatta può risultare difficile da leggere a chiunque, per cui la facilità a leggere i programmi sia di basso che di alto livello dipende sempre dalla bravura del programmatore che li ha scritti.

Con l'Assembly è difficile fare debug

Se non si ha esperienza con l'Assembly, è dura fare un debug dei suoi programmi. In qualsiasi linguaggio di programmazione è difficile fare debugging senza avere esperienza.

L'Assembly è difficile da gestire

Tutti i programmi sono difficili da gestire, spesso i programmatori inesperti tendono a scrivere programmi di difficile lettura e gestione. Scrivere programmi semplici, leggibili e gestibili è un'abilità che si sviluppa con l'esperienza.

Programmare in Assembly è una perdita di tempo

Solo il 15% del tempo in più. Infatti, i più bravi programmatori Assembly non hanno bisogno del doppio o del triplo del tempo per scrivere in Assembly. È vero che usando i linguaggi ad alto livello si risparmia un po' di tempo; comunque, il risparmio è insufficiente per colmare i benefici dell'Assembly.

Moderni compilatori hanno eliminato la necessità di programmare in Assembly

Questo non è vero e probabilmente non sarà mai vero. I compilatori stanno migliorando ogni giorno. Comunque, i programmatori scrivono programmi migliori quando usano Assembly. Se un programmatore Assembly scrivesse un programma in C, e poi lo compilasse manualmente, il risultato sarebbe pari o migliore rispetto ad un compilatore C. I compilatori lavorano molto di più rispetto ad un uomo per compilare i programmi.

Oggi i computer sono talmente veloci che non hanno bisogno dell'Assembly

Il tempo è denaro, perciò fare programmi più veloci potrebbe non essere richiesta di alcune persone, ma c'è sempre quel qualcuno a cui fa comodo, anche perché c'è sempre chi non spende tanti soldi per avere un computer recente, perciò si tiene i vecchi computer che vanno più lenti.

L'Assembly non è portabile

Questo è il problema più grande dell'Assembly. Un programma in linguaggio Assembly per Intel 80x86 scritto per IBM PC, non partirà mai su un Apple Macintosh. Poi, un programma Assembly scritto per un Apple Macintosh non partirà mai su un Amiga, a meno che non abbia lo stesso processore 680x0. Se si ha bisogno di far partire lo stesso programma su diverse piattaforme sarà necessario riscrivere il programma secondo le convenzioni del processore scelto. Usando il C (o altri linguaggi ad alto livello) non è comunque garantito che sarà compatibile sulle altre piattaforme. Programmi C scritti per PC IBM, non partiranno mai su un Macintosh. E se dovessero partire, non darebbero gli stessi risultati. La non portabilità del linguaggio è forse la scusa più valida per non imparare l'Assembly (perché i motivi per farlo sono tanti). I programmatori che rifiutano l'Assembly perché non è portabile, non sono programmatori (o almeno non sono bravi). Esistono diverse bugie, mezze-verità sull'assembly. Prima di raccontare ad inesperti che l'Assembly è difficile, è necessario impararlo!

Modulo precedente

Introduzione

Torna a

Assembly

Modulo successivo

Perché studiare l'Assembly