A ciência da lógica na programação

Georg Friedrich Wilhelm Hegel


Este artigo é dedicado a uma análise comparativa de entidades lógicas a partir do trabalho do "Science of Logic", do filósofo alemão Georg Wilhelm Friedrich Hegel, com seus análogos ou sua ausência na programação.


As entidades da Science of Logic são mostradas em itálico, para que não haja confusão com as definições geralmente aceitas dessas palavras.


Ser puro


Se você abrir a definição de puro ser em um livro, verá uma linha interessante "sem mais definições". Mas para quem não leu ou entendeu, não se apresse em culpar o autor pela demência. Ser puro é um conceito básico na lógica de Hegel, o que significa que existe algum tipo de objeto, por favor, não confunda com a existência do objeto, o objeto pode não existir na realidade, mas se de alguma forma o definimos em nossa lógica, é. Se você pensar bem, é realmente impossível definir algo como ser puro , e qualquer tentativa desse tipo se resumirá ao fato de você simplesmente se referir a seus sinônimos ou antônimos. Ser puro é tanto um conceito abstrato que pode ser aplicado a absolutamente qualquer coisa, inclusive a si próprio. Em algumas linguagens orientadas a objetos, é possível representar qualquer coisa que você queira como objeto, incluindo operações em objetos, o que, em princípio, nos fornece esse nível de abstração. No entanto, na programação não há análogo direto do puro ser . Para verificar a existência de um objeto, precisamos verificar sua ausência.


if(obj != null); 

É estranho que não exista tal açúcar sintático, uma vez que essa verificação é muito popular.


Nada


Como você deve ter adivinhado, nada é a ausência de nada. E seu análogo pode ser chamado de NULL. Vale ressaltar que na ciência, lógica, nada é puro ser , porque também existe. Isso é um pouco complicado, não podemos nos referir a NULL como um objeto em qualquer idioma, embora em essência também seja um.


Tornar-se e momentos


Tornar - se é a transição do nada para o ser e do ser para o nada . Isso nos dá dois pontos , o primeiro é chamado de aparência e o segundo é a passagem . A transição é assim denominada em vez da extinção, porque uma entidade lógica não pode desaparecer essencialmente a menos que a esqueçamos. A retirada como tal pode ser chamada de procedimento de atribuição. No caso de inicializarmos o objeto, ocorre o momento da ocorrência e, no caso de atribuir outro valor ou NULL, o momento da passagem .


 obj = new object(); // obj = null; // 

Dinheiro sendo


Em resumo, o ser é um objeto que não tem uma definição clara, mas tem certeza . O que isso significa? Um exemplo canônico é o banquinho comum. Se você tentar definir claramente, encontrará muitas dificuldades. Por exemplo, você diz: "este é um móvel projetado para assentos", mas a cadeira também é criada para isso, etc. Mas a falta de uma definição clara não nos impede de destacá-la no espaço e usá-la na transmissão de informações sobre isso, isso ocorre porque há certeza de uma cadeira em nossa cabeça. Talvez alguns já tenham adivinhado que redes neurais foram criadas para isolar esses objetos do fluxo de dados. Uma rede neural pode ser designada como uma função que define essa certeza , mas não há tipos de objetos que incluam definições claras e difusas; portanto, esses objetos não podem ser usados ​​no mesmo nível de abstração.


A lei da transição de mudanças quantitativas para qualitativas


Essa lei foi formulada por Friedrich Engels como resultado da interpretação da lógica de Hegel. No entanto, isso pode ser visto no primeiro volume do capítulo sobre medidas . Sua essência está no fato de que mudanças quantitativas no objeto podem afetar sua qualidade . Por exemplo, temos um objeto de gelo, com o acúmulo de temperatura ele se transforma em água líquida e muda suas qualidades . Para implementar esse comportamento, existe um modelo de design "Estado" no objeto. O surgimento de uma solução desse tipo é causado pela falta de programação de uma coisa como base para o surgimento de um objeto. A base determina as condições sob as quais o objeto pode ocorrer e, no algoritmo, decidimos em que momento precisamos inicializar o objeto.


PS: Se essa informação for interessante, analisarei outras entidades da Science of Logic.

Source: https://habr.com/ru/post/pt448948/


All Articles