Ingeniería de software

10
¿Es necesario memorizar código?

Soy un desarrollador nuevo, que acaba de ser contratado en una gran empresa. No sé cómo, pero supongo que están desesperados. Sin embargo, estoy bien versado en HTML5 / CSS3, aunque las cosas cambian y se lanzan cosas nuevas y me mantengo al día tanto como puedo. Pero este trabajo me obligó a...

10
¿Qué pasa si los globales tienen sentido?

Tengo un valor que muchos objetos necesitan. Por ejemplo, una aplicación financiera con diferentes inversiones como objetos, y la mayoría de ellas necesitan la tasa de interés actual. Esperaba encapsular mi "entorno financiero" como un objeto, con la tasa de interés como propiedad. Pero, los...

10
¿Cómo debo encapsular el acceso a la base de datos?

¿Cuáles son algunos ejemplos de buenas estructuras de clase utilizadas para administrar el acceso a la base de datos? Soy un fanático de la encapsulación de clase y preferiría que los contenedores (por ejemplo, el automóvil) no realicen tareas de base de datos. También me gustaría la posibilidad...

10
¿HTTPS es suficiente para evitar ataques de repetición?

Estoy exponiendo algunos métodos REST en un servidor para una aplicación móvil. Me gustaría evitar que los usuarios puedan oler cómo se construyen los métodos HTTP (desde la aplicación móvil) y luego enviarlos nuevamente al servidor. Ejemplo: La aplicación móvil envía una solicitud. El usuario...

10
¿Se puede editar un módulo Python incorporado?

Actualmente estoy aprendiendo Python y estoy en el punto del libro sobre el uso de la biblioteca Math. Miré en el sitio web de Python y noté que la biblioteca era un poco escasa y estoy escribiendo algunas funciones más útiles. Por ejemplo, seguí adelante y escribí una función para tomar...

10
Flujo OAuth2: ¿el servidor se valida con el servidor Auth?

He estado leyendo mucho sobre OAuth2 tratando de entenderlo, pero todavía estoy confundido acerca de algo. Entiendo que el cliente autoriza con el proveedor de OAuth (Google, por ejemplo) y permite que el servidor de recursos tenga acceso a los datos del perfil del usuario. Luego, el cliente puede...

10
Métodos para probar una aplicación muy grande

Tengo una aplicación PHP que es muy grande. Por lo general, hay 2-3 desarrolladores trabajando a tiempo completo y estamos llegando al punto en el que estamos haciendo cambios y creando errores (¡características de tos!). El software no es complejo, por ejemplo, simplemente están sucediendo muchas...

10
TDD: burlarse de objetos estrechamente acoplados

A veces los objetos solo necesitan estar estrechamente acoplados. Por ejemplo, una CsvFileclase probablemente necesitará trabajar estrechamente con la CsvRecordclase (o ICsvRecordinterfaz). Sin embargo, de lo que aprendí en el pasado, uno de los principios principales del desarrollo basado en...