علم المنطق في البرمجة

علم المنطق في البرمجة

خصص هذا المقال لتحليل مقارن للكيانات المنطقية من أعمال الفيلسوف الألماني جورج فيلهلم فريدريش هيجل “علم المنطق” مع نظائرها أو غيابها في البرمجة.

الكيانات من علم المنطق مكتوبة بخط مائل لتجنب الخلط مع التعريفات المقبولة عمومًا لهذه الكلمات.

كائن نقي

إذا قمت بفتح التعريف كائن نقي في الكتاب، سترى سطرًا مثيرًا للاهتمام "بدون تعريف إضافي". لكن بالنسبة لأولئك الذين لم يقرأوا أو لا يفهموا، فلا تتسرعوا في اتهام المؤلف بالخرف. كائن نقي - هذا مفهوم أساسي في منطق هيغل، أي أن هناك شيئاً ما موجوداً، فيرجى عدم الخلط بينه وبين وجود الموضوع، فقد لا يكون الموضوع موجوداً في الواقع، ولكن إذا عرفناه بطريقة ما في منطقنا فهو موجود. إذا فكرت في الأمر، فهناك بالفعل أشياء مثل كائن نقي من المستحيل إعطاء تعريف، وأي محاولة من هذا القبيل ستتلخص في أنك ستشير ببساطة إلى مرادفاتها أو متضاداتها. كائن نقي إنه مفهوم مجرد يمكن تطبيقه على أي شيء، بما في ذلك نفسه. في بعض اللغات الموجهة للكائنات، من الممكن تمثيل أي شيء ككائن، بما في ذلك العمليات على الكائنات، وهو ما يمنحنا من حيث المبدأ مثل هذا المستوى من التجريد. ومع ذلك، في برمجة التناظرية المباشرة كائن نقي لا. للتحقق من وجود كائن ما، علينا التحقق من عدم وجوده.

if(obj != null);

ومن الغريب أن مثل هذا السكر النحوي لا يوجد بعد، نظرا لأن هذا الاختيار يحظى بشعبية كبيرة.

لا شيء

كيف يمكنك التخمين لا شيء هو عدم وجود أي شيء. ويمكن أن يسمى التناظرية NULL. ومن الجدير بالذكر أنه في علم المنطق لا شيء هو كائن نقي، لأنه موجود أيضًا. هذا أمر صعب بعض الشيء؛ لا يمكننا الوصول إلى NULL ككائن في أي لغة، على الرغم من أنه في جوهره كذلك.

التشكيل واللحظات

تصبح هو الانتقال من لا شيء в كائن ومن يجري в لا شيء. وهذا يعطينا اثنين لحظة، الأول يسمى ظهوروالثاني عابر. ممر ويسمى كذلك بدلاً من الاختفاء، لأن الجوهر المنطقي لا يمكن أن يختفي إلا إذا نسيناه. انسحاب على هذا النحو يمكننا أن نطلق على إجراء المهمة. إذا تمت تهيئة كائننا، إذن لحظة حدوثها، وفي حالة تعيين قيمة أخرى أو NULL لحظة المرور.

obj = new object(); //возникновение
obj = null; //прехождение

وجود

باختصار وجود هو كائن ليس له تعريف واضح، ولكن لديه بالتاكيد. ماذا يعني ذلك. المثال القانوني هو كرسي عادي. إذا حاولت أن تعطيه تعريفا واضحا، فسوف تواجه العديد من الصعوبات. فمثلاً تقول: "هذه قطعة أثاث مخصصة للجلوس"، ولكن الكرسي أيضاً مصمم لهذا الغرض، ونحو ذلك. لكن عدم وجود تعريف واضح لا يمنعنا من إبرازها في الفضاء واستخدامها عند نقل المعلومات عنها، وهذا لأن في رأسنا هناك بالتاكيد كرسي. ربما خمن البعض بالفعل أن الشبكات العصبية تم إنشاؤها لعزل مثل هذه الكائنات عن تدفق البيانات. يمكن الإشارة إلى الشبكة العصبية على أنها وظيفة تحدد ذلك بالتاكيد، ولكن لا توجد أنواع من الكائنات التي قد تتضمن تعريفات واضحة وغامضة، وبالتالي لا يمكن استخدام هذه الكائنات على نفس المستوى من التجريد.

قانون انتقال التغييرات الكمية إلى تغييرات نوعية

لقد صاغ فريدريك إنجلز هذا القانون نتيجة لتفسير منطق هيغل. ومع ذلك، فإنه يمكن رؤيته بوضوح في المجلد الأول من الفصل الخاص بذلك الأقل. جوهرها هو ذلك كمي التغييرات في كائن قد تؤثر عليه جودة. على سبيل المثال، لدينا جسم جليدي، مع تراكم درجة الحرارة، سيتحول إلى ماء سائل ويتغير شكله جودة. لتنفيذ هذا السلوك في كائن، يوجد نمط تصميم الحالة. ظهور مثل هذا الحل ناتج عن غياب البرمجة لشيء مثل مؤسسة إلى ظهور هدف. مؤسسة يحدد الشروط التي يمكن أن يظهر الكائن بموجبها، وفي الخوارزمية نقرر بأنفسنا عند النقطة التي نحتاجها لتهيئة الكائن.

PS: إذا كانت هذه المعلومات مثيرة للاهتمام، فسوف أقوم بمراجعة الكيانات الأخرى من علم المنطق.

المصدر: www.habr.com

إضافة تعليق