De wetenschap van de logica in programmeren

De wetenschap van de logica in programmeren

Dit artikel is gewijd aan een vergelijkende analyse van de logische entiteiten uit het werk van de Duitse filosoof Georg Wilhelm Friedrich Hegel, "Wetenschap van de Logica", met hun analogieƫn of de afwezigheid ervan in de programmering.

Entiteiten uit "Wetenschap van de Logica" zijn cursief weergegeven om verwarring met de algemeen aanvaarde definities van deze woorden te voorkomen.

Zuiver zijn

Als u de definitie opent zuiver zijn in het boek, zult u een interessante zin zien: "zonder verdere definitie". Maar voor degenen die het niet hebben gelezen of begrepen, haast u niet om de auteur voor dementie uit te maken. Zuiver zijn — dit is een basisbegrip in de logica van Hegel, wat betekent dat een object bestaat; verwart u dit niet met het bestaan van een object; een object kan in de werkelijkheid niet bestaan, maar als we het op een bepaalde manier definiĆ«ren in onze logica, dan is het er. Als u erover nadenkt, zijn er werkelijk dingen zoals zuiver zijn het is onmogelijk om een definitie te geven, en elke poging hiertoe zal neerkomen op dat u gewoon naar synoniemen of antoniemen verwijst. Zuiver zijn een zo abstract begrip, dat het op absoluut alles van toepassing kan zijn, inclusief zichzelf. In sommige objectgeoriĆ«nteerde talen is het mogelijk om alles als object voor te stellen, inclusief operaties op objecten, wat in principe ons zo'n abstractieniveau geeft. Echter, in programmering is er geen directe analoog van zuiver zijn Om de aanwezigheid van een object te controleren, moeten we zijn afwezigheid controleren.

if(obj != null);

Het is vreemd dat er nog geen dergelijke syntactische suiker is, gezien het feit dat deze controle vrij populair is.

Niets

Zoals je kunt raden niets is de afwezigheid van iets. Zijn analoog kan NULL zijn. Het is belangrijk op te merken dat in de wetenschap van de logica niets is zuiver zijn, omdat het ook bestaat. Dit vormt een kleine complicatie; naar NULL kunnen we in geen enkele taal als object verwijzen, hoewel het in wezen ook een object is.

Worden en momenten

Worden is de overgang van niets in zijn en van zijn in niets. Dit geeft ons twee momenten, de eerste wordt genoemd ontstaan, en de tweede vergang. Vergang is zo genoemd in plaats van verdwijnen, omdat een logische entiteit in wezen niet kan verdwijnen, alleen als we het vergeten zijn. Opheffing hoe we de procedure voor toewijzing kunnen noemen. In het geval dat we een object initialiseren, gebeurt er het moment van ontstaan, en in het geval van het toewijzen van een andere waarde of NULL het moment van vergaan.

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

Het actuele bestaan

Als ik het kort samenvat actueel bestaan — is een object dat geen duidelijke definitie heeft, maar wel heeft duidelijkheid. Wat betekent dit? Een klassiek voorbeeld is een gewone stoel. Als je probeert het een duidelijke definitie te geven, zul je tegen veel moeilijkheden aanlopen. Bijvoorbeeld, je zegt: ā€˜dit is een meubelstuk dat bedoeld is om op te zitten’, maar een fauteuil is ook daarvoor gemaakt, enzovoort. Maar het ontbreken van een duidelijke definitie weerhoudt ons er niet van om het in de ruimte te onderscheiden en te gebruiken bij het doorgeven van informatie erover; dit komt omdat we in ons hoofd hebben duidelijkheid van een stoel. Misschien heeft iemand al geraden dat neuro-netwerken zijn ontworpen om zulke objecten uit de datastroom te filteren. Een neuraal netwerk kan worden aangeduid als een functie die dit duidelijkheid, maar er zijn geen soorten objecten die zowel duidelijke als vage definities omvatten, daarom kunnen zulke objecten niet op hetzelfde abstractieniveau worden gebruikt.

De wet van overgang van kwantitatieve veranderingen naar kwalitatieve

Deze wet werd geformuleerd door Friedrich Engels na de interpretatie van de logica van Hegel. Echter, men kan het heel goed zien in het eerste deel in het hoofdstuk over maat. De essentie ervan is dat kwantitatieve veranderingen in een object invloed kunnen uitoefenen op zijn kwaliteit. Bijvoorbeeld, we hebben een object ijs, bij het toenemen van de temperatuur verandert het in vloeibaar water en verandert het zijn kwaliteiten. Voor de realisatie van dergelijk gedrag in een object bestaat het ontwerppatroon ā€˜Toestand’. Het ontstaan van deze oplossing wordt veroorzaakt door het ontbreken van iets in de programmering zoals grondslag voor van het ontstaan van een object. De grondslag bepaalt de voorwaarden waaronder een object kan ontstaan, en in het algoritme besluiten we zelf op welk moment we het object moeten initialiseren.

PS: Als deze informatie interessant is, zal ik een overzicht geven van andere entiteiten uit ā€˜De wetenschap van de logica’.

Bron: habr.com

Koop betrouwbare webhosting met bescherming tegen DDoS, VPS VDS servers šŸ”„ Koop betrouwbare webhosting met bescherming tegen DDoS, VPS VDS servers | ProHoster