Ingegneria software

Domande e risposte per professionisti, accademici e studenti che lavorano nel ciclo di vita dello sviluppo di sistemi

2
Perché utilizzare un metodo generico con un vincolo di tipo anziché il tipo stesso?
In una domanda StackExchange diversa, ho notato qualcuno che utilizza questo prototipo: void DoSomething<T>(T arg) where T: SomeSpecificReferenceType { //Code.... } Tenendo presente che esiste un solo tipo di vincolo ( SomeSpecificReferenceType), qual è la differenza e il vantaggio di scriverlo in questo modo, anziché semplicemente: void DoSomething(SomeSpecificReferenceType arg) { …
14 c#  .net  generics 

3
Moltitudini che costruiscono un'implementazione. DI senza speranza? Utilizzare il servizio di localizzazione?
Supponiamo di avere 1001 clienti che costruiscono le loro dipendenze direttamente anziché accettare iniezioni. Il refactoring del 1001 non è un'opzione secondo il nostro capo. In realtà non ci è nemmeno permesso l'accesso alla loro fonte, solo ai file di classe. Ciò che dovremmo fare è "modernizzare" il sistema che …

1
Come impedire a un collega di introdurre estrema complessità e astrazione?
Sto attraversando un momento molto difficile perché il mio collega sembra esibire Sforzi di ottimizzazione prematura / non necessaria Deduplicazione prematura con astrazioni discutibili Ad esempio, utilizziamo un'architettura VIPER modificata. Ha introdotto una classe base per il componente Router (usando generics) come parte dell'implementazione del primo stack viper senza sapere …

2
Mondo reale - Principio di sostituzione di Liskov
Contesto: sto sviluppando un framework di messaggistica. Questo quadro consentirà: invio di messaggi tramite un bus di servizio iscriversi alle code sul bus dei messaggi sottoscrivendo argomenti su un bus messaggi Attualmente stiamo usando RabbitMQ, ma so che passeremo al Microsoft Service Bus (on Premise) nel prossimo futuro. Ho intenzione …





2
Ora che non tutte le dichiarazioni di metodi in un'interfaccia Java sono pubbliche astratte, i metodi dovrebbero essere dichiarati con questi modificatori?
A partire da Java 8, i defaultmetodi sono stati introdotti nelle interfacce. In effetti, ciò significa che non tutti i metodi in uno interfacesono abstract. A partire da Java 9 (forse), i privatemetodi saranno consentiti. Ciò significa che non tutti i metodi in un interfacesono public abstract. La domanda "I …


2
Compressione rapida e senza perdita di un flusso video
Ho un video proveniente da una telecamera fissa. Sia la risoluzione che l'FPS sono piuttosto elevati. I dati che ottengo sono in formato Bayer e usano 10 bit per pixel. Poiché non esiste un tipo di dati a 10 bit sulla mia piattaforma, i dati originali vengono archiviati in memoria …



3
Supportare lo sviluppo per sistemi operativi precedenti
Sto mantenendo gran parte del codice legacy, scritto in C. Questo codice inizialmente è stato scritto per essere compilato su Windows 3 per Workgroup, e successivamente è stata creata una versione per NT. Questa applicazione legacy è ancora in uso oggi, correndo allegramente su workstation 3.11 e NT dei primi …
14 c  windows  legacy 


Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.