From d77091dc2e4b20222ad1d762d4dcdb161d168c0d Mon Sep 17 00:00:00 2001 From: Samuele Locatelli Date: Sat, 23 May 2026 17:24:46 +0200 Subject: [PATCH] update pianificazione steps --- refactoring_wip.md | 49 ++++++++++++---------------------------------- 1 file changed, 13 insertions(+), 36 deletions(-) diff --git a/refactoring_wip.md b/refactoring_wip.md index 8675acf4..5e09b4e1 100644 --- a/refactoring_wip.md +++ b/refactoring_wip.md @@ -1,39 +1,16 @@ -# WIP: Refactoring Phase 1 - Infrastructure Extraction +# Refactoring Progress: IOB-WIN-FORM (Generic.cs) -## Status: IN_PROGRESS +## Obiettivo +Riduzione Context Switching e CPU Load tramite eliminazione Sync-over-Async e ottimizzazione I/O. -## Objective -Extract infrastructure and helper components from `Generic.cs` to improve modularity and reduce the monolithic footprint. +## Stato Attuale +- [x] Analisi iniziale del codice `Generic.cs` +- [ ] Mappatura dipendenze (Analisi firme metodi per evitare breaking changes) +- [ ] Implementazione Fase A (Dirty Checks & Throttling) +- [ ] Implementazione Fase B (Internal Async Refactoring) +- [ ] Implementazione Fase C (Signature Migration) -## Tasks - -### 1. Communication Service Extraction (COMPLETED/REFACTORED) -- [x] Identify redundant `callUrl` and `callUrlWithPayloadAsync` wrappers in `BaseObj.cs`. -- [x] Instead of creating a new service, cleaned up `BaseObj.cs` by removing pass-through methods that merely delegated to `utils`. -- [x] Updated `Generic.cs` to call `HttpService.CallUrl` directly, eliminating the unnecessary indirection layer. - -### 2. Redis Service Extraction (COMPLETED) -- [x] Encapsulate all `redisMan` calls into a `RedisService`. -- [x] Define a clean interface for key/value and hash operations. -- [x] **Refactored**: Moved semantic key construction from `RedisService` to `BaseObj` to eliminate redundant service layer. -- [x] Eliminated `RedisService.cs` as it was absorbed by the `BaseObj` identity-aware implementation. - -### 3. Data Serializer Extraction (IN_PROGRESS) -- [x] Analyzed current `DataSerializer.cs` (JSON) and `XmlDataSerializer.cs` (XML) in `IOB-WIN-FORM`. -- [x] Decided to move these to `IOB_UT_NEXT` to make them available to the entire IOB hierarchy. -- [ ] Move files to `IOB_UT_NEXT\Iob\Services\`. -- [ ] Update namespaces and references. -- [ ] Integrate into `BaseObj.cs` via `protected` helper methods (e.g., `JsonSerialize`, `XmlSerialize`). -- [ ] Update `Generic.cs` to use the new `BaseObj` helpers. - -### 4. BaseObj Simplification (COMPLETED) -- [x] Analyze `BaseObj` responsibilities (State, Config, Messaging, Diagnostics). -- [x] Remove pass-through methods for `utils` (Network, MAC, WebClients) to reduce "noise" in the base class. -- [x] Cleaned up commented-out code blocks (`#if false`) to improve readability. - -## Progress Log -- [x] Created WIP document. -- [x] Completed Redis Semantic Refactoring. -- [x] Completed BaseObj Cleanup. -- [x] Identified Data Serializer components for extraction. -- [ ] Started migration of Serializers to `IOB_UT_NEXT`. +## Log Modifiche e Test di Build +| Data | Metodo/Area | Tipo Modifica | Esito Build (`--agent`) | Note/Errori | +| :--- | :--- | :--- | :--- | :--- | +| 2026-05-23 | Inizio | Analisi | N/A | Identificati colli di bottiglia (Sync-over-Async, Log eccessivo, lack of Dirty Checks) |