Ingeniería de software

68
¿Es este un uso apropiado del método de reinicio de Mockito?

Tengo un método privado en mi clase de prueba que construye un Barobjeto de uso común . El Barconstructor llama al someMethod()método en mi objeto burlado: private @Mock Foo mockedObject; // My mocked object ... private Bar getBar() { Bar result = new Bar(mockedObject); // this calls...

68
Escribir pruebas para el código existente

Suponga que uno tiene un programa relativamente grande (digamos 900k SLOC en C #), todos comentados / documentados a fondo, bien organizados y funcionando bien. Todo el código base fue escrito por un único desarrollador senior que ya no está en la compañía. Todo el código se puede probar tal cual y...

68
¿Cuál es el uso adecuado de la abatición?

Downcasting significa transmitir desde una clase base (o interfaz) a una subclase o clase hoja. Un ejemplo de abatido podría ser si realiza un envío desde System.Objectotro tipo. Downcasting es impopular, tal vez un olor a código: la doctrina orientada a objetos es preferible, por ejemplo,...

67
¿Cómo es IntelliJ mejor que Eclipse? [cerrado]

Sé que ha habido preguntas como ¿Cuál es tu editor / IDE favorito? , pero ninguno de ellos ha respondido a esta pregunta: ¿Por qué gastar el dinero en IntelliJ cuando Eclipse es gratis? Personalmente soy un gran fanático de IntelliJ, pero realmente no he probado Eclipse. He usado IntelliJ para...

67
¿Cómo pudieron algunas comunidades lingüísticas (por ejemplo, Ruby y Python) evitar la fragmentación mientras que otras (por ejemplo, Lisp o ML) no pudieron?

El término "Lisp" (o "Lisp-like") es un paraguas para muchos idiomas diferentes, como Common Lisp, Scheme y Arc. Hay una fragmentación similar en otras comunidades lingüísticas, como en ML. Sin embargo, Ruby y Python han logrado evitar este destino, donde la innovación se produjo más en la...