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
Copy file name to clipboardExpand all lines: website/src/content/docs/es/core_concepts/state_management.mdx
+5-5Lines changed: 5 additions & 5 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -48,9 +48,8 @@ Todos los estados en Reactter son clases que heredan de <HT><a href="https://pub
48
48
la cual encapsula los datos y el comportamiento de un estado particular, y proporciona una forma de notificar a los observadores cuando el estado cambia
49
49
50
50
### Metodos del estado
51
-
Reactter ofrece tres enfoques fundamentales para crear estados: <HT>[`RtState`](/reactter/es/api/classes/RtState)</HT>, <HT>[`Signal`](/reactter/es/api/classes/signal)</HT> y <HT>[`Hooks`](/reactter/es/core_concepts/hooks)</HT>.
52
51
53
-
La clase <HT><ahref="https://pub.dev/documentation/reactter/latest/reactter/RtState-class.html"target="_blank">`RtState`</a></HT> proporciona algunos métodos para gestionar los estados, que son:
52
+
<HT>[`RtState`](/reactter/api/classes/rt_state)</HT> clase proporciona algunos métodos para la gestión de estados. Conozcámoslos:
54
53
55
54
<StateMethods />
56
55
@@ -90,17 +89,18 @@ void countdown(Timer timer) {
90
89
```
91
90
92
91
Ahora veamos que contiene la clase <HT>`Signal`</HT> y cómo se actualiza el estado `count` en el ejemplo anterior
93
-
class Signal<T> with RtContextMixin, RtState<Signal<T>>{
Copy file name to clipboardExpand all lines: website/src/content/docs/es/overview.mdx
+14-17Lines changed: 14 additions & 17 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -3,27 +3,24 @@ title: Introducción
3
3
description: Conoce Reactter, por qué se creó y sus características.
4
4
---
5
5
6
-
La gestión de estados es fundamental en las aplicaciones, ya que determina cómo se almacena, actualiza y comparte la información dentro de la misma.
7
-
En Flutter nos proporciona la clase `StafulWidget` para manejar el estado local, que suele ser suficiente para aplicaciones pequeñas,
8
-
sin embargo, a medida que la aplicación crece, la gestión del estado se vuelve más compleja y difícil de mantener. Tambien contamos
9
-
con la clase `InheritedWidget` para gestionar el estado global, pero es un poco complicado de usar.
10
-
Es por ello que existen diversos paquetes para gestionar el estado global.
6
+
import { HT } from'@/components/Highlight';
11
7
12
-
Aunque la gestión del estado es un componente clave de la arquitectura de una aplicación, no es el único factor a tener en cuenta.
13
-
La inyección de dependencias, el manejo de eventos, y, en el caso de las aplicaciones Flutter, un control adecuado del renderizado,
14
-
son igualmente cruciales para asegurar que la aplicación sea escalable, flexible y fácil de mantener a largo plazo.
15
-
Todos estos aspectos deben ser considerados de forma conjunta para crear una arquitectura sólida y eficiente.
8
+
La gestión del estado es la columna vertebral de cualquier aplicación Flutter, pero a medida que las aplicaciones crecen en complejidad, también lo hacen los retos de mantener un código limpio, escalable y eficiente.
9
+
Aunque Flutter ofrece herramientas integradas como <HT>`StatefulWidget`</HT>, a menudo se quedan cortas cuando se trata de gestionar el estado global o manejar casos de uso avanzados.
10
+
Esto ha dado lugar a una amplia variedad de paquetes de gestión de estado, cada uno con sus propios puntos fuertes, pero también con sus propias desventajas.
16
11
17
-
Si bien existen numerosos paquetes para gestionar el estado, muchos de ellos no ofrecen soluciones completas ni lo suficientemente robustas.
18
-
Este desafío se intensifica aún más en aplicaciones desarrolladas exclusivamente con Dart, donde la falta de opciones adecuadas para el manejo del estado global hace que la gestión se vuelva aún más desafiante.
12
+
**Reactter** nació del deseo de crear algo diferente, una solución de gestión de estados que no se limita a resolver problemas, sino que eleva toda la experiencia de desarrollo.
13
+
Inspirado en la simplicidad y reactividad de ReactJS, Reactter aporta un enfoque fresco y moderno al desarrollo con Dart y Flutter.
14
+
No es sólo otro paquete de gestión de estado, es un framework completo, diseñado para hacer su aplicación más rápida, su código más limpio y su vida como desarrollador más fácil.
19
15
20
-
Con esto en mente, se creó **Reactter**, un paquete **_ligero_**, **_poderoso_** y **_reactivo_**[**gestión de estados**](/reactter/es/core_concepts/state_management), [**inyección de dependencias**](/reactter/es/core_concepts/dependency_injection) y [**manejo de eventos**](/reactter/es/core_concepts/event_handler) para Dart/Flutter.
16
+
¿Qué diferencia a Reactter? Mientras que otros paquetes se centran únicamente en la gestión de estados, Reactter va más allá integrando a la perfección **inyección de dependencias**, **manejo de eventos** y **control de renderizado** en un único framework cohesionado.
17
+
Es ligero pero potente, sencillo pero flexible, y está diseñado para funcionar a la perfección con cualquier arquitectura o patrón.
18
+
Tanto si estás construyendo un proyecto pequeño como una aplicación a gran escala, Reactter te da las herramientas para escribir menos codigo repetitivo, mejorar la legibilidad y mantener un control granular sobre el comportamiento de tu aplicación.
21
19
22
-
## Motivación
23
-
24
-
**Reactter** nace como un experimento al desarrollar una nueva forma de gestionar el estado en proyectos Flutter que fuera eficiente, reactivo, escalable, y a la vez simple y fácil de usar.
25
-
26
-
Inspirado en ReactJS, Reactter(**Reac**t-Fu**tter**) adopta conceptos clave de esta biblioteca a Dart y Flutter, ofreciendo una solución optimizada y coherente con las necesidades del desarrollo actual.
20
+
Pero Reactter no se trata sólo de características, se trata de una filosofía.
21
+
Creemos que la gestión de estados debe ser intuitiva, no intimidante.
22
+
Es por eso que Reactter se construye con una mentalidad *centrada en el desarrollador*, ofreciendo una sintaxis que es fácil de aprender, un flujo de trabajo que es fácil de depurar, y un diseño que es fácil de amar.
23
+
Con Reactter, no solo gestionas el estado, sino que desbloqueas todo el potencial de tus aplicaciones.
- <HM><ahref="https://pub.dev/documentation/reactter/latest/reactter/RtState/update.html"target="_blank">`update`</a></HM>: Ejecuta una función de devolución de llamada y notifica a sus oyentes que el estado ha cambiado.
7
-
Cuando se invoca, emite dos eventos para señalar la transición de estado:
8
-
Primeramente se emite <HE>`Lifecycle.willUpdate`</HE>, indicando la próxima actualización, seguido de <HE>`Lifecycle.didUpdate`</HE> una vez que el proceso de actualización está completo.
9
-
- <HM><ahref="https://pub.dev/documentation/reactter/latest/reactter/RtState/notify.html"target="_blank">`notify`</a></HM>: Fuerza la notificacion a los oyentes del estado de su cambio.
10
-
A diferencia de <HM>`update`</HM>, emite solo el evento <HE>`Lifecycle.didUpdate`</HE>, ya que no implica ningún paso preparatorio antes de la notificación.
11
-
- <HM><ahref="https://pub.dev/documentation/reactter/latest/reactter/RtState/bind.html"target="_blank">`bind`</a></HM>: Establece una conexión entre el estado y una instancia específica.
12
-
Esta conexión permite que la instancia se actualice de forma reactiva en función de los cambios en el estado.
13
-
Al enlazar el estado, la instancia es notificada de los cambios en el estado y puede reflejar adecuadamente esos cambios en su comportamiento.
14
-
- <HM><ahref="https://pub.dev/documentation/reactter/latest/reactter/RtState/unbind.html"target="_blank">`unbind`</a></HM>: Libera la conexión entre el estado y la instancia.
15
-
Al desvincular, la instancia ya no recibirá actualizaciones del estado.
16
-
Esto puede ser útil cuando una instancia ya no está utilizando activamente el estado o cuando necesita separarse del estado temporalmente o permanentemente.
17
-
- <HM><ahref="https://pub.dev/documentation/reactter/latest/reactter/RtState/dispose.html"target="_blank">`dispose`</a></HM>: Es responsable de limpiar el estado y cualquier oyente o recurso asociado.
6
+
- <HM>**`update`**</HM>: Ejecuta una función callback y notifica a sus observadores que el estado ha cambiado.
7
+
Cuando se invoca, emite dos eventos [lifecycle](/reactter/es/core_concepts/lifecycle) para señalar la transición de estado:
8
+
- <HE>`Lifecycle.willUpdate`</HE> se emite primero, indicando la actualización inminente.
9
+
- <HE>`Lifecycle.didUpdate`</HE> se emite una vez que el proceso de actualización se ha completado.
10
+
- <HM>**`notify`**</HM>: Fuerza al estado a notificar a sus observadores.
11
+
A diferencia de <HM>`update`</HM>, sólo emite el evento <HE>`Lifecycle.didUpdate`</HE>, ya que no implica ningún paso previo a la notificación.
12
+
- <HM>**`bind`**</HM>: Establece una conexión entre el estado y una instancia específica.
13
+
Esta conexión permite a la instancia actualizarse de forma reactiva en función de los cambios en el estado.
14
+
Al vincular el estado, la instancia se da cuenta de los cambios en el estado y puede reflejar adecuadamente esos cambios en su comportamiento.
15
+
- <HM>**`unbind`**</HM>: Libera la conexión entre el estado y la instancia.
16
+
Al desvincularse, la instancia dejará de recibir actualizaciones del estado.
17
+
Esto puede ser útil cuando una instancia ya no está utilizando activamente el estado o cuando necesita desvincularse del estado temporal o permanentemente.
18
+
- <HM>**`dispose`**</HM>: Es responsable de limpiar el estado y cualquier observador o recurso asociado.
18
19
Disponer del estado garantiza que se libere correctamente y que ya no consuma memoria o recursos de procesamiento innecesariamente.
19
20
20
21
:::note
21
-
Los métodos <HM>`bind`</HM>, <HM>`unbind`</HM> y <HM>`dispose`</HM> se utilizan normalmente para gestionar el <HT>[Ciclo de vida](/reactter/es/core_concepts/lifecycle)</HT> de un estado.
22
-
Sin embargo, Reactter maneja esto automáticamente, cuando el estado se declara dentro de una instancia que existe dentro del contexto de Reactter a través de la [inyección de dependencias](/reactter/es/core_concepts/dependency_injection/), por lo que no es necesario preocuparse por ello(Aprende más sobre [vinculación del estado a una dependencia](/reactter/es/extra_topics/binding_state_to_dependency/)).
22
+
Mientras que los métodos <HM>`bind`</HM>, <HM>`unbind`</HM> y <HM>`dispose`</HM> se utilizan normalmente para gestionar el [ciclo de vida](/reactter/es/core_concepts/lifecycle) de un estado,
23
+
Reactter maneja esto automáticamente, cuando el estado es declarado dentro de una instancia que existe dentro del contexto de Reactter vía [dependecy injection](/reactter/es/core_concepts/dependency_injection/), por lo que no necesitas preocuparte por ello(Learn more about [Binding State to Dependency](/reactter/es/extra_topics/binding_state_to_dependency/)).
0 commit comments