ATC 2.1.8

Sviluppatore - ATC Italiano

Panoramica localizzata in Italiano per sviluppo, test e contributi. La documentazione tecnica localizzata è disponibile in italiano. L'inglese resta canonico per l'autorità esatta di release e codice sorgente.

Documentazione Sviluppatore

La documentazione tecnica localizzata è disponibile in italiano. L'inglese resta canonico per l'autorità esatta di release e codice sorgente.

Stato della documentazione

La documentazione tecnica localizzata è disponibile in italiano. L'inglese resta canonico per l'autorità esatta di release e codice sorgente.

Architettura

Scopo del progetto

ATC è un'applicazione matematica Windows da riga di comando in C++ per espressioni testuali, comandi documentati e flussi tecnici locali.

Struttura del codice

La cartella principale del codice è Advanced Trigonometry Calculator/. Il flusso include startup, autocomplete, routing dei comandi, parser, moduli matematici, persistenza e test.

Advanced Trigonometry Calculator/
main.cpp
auto_complete.cpp
main_aux_processor.cpp
main_processor.cpp
processing_core.cpp
commands.cpp
equation_solver.cpp
equations_system_solver.cpp
solver.cpp
polynomial_arithmetic.cpp
dynamic_allocations.cpp
data_processing_core.cpp
stdafx.h
precision_types.h
safe_chararray.h
safe_index.h

Flusso di elaborazione

main.cpp inizializza paths/settings e seleziona double o Boost mp_float; mainType<T>(), main_core<T>(), main_sub_core<T>(), initialProcessor<T>(), arithSolver<T>() e functionProcessor<T>() formano il percorso principale.

Parser e valutazione

Il parser è interno al progetto, non una libreria esterna. Cambiamenti a operatori, funzioni, costanti, complessi, matrici o moltiplicazione implicita richiedono regressione.

Prompt e autocomplete

auto_complete.cpp gestisce editing della riga, Tab completion, cronologia Up/Down e suggerimenti di commands, functions, aliases e user functions.

Solver e polinomi

Aree sensibili includono equation_solver.cpp, equations_system_solver.cpp, solver.cpp e polynomial_arithmetic.cpp. I casi non supportati devono fallire chiaramente o seguire fallback documentato.

Precisione

ATC 2.1.8 supporta double e Boost mp_float; la configurazione persistente usa higherPrecision.txt, e alcuni flussi usano maxprec.

Memoria

Il codice sensibile deve usare helper esistenti, evitare buffer fissi inutili, preservare null termination e liberare array temporanei in tutti i percorsi.

Test

I test vivono in tests/ e includono regressione, memory stress, benchmark script e copertura isolata.

tests/
run-atc-regression.ps1
run-atc-memory-stress.ps1
run-atc-script-benchmark.ps1
run-atc-isolated-coverage.ps1

Summary: 377 passed, 0 failed
Summary: 68 passed, 0 failed

Checklist prima del contributo

  • Aggiungere o aggiornare regressioni.
  • Preservare output documentato quando possibile.
  • Validare x64 e x86 se il cambiamento tocca runtime comune.
  • Aggiornare la documentazione quando cambia un command, module o workflow.
  • Evitare di promettere capacità simboliche non documentate.