You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
# S7Tools Project Architecture and Structure Blueprint
10
11
11
12
## 1. Visión General
12
13
13
-
S7Tools es una aplicación de escritorio multiplataforma avanzada diseñada para el análisis de seguridad, comunicación y volcado de memoria (firmware extraction) de los PLC Siemens S7-1200 mediante acceso por bootloader. Está construida utilizando **.NET 8.0** (con soporte de compilación en SDKs modernos como .NET 10.0), el framework de interfaz gráfica **Avalonia UI** y el patrón MVVM funcional-reactivo provisto por **ReactiveUI**.
14
+
S7Tools es una aplicación de escritorio multiplataforma avanzada diseñada para el análisis de seguridad, comunicación y volcado de memoria (firmware extraction) de los PLC Siemens S7-1200 mediante acceso por bootloader. Está construida utilizando **.NET 10.0**, el framework de interfaz gráfica **Avalonia UI** y el patrón MVVM funcional-reactivo provisto por **ReactiveUI**.
14
15
15
16
El proyecto se adhiere estrictamente a los principios de **Clean Architecture**, asegurando que el Dominio (Core) esté completamente aislado de la Infraestructura (I/O, Logging) y la Presentación (UI). Además, implementa un procesamiento altamente concurrente y seguro mediante la orquestación coordinada de recursos de hardware.
16
17
17
18
## 2. Análisis Técnico Detallado
18
19
19
20
### Entorno y SDKs
20
-
***.NET SDK**: 8.0 (LTS) como target principal. El sistema de CI/CD y build tools locales operan bajo SDKs actualizados (se detectan targeting packs de .NET 10.0.4 en los logs de MSBuild).
21
+
***.NET SDK**: 10.0 como target principal.
21
22
***Lenguajes**: C# 12/13 (features modernas: Primary Constructors, Records, Nullable Reference Types), C/ARM Assembly (para payloads del PLC), TypeScript/JavaScript (Documentación y scripts de scraping).
22
23
23
24
### Dependencias y Paquetes Clave
24
-
***Avalonia UI (v11.3.6)**: Framework principal para la interfaz de usuario multiplataforma (Windows, Linux, macOS).
25
+
***Avalonia UI (v11.3.12)**: Framework principal para la interfaz de usuario multiplataforma (Windows, Linux, macOS).
25
26
***ReactiveUI (v20.1.1)**: Motor MVVM principal, gestión de estado reactivo y comandos asíncronos (`ReactiveCommand`).
26
27
***Microsoft.Extensions.* (v8.0.0)**: Abstracciones estándar para Inyección de Dependencias (DI), Logging y Options.
27
-
***CommunityToolkit.Mvvm (v8.2.0)**: Utilizado como soporte complementario para observabilidad y Source Generators en escenarios específicos.
28
+
***CommunityToolkit.Mvvm (v8.4.0)**: Utilizado como soporte complementario para observabilidad y Source Generators en escenarios específicos.
28
29
***Dock.Avalonia**: Sistema de docking estilo VSCode (pestañas, paneles anclables) para gestionar el área de trabajo.
29
30
***AvaloniaHex**: Visor/Editor hexadecimal de alto rendimiento para el análisis de volcados de memoria.
0 commit comments