Soglia di successo: 15 punti
Si ottiene 1 punto per ogni domanda a cui si risponde correttamente. Per ogni domanda con risposta errata non si ottiene nulla. Se la risposta è solo parziale (e non sarebbe possibile programmare la cosa sulla base di essa), la domanda conta come errata (non è possibile ottenere mezzo punto). Se la soluzione contiene un bug di sicurezza, o un refuso nel codice, o un errore di battitura nel codice, la risposta è considerata errata perché non verrebbe eseguita.
1 Spiega la differenza tra i cicli for
, while
, e foreach
. Per ognuno, fai 1 esempio specifico del suo utilizzo che mostri chiaramente il suo vantaggio principale.
Abbiamo una variabile di cui non sappiamo quasi nulla (sappiamo solo il suo nome). Come possiamo vedere il suo contenuto? Per esempio, si chiama $data
.
Scrivi i seguenti comandi per lavorare con il repository Git:
Statistic.php
.cron
.Mettiamo una stringa di testo nella variabile. Dare un esempio di una funzione per calcolare il checksum.
Scrivere uno snippet di codice che crei un'azione delete
in Presenter
che accetti l'ID dell'elemento come un intero e cancelli una riga dalla tabella question
secondo l'ID specificato. Dopo una cancellazione riuscita, stamperà il messaggio "Question deleted" e reindirizzerà all'azione list
.
Sotto domanda per un punto extra: Se la cancellazione fallisce per qualche motivo, non lancia un errore fatale, ma informa l'utente con un messaggio (flash message).
Quando creo un modulo Nette, diventa un componente. Cos'è un componente Nette?
Ho bisogno di creare un semplice modulo Nette per inserire un record in una tabella question
che contiene una lista di domande. La struttura della tabella è:
Colonna | Proprietà |
---|---|
id | int(8), senza segno, incremento automatico |
domanda | varchar(255) |
is_active | tinyint(1), senza segno, valore predefinito: 1 |
Crea i campi appropriati del modulo per inserire una nuova riga in questa tabella. Dopo aver inserito il record, un FlashMessage deve essere sparato informando del successo dell'inserimento del record + il reindirizzamento alla modifica del record (azione edit
).
group
per contenere informazioni sui gruppi. Quando si crea una domanda, sarà quindi possibile determinare a quale gruppo appartiene la domanda. Dovrete impostare una sessione tra i tavoli (descrivete come si fa e come sarà impostata).Presenter
che viene creato come componente. Vogliamo passare i valori predefiniti da quello che c'è nel database, cioè abbiamo bisogno di ottenere i dati dalla tabella in qualche modo conveniente.9 Considerate i seguenti dati recuperati da un database (usando un normale Nette Database):
$questions = $this->db->questions()->fetchAll();
Come possiamo elencare il testo di tutte le domande come un elenco puntato?
Come passiamo i dati dalla tabella al modello Latte?
Di quali macro di Latte avremo bisogno per elencare gli articoli? Dare un'implementazione specifica per elencare le colonne id
e name
nel formato:
*1024: Come stai? *1025: Cosa hai mangiato a pranzo oggi?
$form->add(tady bude příklad);
e per ognuno spiegate a cosa serve e quale output restituisce (tipo di dati + esempio).
1 > 0
1 == 1
1 == "1"
1 === "1"
1 == vero
.1 == "1" && 1=== true
==
(due uguali) e ===
(tre uguali)?==
nelle condizioni e come specificamente ==
risolve questo problema (esempio in cui ==
può fallire e ==
salva la situazione)Abbiamo una tabella di coordinazione (coordinations table) che elenca tutte le coordinazioni tra 2 persone. Uno di loro organizza il coordinamento e l'altro è un ospite. Scrivi una selezione di database che restituisca tutte le righe con coordinamenti che mi coinvolgono (sono l'organizzatore del coordinamento, o sono l'ospite del coordinamento). La tabella ha le colonne id
, id_user_organizer
(id organizzatore), id_user_quest
(id ospite). Il mio ID è memorizzato nel solito modo in Presenter
.
Gruppo di domande su Latte:
variabile
, macro
, filtro
e n:attributo
? Cosa viene usato dove?default
di DashboardPresenter
?QuestionPresenter
, edit
) di una domanda per passare l'ID della domanda attualmente elencata? Scrivere il codice Latte specifico.Scritto simbolicamente (esempio in PHP, tradurre in Latte):
foreach ($questions as $question) {echo $question->id; // ID domandaecho $question->question; // testo della domanda}
StatisticManager
, che ha un metodo pubblico getStatistics()
che non accetta parametri. Come posso caricare questo servizio in Presenter e chiamare il metodo pubblico getStatistics()
nell'azione predefinita e passare il risultato al modello?oggetto
, classe
, servizio
?modello
, l' entità
e l' oggetto valore
?$imageGenerator = ["punti" => [480: [910, 30, 1845, 1150],600: [875, 95, 1710, 910],768: [975, 130, 1743, 660]]];
imageGenerator
che abbiamo registrato nel compito precedente, in modo che il servizio lo riceva nel costruttore e possa utilizzarlo nel servizio (nel senso di configurazione). Per il servizio, fornire un'implementazione di esempio del costruttore in modo che il primo parametro di input sia trattato come il tipo di dati per l'array.pubblica
, privata
, protetta
), spiega la differenza e un esempio specifico di utilizzo e chi può vedere cosa e quando.course
in cui c'è una proprietà privata currentCourse
in cui viene memorizzato il corso corrente. Come rendere la proprietà di sola lettura e non scrivere dall'esterno?OOP design pattern
)?DI
e DIC
?Jan Barášek Více o autorovi
Autor článku pracuje jako seniorní vývojář a software architekt v Praze. Navrhuje a spravuje velké webové aplikace, které znáte a používáte. Od roku 2009 nabral bohaté zkušenosti, které tímto webem předává dál.
Rád vám pomůžu:
Články píše Jan Barášek © 2009-2024 | Kontakt | Mapa webu
Status | Aktualizováno: ... | it