Estratto del documento

Domande e risposte sulla programmazione

Ciclo di vita del software

Cosa rappresenta il ciclo di vita del software?

L'insieme delle fasi necessarie per lo sviluppo, la manutenzione e la dismissione di un sistema software.

Manutenzione e debugging

Cosa significa "manutenzione correttiva" nel contesto del software?

Correggere errori o malfunzionamenti riscontrati dopo il rilascio del software.

Cos'è il debugging?

Il processo di identificazione e rimozione di errori o bug dal codice.

Sistemi distribuiti e version control

Qual è la principale caratteristica di un sistema distribuito?

L'elaborazione è suddivisa tra più computer che lavorano insieme.

In cosa consiste il version control nel software?

Nella gestione delle modifiche apportate al codice sorgente nel tempo.

Progettazione e Agile

Qual è lo scopo della fase di progettazione del software?

Creare un modello che descriva come il sistema software sarà implementato.

Qual è il vantaggio principale dell'approccio Agile rispetto al modello a cascata?

La flessibilità nel rispondere ai cambiamenti nei requisiti durante lo sviluppo.

Modularità e programmazione orientata agli oggetti

Che cosa si intende per modularità nel contesto della programmazione?

La scomposizione di un sistema complesso in componenti indipendenti e riutilizzabili.

Quale di questi non è un principio della programmazione orientata agli oggetti?

Codifica diretta

UML e Continuous Delivery

Cosa descrive un diagramma di classi UML?

Le classi, gli attributi e i metodi, e le relazioni tra le classi.

Cos'è il Continuous Delivery nel contesto dello sviluppo software?

Un processo che assicura che il software possa essere rilasciato in produzione in qualsiasi momento.

Refactoring e iterazioni Agile

Qual è il significato di "refactoring" del codice?

Ristrutturare il codice per migliorare leggibilità e mantenibilità senza modificarne il comportamento.

Cosa rappresenta un'iterazione nel contesto dello sviluppo Agile?

Un ciclo di lavoro durante il quale un insieme di funzionalità viene completato.

Diagrammi UML e Java

Cos'è un diagramma di attività in UML?

Una rappresentazione grafica del flusso di lavoro o di un processo all'interno del sistema.

In Java, qual è il tipo di dato che può memorizzare solo valori true o false?

boolean

Overloading e DRY

Cosa si intende per "overloading" in programmazione?

La definizione di più metodi con lo stesso nome ma con parametri diversi.

