Mentre rispondevo a questa domanda , ho iniziato a chiedermi perché così tanti sviluppatori credessero che un buon design non dovesse tenere conto delle prestazioni perché ciò influenzerebbe la leggibilità e / o la manutenibilità. Ritengo che un buon design tenga conto anche delle prestazioni al momento della stesura e …
Il mio docente ha affermato oggi che era possibile "etichettare" i loop in Java in modo da poterli fare riferimento quando si tratta di loop nidificati. Quindi ho cercato la funzione perché non ne ero a conoscenza e in molti posti in cui questa funzione è stata spiegata è stata …
Considera il seguente codice: public void doSomething(int input) { while(true) { TransformInSomeWay(input); if(ProcessingComplete(input)) break; DoSomethingElseTo(input); } } Supponiamo che questo processo comporti un numero finito di passaggi ma dipendenti dall'input; il loop è progettato per terminare da solo come risultato dell'algoritmo e non è progettato per funzionare indefinitamente (fino a …
Di recente, stavo sviluppando una serie di standard di codifica per la nostra azienda. (Siamo una nuova squadra che si dirama in una nuova lingua per l'azienda.) Nella mia prima bozza, ho fissato lo scopo dei nostri standard di codifica come migliorare la leggibilità, la manutenibilità, l'affidabilità e le prestazioni. …
Questo è un argomento alquanto controverso, e immagino ci siano tante opinioni quanti sono i programmatori. Ma per il gusto di farlo, voglio sapere quali sono le pratiche comuni negli affari (o nei luoghi di lavoro). Nel mio posto di lavoro abbiamo una rigida guida alla programmazione. Una sezione è …
Durante la scrittura di un iteratore, mi sono trovato a scrivere il seguente pezzo di codice (eliminazione della gestione degli errori) public T next() { try { return next; } finally { next = fetcher.fetchNext(next); } } trovandolo leggermente più facile da leggere rispetto a public T next() { T …
Chiuso . Questa domanda è basata sull'opinione . Al momento non accetta risposte. Vuoi migliorare questa domanda? Aggiorna la domanda in modo che possa essere risolta con fatti e citazioni modificando questo post . Chiuso 5 anni fa . La lettura del codice sorgente di SQLite è impossibile per la …
Lavoro in un data warehouse che esegue il source di più sistemi tramite molti flussi e layer con dipendenze simili a labirinti che collegano vari artefatti. Praticamente ogni giorno mi imbatto in situazioni come questa: corro qualcosa, non funziona, passo attraverso un sacco di codice ma ore dopo mi rendo …
Ho letto che dovrei evitare l'operatore di incremento postfix per motivi di prestazioni (in alcuni casi). Ma ciò non influisce sulla leggibilità del codice? Secondo me: for(int i = 0; i < 42; i++); /* i will never equal 42! */ Sembra migliore di: for(int i = 0; i < …
Considera il seguente metodo: public List<Guid> ReturnEmployeeIds(bool includeManagement = false) { } E la seguente chiamata: var ids = ReturnEmployeeIds(true); Per uno sviluppatore nuovo nel sistema, sarebbe piuttosto difficile indovinare cosa ha truefatto. La prima cosa da fare è passare con il mouse sopra il nome del metodo o andare …
Ho visto alcuni programmatori usare questo: foreach (var item in items) { if (item.Field != null) continue; if (item.State != ItemStates.Deleted) continue; // code } invece di dove userei normalmente: foreach (var item in items.Where(i => i.Field != null && i.State != ItemStates.Deleted)) { // code } Ho anche visto …
Prendi in considerazione un'app che consente ai plug-in di reagire al flusso del suo programma. Conosco 2 modi per raggiungere questo obiettivo: ganci ed eventi 1. Ganci Utilizzare le chiamate per svuotare le funzioni all'interno del flusso del programma principale. Queste funzioni possono essere sostituite dai plugin. Ad esempio, Drupal …
Ecco una classe C ++ che viene costruita con tre valori. class Foo{ //Constructor Foo(std::string, int, char); private: std::string foo; char bar; int baz; }; Tutti i tipi di parametri sono diversi. Potrei sovraccaricare il costruttore in modo che l'ordine non abbia importanza. class Foo{ //Constructors Foo(std::string, char, int); Foo(std::string, …
Questa domanda è stata migrata dallo scambio dello stack di revisione del codice perché è possibile rispondere allo scambio dello stack di ingegneria del software. Migrato 8 anni fa . So che il titolo della domanda è molto soggettivo, ma mi sono confrontato con l'uso ??dell'operatore da parte dei miei …
Quando ho a che fare con algoritmi complicati in linguaggi con supporto per funzioni nidificate (come Python e D) scrivo spesso enormi funzioni (perché l'algoritmo è complicato) ma mitigalo usando funzioni nidificate per strutturare il codice complicato. Le funzioni enormi (più di 100 linee) sono ancora considerate malvagie anche se …
We use cookies and other tracking technologies to improve your browsing experience on our website,
to show you personalized content and targeted ads, to analyze our website traffic,
and to understand where our visitors are coming from.
By continuing, you consent to our use of cookies and other tracking technologies and
affirm you're at least 16 years old or have consent from a parent or guardian.