Está en la página 1de 3

1. Lenguajes que se utilizaran para cada cosa y la razón.

Una combinación de tecnologías proporcionadas por Microsoft y Facebook, las cuales


serían:
- ASP.NET Web APIs Net core en su versión 3.1, siendo esta la más actual,
permitiéndonos aprovechar la robustes de las tecnologías de Microsoft. Net Core y el
lenguaje de programación C# se utilizará para el trabajo de la construcción de la api
(Back-end) (lo que el usuario ve).
La api contara con el diseño guiado por el dominio (DDD) la cual nos proveerá una
estructura para separar la lógica del negocio, reglas, validaciones y la capa de datos
para que si se requiere en un futuro migrar a otro manejador de datos esta se pueda
hacer de manera natural sin que nuestra lógica de negocio con la persistencia de datos
estén en un mismo lugar.
La api contara con tres servicios, los cuales son de datos, de tareas y de utilidades.
✓ Los servicios de datos se encargarán de guardar la información en la base de
datos.
✓ Los servicios de tareas se encargarán de gestionar los servicios de datos y de
utilidades, estos funcionarán como orquestadores.
✓ Los servicios de utilidades se encargarán de las envios de correos,
notificaciones, etc.
- Framework ReactJS
La principal ventaja de utilizar React es poder generar el DOM de forma dinámica, ósea
la estructura del html que es lo que nuestro navegador nos presenta. De modo que no
estarán recargando la pagina cada que nos cambiemos de secciones de la página.
Con esto reduciremos el número de peticiones al servidor y ganaremos velocidad al
cargar el sitio ya que solo estarán cargando los componentes que cambian del sitio.
Esto se logrará porque se esta optando por un framework de programación reactiva.
Como ReactJS nos permite trabajar por componentes nos da una ventaja para poder
acelerar el desarrollo ya que no necesitaremos estar repitiendo el código en todas las
paginas para su funcionamiento. Aparte que el mantenimiento de esta es más rápido,
cuando se necesita solucionar un bug . Al igual la velocidad de desarrollo de un nuevo
módulo será más rápido que desarrollarlo de la manera convencional.
- MSQLServer.
Motor de base de datos usado por muchas empresas para el bindeo (acoplamiento) con
el entorno de desarrollo integrado Visual Studio, permitiéndonos tener un mejor control
a la hora de trabajar con las entidades o tablas que constituyen a la base de datos.
Se opta por el manejador de datos MSQLServer por su robustes y poder realizar un
escalamiento cuando sea necesario por la cantidad de información que llegara a
manejar.
- Tecnología Entity Framework.
Nos permite trabajar de lado a lado con las propiedades de las entidades que conforman
a la base de datos, permitiendo que los componentes que usemos con la ayuda de
ReactJS estén acoplados a las propiedades que corresponden en la base de datos,
permitiendo un aumento de rendimiento en el intercambio de información entre cliente y
servidor.

Si necesitaramos migrar a MySql o PostgreSQL esto podría ser posible porque entity
framework si soporta estos manejadores de datos.
2. Podemos crear apis para que puedan utilizar más personas?
- Así es, con la colaboración de ustedes, es posible definir qué posibilidades se les
puede otorgar a otras personas para con su información, por ejemplo, digamos que,
ustedes por ser los propietarios acceden a todos los citados, congresos, proyectos de
todos los tiempos que llevan en la web, pero ustedes podrían proporcionar un requisito,
diciendo que la api permita recuperar los citados, congresos, proyectos de este año y
no de todos los tiempos (solo como ejemplo).
Al igual se podría controlar el acceso a solo ciertas direcciones ip para que no hagan
mal uso de la api.
También la api contara con seguridad JSON Web Token, para que solo las personas
que se tengan cuenta puedan ejecutar las apis y esta tendrá fecha de caducidad.
3. Cómo sería el proceso de migración de la base de datos?
- Se tendría que identificar qué motor de base de datos se está utilizando ahora, analizar
el modelado actual de la base de datos y analizar cuáles son los puntos a agregar,
mejorar o definitivamente desechar.
Seguido de ello, si la tecnología es la misma sobre la que planeamos trabajar
(MSQLServer) se comienza a realizar los cambios en una nueva estructura, para
después importar los datos que se tienen en la actual, caso contrario, si no se cuenta
con la misma tecnología, se tendría que re-trabajar la estructura para el motor que es
requisito utilizar.
4. Que experiencia se tiene en páginas web?
- Hemos trabajado desde sitios de tipo informativo-anclaje para campañas publicitarias,
sitios web para agencias de viajes, leyes, nutrición, salubridad, causas nobles,
personales, de inventario y control de empleados y migración de procesos de negocios
a web usando tecnologías como HTML, CSS, JS, ReactJS, SVG, GSAP, ASP Net,
yendo de la mano con enfoques de UX/UI y SEO para la correcta indexación y
visualización del sitio web.

5. Medidas de seguridad. Tenemos alguna solución para evitar el webscrapping?


- Una medida en contra del web scrapping es el uso de tecnologías actuales, tales como
se planean en este proyecto, ya que se mejoran los lineamientos sobre los que el
navegador trabaja en conjunto con el renderizado de sitios web, que en este caso, al
ser ReactJS, es necesario entrar al sitio para cargar el contenido, y no está precargado
como tradicionalmente se está.
Sin embargo, es sano señalar que el web scrapping es un tema de debate aún hoy día,
ya que te permite aprovechar la data de otro sitio para tu beneficio, ya sea que lo hagas
legal, o ilegalmente, más allá de eso, así como la tecnología mejora para prevenir estos
desperfectos, también mejoran las herramientas que permiten el web scrapping en un
sitio con tecnologías modernas, o bien, en este caso, con un DOM virtual.
Si bien, aún es posible realizar web scrapping, no sería tan sencillo como en el caso de
una web tradicional a base de PHP. Sin embargo, métodos como el almacenado de
direcciones IP en el log al iniciar sesión o visitar el sitio en cuestión para ver desde dónde
se conectan o bien, usar la medida anti web scrapping Captcha evitará cualquier uso de
bots en la medida de lo posible.

También podría gustarte