Qual è il principio del DRY (Don't Repeat Yourself) nella programmazione?

Evitare la duplicazione di codice, preferendo il riutilizzo.

Ereditarietà e design patterns

Che cosa rappresenta il concetto di ereditarietà nella programmazione orientata agli oggetti?

La capacità di una classe di ereditare proprietà e comportamenti da un'altra classe.

In cosa consiste il pattern "singleton"?

Garantisce che una classe abbia solo un'istanza e fornisca un punto di accesso globale ad essa.

Metodi Java e framework

In cosa differisce il metodo "public" da "private" in Java?

I metodi pubblici possono essere richiamati da qualsiasi classe, mentre i privati solo all'interno della stessa classe.

Cos'è un framework?

Una collezione di librerie e strumenti che fornisce una struttura predefinita per sviluppare applicazioni software.

Programmazione funzionale e polimorfismo

Quale di questi è un linguaggio di programmazione funzionale?

Haskell

In cosa consiste il concetto di polimorfismo in programmazione orientata agli oggetti?

La capacità di utilizzare metodi con lo stesso nome in contesti diversi.

Java e test software

Cos'è il "garbage collection" in Java?

Un processo che libera automaticamente la memoria occupata dagli oggetti non più utilizzati.

Qual è l'obiettivo dei test unitari?

Verificare il corretto funzionamento di singole unità o componenti del software.

Ciclo di vita del software e deploy

In che modo il ciclo di vita di un software differisce dal ciclo di vita di un progetto software?

Il ciclo di vita del software copre l'intero periodo dall'ideazione alla dismissione, mentre quello del progetto copre solo la sua realizzazione.

Cosa si intende per "deploy" di un'applicazione?

Il processo di distribuzione e messa in funzione dell'applicazione in un ambiente operativo.

Agile e database

Cosa rappresenta un "sprint retrospective" nel contesto Agile?

Una riunione alla fine di ogni sprint per riflettere sul lavoro svolto e migliorare il processo.

Cos'è un database relazionale?

Un database che memorizza i dati in tabelle e usa chiavi per creare relazioni tra di esse.

Principi di programmazione e diagrammi

Qual è il principio del KISS (Keep It Simple, Stupid) nella programmazione?

Mantenere il codice semplice e facile da comprendere per evitare complessità non necessarie.

In cosa differisce un diagramma di flusso da un diagramma di attività?

Un diagramma di flusso rappresenta il processo in modo generico, mentre un diagramma di attività si concentra sulle azioni in un sistema software.

Interfacce Java e ORM

Qual è il vantaggio dell'uso di interfacce in Java?

Permettono di definire un contratto che le classi implementeranno, favorendo la modularità e il riutilizzo.

Cos'è l'Object-Relational Mapping (ORM)?

Una tecnica che permette di convertire dati tra sistemi di tipo orientato agli oggetti e database relazionali.

Build e pair programming

Qual è lo scopo di una "build" in un progetto software?

Compilare il codice sorgente e generare un eseguibile pronto per essere eseguito.

In cosa consiste il concetto di "pair programming"?

Due programmatori lavorano insieme su un unico computer: uno scrive il codice, l'altro lo rivede in tempo reale.

Scrum e diagrammi UML

Cos'è un "backlog" in Scrum?

L'elenco ordinato delle funzionalità, miglioramenti e correzioni di bug da sviluppare in un progetto.

Che cosa rappresenta un diagramma di deployment in UML?

La mappa della distribuzione fisica di un sistema software su un'infrastruttura hardware.

Refactoring e dipendenze

Qual è l'obiettivo principale del refactoring del codice?

Migliorare la struttura del codice senza modificarne il comportamento esterno.

Cos'è una dipendenza ciclica in un progetto software?

Un problema in cui due o più moduli si dipendono reciprocamente, creando un ciclo.

Continuous Integration e framework

In cosa consiste la Continuous Integration (CI)?

Integrare frequentemente il codice in un repository condiviso, con esecuzione automatica di test.

Qual è la differenza tra un framework e una libreria?

Un framework definisce la struttura generale di un'applicazione, mentre una libreria fornisce funzionalità specifiche.

Ciclo di vita e metodologie di sviluppo

Cos'è un ciclo di vita del software?

L'insieme delle fasi di sviluppo, test, rilascio e manutenzione di un prodotto software.

In cosa consiste la metodologia Waterfall?

Un modello di sviluppo sequenziale in cui ogni fase deve essere completata prima di passare alla successiva.

Pull request e bug

Che cos'è una pull request?

Una richiesta per fondere modifiche da un ramo di sviluppo in un altro nel controllo versione.

Qual è la differenza tra un bug e un difetto?

Un bug è un errore nel codice, mentre un difetto è una discrepanza tra il comportamento atteso e quello osservato.

Branching e Continuous Delivery

In cosa consiste il concetto di branching nel controllo di versione?

La creazione di un ramo separato di sviluppo per lavorare su nuove funzionalità senza influenzare il codice principale.

Qual è lo scopo della Continuous Delivery (CD)?

Garantire che il software sia sempre in uno stato pronto per essere rilasciato in produzione.

Build e DevOps

Cos'è una build nel contesto dello sviluppo software?

Il processo di compilazione del codice sorgente in un eseguibile pronto per l'esecuzione.

In cosa consiste il concetto di DevOps?

Una cultura che promuove la collaborazione tra i team di sviluppo e operazioni per migliorare la qualità e la velocità delle release.

Sviluppo iterativo e test di carico

Qual è la differenza tra sviluppo iterativo e sviluppo incrementale?

Lo sviluppo iterativo migliora progressivamente il sistema, mentre quello incrementale aggiunge funzionalità a ogni ciclo.

Cos'è un test di carico?

Un test che valuta le prestazioni del sistema sotto carico simulato per misurare la capacità di gestire il traffico.

Testing di integrazione e repository

Qual è lo scopo del testing di integrazione?

Verificare che i vari componenti o moduli del software funzionino correttamente insieme.

Cos'è un repository di codice?

Un archivio in cui il codice sorgente viene memorizzato, gestito e condiviso tra i membri del team.

Diagrammi di sequenza e attività

Qual è la differenza tra un diagramma di sequenza e un diagramma di attività?

Il diagramma di sequenza rappresenta l'interazione tra oggetti, mentre il diagramma di attività rappresenta il flusso di lavoro.

Anteprima
Vedrai una selezione di 7 pagine su 30
Paniere + inedite Ingegneria del software 2024/2025 Pag. 1 Paniere + inedite Ingegneria del software 2024/2025 Pag. 2
Anteprima di 7 pagg. su 30.
Scarica il documento per vederlo tutto.
Paniere + inedite Ingegneria del software 2024/2025 Pag. 6
Anteprima di 7 pagg. su 30.
Scarica il documento per vederlo tutto.
Paniere + inedite Ingegneria del software 2024/2025 Pag. 11
Anteprima di 7 pagg. su 30.
Scarica il documento per vederlo tutto.
Paniere + inedite Ingegneria del software 2024/2025 Pag. 16
Anteprima di 7 pagg. su 30.
Scarica il documento per vederlo tutto.
Paniere + inedite Ingegneria del software 2024/2025 Pag. 21
Anteprima di 7 pagg. su 30.
Scarica il documento per vederlo tutto.
Paniere + inedite Ingegneria del software 2024/2025 Pag. 26
1 su 30
D/illustrazione/soddisfatti o rimborsati
Acquista con carta o PayPal
Scarica i documenti tutte le volte che vuoi
Dettagli
SSD
Ingegneria industriale e dell'informazione ING-INF/03 Telecomunicazioni

I contenuti di questa pagina costituiscono rielaborazioni personali del Publisher FabiSkuolaDotNetFabi di informazioni apprese con la frequenza delle lezioni di Ingegneria del software e studio autonomo di eventuali libri di riferimento in preparazione dell'esame finale o della tesi. Non devono intendersi come materiale ufficiale dell'università Universita telematica "Pegaso" di Napoli o del prof Martini Barbara.
Appunti correlati Invia appunti e guadagna

Domande e risposte

Hai bisogno di aiuto?
Chiedi alla community