यदि आपने एलन के के बारे में कभी नहीं सुना है, तो कम से कम आपने उनके प्रसिद्ध उद्धरण तो सुने ही होंगे। उदाहरण के लिए, 1971 का यह उद्धरण:
भविष्य की भविष्यवाणी करने का सबसे अच्छा तरीका उसका आविष्कार करना है।
भविष्य की भविष्यवाणी करने का सबसे अच्छा तरीका उसका आविष्कार करना है।
कंप्यूटर विज्ञान में एलन का करियर बहुत रंगीन है। उसने प्राप्त किया
हमारे में
सॉफ्टवेयर विकास के बारे में
एलन के का मानना है कि कंप्यूटर क्रांति अभी बाकी है (
समस्या कमज़ोर है, ख़राब मापनीय विचार और उपकरण, आलस्य, ज्ञान की कमी, आदि।
इस स्थिति का अच्छे से वर्णन करता है
एंडी क्या देता है, बिल छीन लेता है
एंडी ने दिया, बिल ने लिया
इंटेल के सीईओ एंडी ग्रोव और माइक्रोसॉफ्ट के तत्कालीन सीईओ बिल गेट्स।
विकास की वर्तमान स्थिति में सुधार करना अनुसंधान परियोजना का लक्ष्य था
उनकी आंखें खोल देने वाली रिपोर्ट में
एलन इंटरनेट, टीसीपी/आईपी प्रोटोकॉल, एलआईएसपी दुभाषियों पर विचार करता है।
वह इंटरनेट (टीसीपी/आईपी) को उन कुछ बड़े पैमाने के सॉफ़्टवेयर प्रोजेक्टों में से एक कहते हैं जिन्हें सही ढंग से डिज़ाइन किया गया था, और इसकी जटिलता का स्तर जटिलता के स्तर (जटिलता बनाम जटिलता) के साथ संतुलन में है। कोड की 20 से भी कम लाइनों के साथ, यह परियोजना एक जीवंत, गतिशील प्रणाली के रूप में संचालित होती है जो अरबों नोड्स का समर्थन करने में सक्षम है, और सितंबर 1969 में अपने प्रारंभिक लॉन्च के बाद से कभी भी ऑफ़लाइन नहीं हुई है। हमने इंटरनेट को लोगों द्वारा बनाया गया एक सामान्य सॉफ़्टवेयर प्रोजेक्ट मानना बंद कर दिया है:
इंटरनेट इतना अच्छी तरह से विकसित है कि कई लोग इसे मानव श्रम के उत्पाद के बजाय प्रशांत महासागर जैसे प्राकृतिक संसाधन की तरह मानते हैं। आखिरी बार हमने ऐसी स्थिर, स्पष्ट, त्रुटि रहित तकनीक कब देखी थी? तुलनात्मक रूप से, वेब बकवास है। वेब शौकीनों द्वारा बनाया गया था।
ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग के बारे में
पहली चीज़ जिसमें मेरी दिलचस्पी थी वह थी उसकी
मैंने वस्तुओं को जैविक कोशिकाओं, और/या एक नेटवर्क पर व्यक्तिगत कंप्यूटर के रूप में सोचा जो केवल संदेशों के माध्यम से संचार कर सकते थे।
और गणित में अनुभव:
गणित में मेरे अनुभव ने मुझे एहसास कराया कि प्रत्येक वस्तु में कई बीजगणित हो सकते हैं, उन्हें परिवारों में जोड़ा जा सकता है, और यह बहुत उपयोगी हो सकता है।
LISPa की लेट बाइंडिंग और शक्तिशाली मेटा-विशेषताओं के लिए विचार:
दूसरा चरण एलआईएसपीए को समझना और उस समझ का उपयोग करके आसान, छोटी, अधिक शक्तिशाली संरचनाएं बनाना और बाद में बाइंडिंग करना है।
और जल्द ही एलन ने इस विचार का समर्थन करना शुरू कर दिया कि भाषाएँ गतिशील हैं
देर से बाइंडिंग उन विचारों को अनुमति देता है जो विकास प्रक्रिया में बाद में आए थे, उन्हें कम प्रयास के साथ परियोजना में शामिल किया जा सकता है (सी, सी ++, जावा इत्यादि जैसे पहले बाध्य सिस्टम की तुलना में)
और तत्काल परिवर्तन और तेज़ पुनरावृत्तियों की संभावना:
प्रमुख विचारों में से एक यह है कि सिस्टम को परीक्षण के दौरान काम करना जारी रखना चाहिए, खासकर जब परिवर्तन किए जा रहे हों। यहां तक कि बड़े बदलाव भी क्रमिक होने चाहिए और इसमें एक सेकंड से अधिक का समय नहीं लगना चाहिए।
जिसमें कमी है
यदि आप प्रारंभिक-बाध्यकारी भाषाओं का उपयोग करते हैं, जैसा कि अधिकांश लोग करते हैं, तो आप अपने आप को उस चीज़ में बंद कर देते हैं जो आपने पहले ही लिखा है। अब इसे आसानी से दोबारा तैयार करना संभव नहीं होगा।
आश्चर्यजनक रूप से, OOP के बारे में उनके विचार यहीं तक सीमित थे:
मेरे लिए ओओपी संदेश, स्थानीय पकड़ और सुरक्षा, राज्य छिपाना और हर चीज की देर से बाइंडिंग है। यह स्मॉलटॉक और एलआईएसपी में किया जा सकता है।
और विरासत के बारे में कुछ नहीं. यह OOP नहीं है
काश मैंने बहुत समय पहले इस विषय के लिए "ऑब्जेक्ट" शब्द का उपयोग किया होता क्योंकि यह कई लोगों को कम विचारों पर ध्यान केंद्रित करने का कारण बनता है।
आधुनिक सांख्यिकीय रूप से टाइप की गई OO भाषाओं में जिस बड़े विचार का अभाव है:
बड़ा विचार है "संदेश"
वह किसी वस्तु के आंतरिक भाग के बजाय संदेशों, ढीले युग्मन और मॉड्यूल इंटरैक्शन पर ध्यान केंद्रित करने में विश्वास करता है:
अच्छे स्केलेबल सिस्टम बनाने की कुंजी मॉड्यूल के बीच संचार तंत्र पर काम करना है, न कि उनके आंतरिक गुणों और व्यवहार पर काम करना।
उसे स्थैतिक रूप से टाइप की गई भाषाएँ लगती हैं
मैं प्रकारों के ख़िलाफ़ नहीं हूं, लेकिन मैं किसी भी प्रकार की प्रणाली के बारे में नहीं जानता जो दर्द का कारण न बने। इसलिए मुझे अब भी गतिशील टाइपिंग पसंद है।
कुछ लोकप्रिय भाषाएँ आज स्मॉलटॉक के संदेश भेजने के विचारों, देर से बाइंडिंग और का उपयोग करती हैं
सब कुछ नष्ट कर दो और कुछ बेहतर बनाओ
एलन के पास कंप्यूटर विज्ञान के विकास के बारे में एक दिलचस्प सिद्धांत है:
मुझे ऐसा लगता है कि कंप्यूटर विज्ञान केवल एक ही प्रकार का है, और वह विज्ञान पुल बनाने जैसा है। कोई पुल बनाता है, और कोई उन्हें नष्ट करके नए सिद्धांत बनाता है। और हमें पुलों का निर्माण जारी रखना होगा।
एलआईएसपी के बारे में
एलन के लिस्प पर विश्वास करते हैं
अब तक की सर्वश्रेष्ठ प्रोग्रामिंग भाषा
और यह कि प्रत्येक कंप्यूटर विज्ञान स्नातक को इसका अध्ययन करना चाहिए:
सीएस में डिग्री हासिल करने वाले अधिकांश लोग लिस्प के महत्व को नहीं समझते हैं। कंप्यूटर विज्ञान में लिस्प सबसे महत्वपूर्ण विचार है।
सही माहौल और संदर्भ के बारे में
वह अक्सर वहां के अनूठे माहौल को याद करते हैं
दृष्टिकोण का मूल्य 80 IQ अंक है।
एलन के कहते हैं:
ARPA/PARC कहानी दर्शाती है कि कैसे दूरदर्शिता, मामूली फंडिंग, सही संदर्भ और प्रक्रिया का संयोजन जादुई रूप से नई प्रौद्योगिकियों को जन्म दे सकता है जो न केवल सभ्यता को प्रभावित करती हैं बल्कि समाज के लिए भारी मूल्य भी पैदा करती हैं।
और यह सच है।
- लेजर प्रिंटर
- ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग / स्मॉलटॉक
- व्यक्तिगत कम्प्यूटर्स
- ईथरनेट/वितरित कंप्यूटिंग
- जीयूआई/कंप्यूटर माउस/WYSIWYG
में और
पुनश्च
स्रोत: www.habr.com