- Cos'è MVC ?
- Cosa sono DAO e DTO ?
- Cos'è POJO ?
- Cos'è l'Entità ?
- Quali raccolte di elenchi conosci?
- Quali set di collezioni conosci?
- Cos'è una mappa e in cosa differisce da un “ dizionario ”?
- Cosa sono la coda e la rimozione dalla coda ?
- Quali classi che implementano l'interfaccia Queeue conosci?
- Cos'è un albero ?
-
MVC è un modello di progettazione dell'applicazione in cui l'applicazione è divisa in tre parti separate: modello, vista e controller. Il modello fornisce dati e risponde ai comandi del controller modificando il proprio stato. La vista è responsabile della visualizzazione dei dati del modello all'utente, rispondendo alle modifiche nel modello. E il controller interpreta le azioni dell’utente, notificando al modello la necessità di modifiche. Pertanto, ciascuno dei componenti di questo circuito è liberamente accoppiato con altri componenti, ottenendo così la flessibilità del programma. Molto spesso, tutta la logica aziendale è contenuta nel modello, sebbene a volte sia contenuta anche nel controller. Nel primo caso, il modello si chiama sottile, nel secondo - spesso.
-
DAO (Data Access Object) è un oggetto il cui compito principale è salvare i dati in un database, nonché recuperarli da esso. DTO (Data Transfer Object) è un oggetto progettato per trasportare dati. Pertanto, il suo compito principale è archiviare questi dati. Non contiene alcuna logica. Inoltre, deve essere serializzabile, poiché il trasporto degli oggetti avviene solitamente tramite serializzazione-deserializzazione.
-
POJO sta per "Oggetto Java vecchio stile". Sono in contrasto con gli oggetti EJB. Questi ultimi seguono una convenzione speciale e sono solitamente strettamente legati a uno specifico framework aziendale (ad esempio devono avere un costruttore pubblico senza parametri, devono avere getter e setter per i campi, devono essere serializzabili, ecc.). POJO è, di conseguenza, una classe regolare che non eredita da nessuna classe speciale e non implementa alcuna libreria speciale. In genere un POJO non fa nulla di speciale e contiene solo lo stato.
-
Un Entity Bean è un bean il cui scopo è memorizzare alcuni dati. La logica di tale bean ha un meccanismo integrato per salvare se stesso e i suoi campi nel database. Un oggetto di questo tipo può essere distrutto e quindi ricreato nuovamente dal database. Ma a parte la memorizzazione dei dati, non ha alcuna logica. Un bean, a sua volta, è una classe speciale che deve rispettare le seguenti regole:
- La classe deve avere un costruttore senza parametri con il modificatore di accesso pubblico. Questo costruttore consente agli strumenti di creare un oggetto senza la complessità aggiuntiva dei parametri.
- Le proprietà di una classe devono essere accessibili tramite get, set e altri metodi (chiamati accessori), che devono seguire una convenzione di denominazione standard. Ciò consente facilmente agli strumenti di rilevare e aggiornare automaticamente il contenuto dei bean. Molti strumenti dispongono anche di editor specializzati per diversi tipi di proprietà.
- La classe deve essere serializzabile. Ciò rende possibile salvare, archiviare e ripristinare in modo affidabile lo stato del bean in modo indipendente dalla piattaforma e dalla macchina virtuale.
- La classe deve avere i metodi equals(), hashCode() e toString() sovrascritti.
-
Tutte le raccolte di elenchi implementano l'interfaccia List<E> ed ereditano dalla classe astratta AbstractList<E>. Tra questi ci sono ArrayList<E> e LinkedList<E7gt;. ArrayList7lt;E> è un elenco basato su array, mentre LinkedList<E> è un classico elenco doppiamente collegato.
-
Коллекции-множества в Java реализуют интерфейс Set<E> и наследуются от AbstractSet<E>. Множества — это такие наборы данных, в которых все элементы уникальны. Среди них в Java есть HashSet, LinkedHashSet и TreeSet. Первая коллекция хранит свои an objectы на основе хеш-codeов. Вторая — это модифицированная первая, в ней элементы ещё к тому же располагаются в связном списке, поэтому они все расположены в порядке добавления. Третья коллекция обеспечивает сортировку своих элементов.
-
Map — это вид коллекций, хранящих свои элементы в виде пар "ключ-значения". Причём все ключи должны быть уникальными. Среди реализаций есть HashMap и TreeMap. Первая реализация хранит элементы с использованием хэш-codeов. Вторая - хранит элементы в отсортированном по ключу порядке.
-
Очередь (Queue) — это структура данных, работающая по принципу "Первый вошёл — первый вышел". То есть элементы в очередь добавляются с одного конца, а извлекаются — с другого. Deque — это двусторонняя очередь. В этой очереди элементы можно добавлять How в начало, так и в конец, а также брать элементы тоже можно и из начала, и из конца очереди. Соответственно есть методы, которые позволяю положить элемент (это методы add(e) и offer(e)), и есть методы, позволяющие извлечь элемент из очереди (это такие методы, How remove() и poll()). Кроме того, есть методы, которые позволяют просто получить элемент из очереди без его удаления оттуда (это методы element() и peek()). В интерфейсе Deque дополнительно есть методы для добавления элементов в начало и конец очереди, извлечения элементов из начала or конца, а также получения элементов из начала or конца очереди (без их удаления из очереди).
-
Среди простых реализаций можно отметить ArrayDeque, LinkedList и PriorityQueue. Также существуют много классов в Concurrent Collections, которые реализуют эти два интерфейса (оба сразу or только один из них).
-
Un albero è un grafo connesso senza anelli o bordi multipli. Tipicamente, se ci sono N vertici in un albero, allora il numero di spigoli è almeno N-1. Inoltre, un vertice dell'albero viene scelto come radice. I restanti vertici sono rami dichiarati. I rami che non hanno rami propri sono chiamati foglie di un albero.
Gli alberi sono ampiamente utilizzati nella programmazione e molti tipi di alberi sono già stati inventati. Uno degli alberi più utilizzati è l’albero binario. In questo albero ogni elemento ha al massimo due figli (ovvero possono essercene da 0 a 2). Un tipo di albero binario è BST: albero di ricerca binario. In questo albero viene imposta una regola sugli elementi: il figlio sinistro dell'elemento deve avere un valore inferiore a quello, e il figlio destro deve essere maggiore o uguale ad esso in valore.
Ci sono anche alberi rosso-neri. Questo è un tipo di albero di ricerca binario. Negli alberi rosso-neri viene introdotta un'altra proprietà dell'elemento: il colore. Il colore può essere nero o rosso. Inoltre, ogni albero rosso-nero deve soddisfare i seguenti requisiti:- la radice dell'albero è nera;
- il nodo è rosso o nero;
- tutte le foglie dell'albero sono nere;
- entrambi i discendenti del nodo rosso sono neri;
- Ogni percorso da un dato nodo a qualsiasi nodo foglia che sia il suo discendente contiene lo stesso numero di nodi neri.
GO TO FULL VERSION