La lógica en la programación

La lógica en la programación

Este artículo está dedicado al análisis comparativo de las entidades lógicas de la obra del filósofo alemán Georg Wilhelm Friedrich Hegel «Ciencias de la Lógica» con sus análogos o su ausencia en la programación.

Las entidades de «Ciencias de la Lógica» están en cursiva para evitar confusiones con las definiciones generalmente aceptadas de estas palabras.

Ser puro

Si abres la definición ser puro en el libro, verás una línea interesante «sin una definición adicional». Pero para aquellos que no lo han leído o no lo han entendido, no se apresuren a acusar al autor de demencia. Ser puro — es un concepto básico en la lógica de Hegel que significa que algún objeto es, por favor no confundir con la existencia del objeto, un objeto puede no existir en la realidad, pero si lo hemos definido de alguna manera en nuestra lógica, él es. Si lo piensas, realmente cosas como ser puro es imposible dar una definición, y cualquier intento de hacerlo se reducirá a que solo estarás refiriéndote a sus sinónimos o antónimos. Ser puro es un concepto tan abstracto que puede aplicarse a absolutamente cualquier cosa, incluyendo a sí mismo. En algunos lenguajes orientados a objetos, existe la posibilidad de representar como objeto todo lo que sea, incluidas las operaciones sobre objetos, lo que en principio nos da ese nivel de abstracción. Sin embargo, en programación no hay un análogo directo de ser puro . Para comprobar la existencia de un objeto, necesitamos verificar su ausencia.

if(obj != null);

Es extraño que aún no haya tal azúcar sintáctico, considerando que esta verificación es bastante popular.

Nada

Como se podría suponer nada es la ausencia de cualquier cosa. Su análogo podría ser NULL. Cabe destacar que en la lógica científica nada es el ser puro, porque también existe. Aquí radica una cierta traba, no podemos referirnos a NULL como objeto en ningún lenguaje, aunque en esencia también lo es.

El devenir y los momentos

El devenir — es la transición de nada en el ser y de del ser en nada. Esto nos da dos momentos, el primero se llama la aparición, y el segundo la desaparición. La desaparición se denomina así en lugar de extinción, porque la entidad lógica en esencia no puede desaparecer, solo si la olvidamos. La extracción como tal puede llamarse al procedimiento de asignación. En el caso de que se inicialice un objeto, ocurre el momento de creación, y en caso de asignar otro valor o NULL el momento de destrucción.

obj = new object(); //creación
obj = null; //destrucción

existencia presente

En resumen existencia presente — es un objeto que no tiene una definición clara, pero tiene definición. ¿Qué significa esto? Un ejemplo típico es una silla común. Si intentas darle una definición clara, te enfrentarás a muchas dificultades. Por ejemplo, podrías decir: "es un mueble destinado a sentarse", pero un sillón también está diseñado para eso, etc. Pero la falta de una definición clara no impide que lo destaquemos en el espacio y lo usemos al transmitir información sobre él, eso es porque en nuestra mente hay definición silla. Es posible que algunos ya hayan adivinado que para distinguir tales objetos del flujo de datos se crearon redes neuronales. Una red neuronal se puede definir como una función que determina esta definición, pero no existen tipos de objetos que incluyan definiciones claras y difusas al mismo tiempo, por lo que tales objetos no se pueden utilizar al mismo nivel de abstracción.

Ley de transición de cambios cuantitativos en cualitativos

Esta ley fue formulada por Friedrich Engels como resultado de la interpretación de la lógica de Hegel. Sin embargo, se puede vislumbrar en el primer volumen en el capítulo sobre medida. Su esencia es que cambios cuantitativos en un objeto pueden influir en su calidad. Por ejemplo, tenemos el objeto hielo, al acumular temperatura se transformará en agua líquida y cambiará sus calidades. Para implementar tal comportamiento en un objeto, existe un patrón de diseño llamado "Estado". La aparición de tal solución se debió a la falta en programación de algo como fundamento para de la creación del objeto. El fundamento define las condiciones bajo las cuales un objeto puede crear, y en el algoritmo decidimos en qué momento necesitamos inicializar el objeto.

PD: Si esta información resulta interesante, realizaré una revisión de otras entidades de "La Ciencia de la Lógica".

Fuente: habr.com

Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS 🔥 Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS | ProHoster