అలాన్ కే, OOP సృష్టికర్త, అభివృద్ధి, Lisp మరియు OOP గురించి

అలాన్ కే, OOP సృష్టికర్త, అభివృద్ధి, Lisp మరియు OOP గురించి

మీరు అలాన్ కే గురించి ఎప్పుడూ వినకపోతే, మీరు కనీసం అతని ప్రసిద్ధ కోట్‌లను విన్నారు. ఉదాహరణకు, 1971 నుండి ఈ కోట్:

భవిష్యత్తును అంచనా వేయడానికి ఉత్తమ మార్గం దానిని కనిపెట్టడం.
భవిష్యత్తును అంచనా వేయడానికి ఉత్తమ మార్గం దానిని కనిపెట్టడం.

అలాన్‌కి కంప్యూటర్ సైన్స్‌లో చాలా కలర్‌ఫుల్ కెరీర్ ఉంది. అతను తీసుకున్నాడు క్యోటో బహుమతి и ట్యూరింగ్ అవార్డు ఆబ్జెక్ట్-ఓరియెంటెడ్ ప్రోగ్రామింగ్ నమూనాలో అతని పని కోసం. అతను వ్యక్తిగత కంప్యూటర్లు మరియు గ్రాఫికల్ ఇంటర్‌ఫేస్‌ల రంగంలో మార్గదర్శకులలో ఒకడు, అతను అభివృద్ధి చేశాడు స్మాల్ టాక్ అన్ని కాలాలలో మొదటి అత్యంత ప్రభావవంతమైన ప్రోగ్రామింగ్ భాషలలో ఒకటి.

మా లో హెక్స్లెట్, ముఖ్యంగా లో చాట్, “OOP అంటే ఏమిటి” మరియు “అలన్ కే నిజంగా అర్థం ఏమిటి” అనే ప్రశ్న నిరంతరం తలెత్తుతుంది. ఈ పోస్ట్ ఆధునిక అభివృద్ధి స్థితి, OOP మరియు లిస్ప్ భాష గురించి అలాన్ నుండి ఆసక్తికరమైన కోట్‌లను కలిగి ఉంది.

సాఫ్ట్‌వేర్ అభివృద్ధి గురించి

కంప్యూటర్ విప్లవం ఇంకా రాలేదని అలాన్ కే అభిప్రాయపడ్డారు (నిజమైన కంప్యూటర్ విప్లవం ఇంకా జరగలేదు), మరియు సాఫ్ట్‌వేర్ డెవలప్‌మెంట్ మూర్ యొక్క చట్టానికి విలోమ నిష్పత్తిలో అభివృద్ధి చెందుతుంది: హార్డ్‌వేర్ ప్రతి సంవత్సరం మెరుగుపడుతుంది, అయితే సాఫ్ట్‌వేర్ అనవసరంగా ఉబ్బిపోతుంది:

సమస్య బలహీనంగా ఉంది, తక్కువ కొలవలేని ఆలోచనలు మరియు సాధనాలు, సోమరితనం, జ్ఞానం లేకపోవడం మొదలైనవి.

ఈ పరిస్థితిని చక్కగా వివరించారు చిన్న జోక్:

ఆండీ ఏమి ఇస్తే, బిల్ తీసివేస్తాడు
ఆండీ ఇచ్చాడు, బిల్ తీసుకున్నాడు

ఇంటెల్ యొక్క CEO అయిన ఆండీ గ్రోవ్ మరియు మైక్రోసాఫ్ట్ యొక్క CEO అయిన బిల్ గేట్స్.

ప్రస్తుత అభివృద్ధి స్థితిని మెరుగుపరచడం పరిశోధన ప్రాజెక్ట్ యొక్క లక్ష్యం ప్రోగ్రామింగ్ (పిడిఎఫ్) రీఇన్వెన్షన్ దిశగా అడుగులు. "అవసరమైన కోడ్ మొత్తాన్ని 100, 1000, 10000 రెట్లు లేదా అంతకంటే ఎక్కువ తగ్గించడం" ద్వారా వ్యక్తీకరణలో "మూర్స్ లా" సాధించడం లక్ష్యం.

తన కళ్లు తెరిచే నివేదికలో ప్రోగ్రామింగ్ మరియు స్కేలింగ్ (వీడియో) ఈ అంశం మరింత వివరంగా చర్చించబడింది. అలాన్ ప్రకారం, సాఫ్ట్‌వేర్ ఇంజినీరింగ్ నిలిచిపోయింది మరియు హార్డ్‌వేర్ మరియు ఇతర శాస్త్రాలు మరియు ఇంజినీరింగ్ విభాగాలకు అనుగుణంగా ఉండలేని ఒక మరచిపోయిన శాస్త్రంగా మారుతోంది. భారీ ప్రాజెక్టులు కోడ్ డంప్‌లుగా మారాయి మరియు ఒక స్థాయికి చేరుకున్నాయి ఎవరూ MS Vista లేదా MS Word కోడ్ యొక్క 100 మిలియన్ లైన్‌లను అర్థం చేసుకోలేకపోయింది. కానీ వాస్తవానికి, అటువంటి ప్రాజెక్ట్‌లలో తక్కువ కోడ్ యొక్క క్రమం ఉండాలి.

అలాన్ ఇంటర్నెట్, TCP/IP ప్రోటోకాల్‌లు, LISP వ్యాఖ్యాతలు, నైల్ (వెక్టార్ గ్రాఫిక్స్ కోసం మ్యాథ్ DSL) మరియు OMeta (OO PEG) (PDF) కనిష్ట కోడ్‌తో సొగసైన సాఫ్ట్‌వేర్ ఉదాహరణలు.

అతను ఇంటర్నెట్ (TCP/IP)ను సరిగ్గా రూపొందించిన కొన్ని పెద్ద-స్థాయి సాఫ్ట్‌వేర్ ప్రాజెక్ట్‌లలో ఒకటిగా పిలుస్తాడు మరియు దాని సంక్లిష్టత స్థాయి సంక్లిష్టత స్థాయి (సంక్లిష్టత వర్సెస్ సంక్లిష్టత)తో సమతుల్యంగా ఉంటుంది. 20 కంటే తక్కువ లైన్‌ల కోడ్‌తో, ప్రాజెక్ట్ బిలియన్ల నోడ్‌లకు మద్దతు ఇవ్వగల సజీవ, డైనమిక్ సిస్టమ్‌గా పనిచేస్తుంది మరియు సెప్టెంబర్ 1969లో ప్రారంభమైనప్పటి నుండి ఆఫ్‌లైన్‌లోకి వెళ్లలేదు. మేము ఇంటర్నెట్‌ని వ్యక్తులు సృష్టించిన సాధారణ సాఫ్ట్‌వేర్ ప్రాజెక్ట్‌గా పరిగణించడం మానేశాము:

ఇంటర్నెట్ చాలా బాగా అభివృద్ధి చెందింది, చాలా మంది ప్రజలు దీనిని మానవ శ్రమ ఉత్పత్తిగా కాకుండా పసిఫిక్ మహాసముద్రం వంటి సహజ వనరుగా భావిస్తారు. అటువంటి స్థిరమైన, స్పష్టమైన, దోష రహిత సాంకేతికతను మేము చివరిసారిగా ఎప్పుడు చూశాము? పోల్చి చూస్తే, వెబ్ అర్ధంలేనిది. వెబ్ ఔత్సాహికులచే సృష్టించబడింది.

ఆబ్జెక్ట్-ఓరియెంటెడ్ ప్రోగ్రామింగ్ గురించి

నాకు ఆసక్తి కలిగించిన మొదటి విషయం అతనిది అసలు OOP దృష్టి. మైక్రోబయాలజీలో అతని అనుభవం ముఖ్యమైన పాత్ర పోషించింది:

మెసేజ్‌ల ద్వారా మాత్రమే కమ్యూనికేట్ చేయగల నెట్‌వర్క్‌లోని బయోలాజికల్ సెల్‌లు మరియు/లేదా వ్యక్తిగత కంప్యూటర్‌ల వంటి వస్తువులను నేను భావించాను.

మరియు గణితంలో అనుభవం:

గణితంలో నా అనుభవం ప్రతి వస్తువుకు అనేక బీజగణితాలు ఉండవచ్చని, వాటిని కుటుంబాలుగా కలపవచ్చని మరియు ఇది చాలా ఉపయోగకరంగా ఉంటుందని నేను గ్రహించాను.

LISPa యొక్క లేట్ బైండింగ్ మరియు శక్తివంతమైన మెటా-ఫీచర్‌ల కోసం ఆలోచనలు:

రెండవ దశ LISPaని అర్థం చేసుకోవడం మరియు సులభంగా, చిన్నదైన, మరింత శక్తివంతమైన నిర్మాణాలను రూపొందించడానికి మరియు తరువాత బైండింగ్ చేయడానికి ఆ అవగాహనను ఉపయోగించడం.

మరియు త్వరలో అలాన్ డైనమిక్ భాషలు అనే ఆలోచనకు మద్దతు ఇవ్వడం ప్రారంభించాడు సాఫ్ట్‌వేర్ అభివృద్ధి యొక్క భవిష్యత్తు (pdf). ముఖ్యంగా, సులభంగా మార్పు అతనికి ముఖ్యం:

లేట్ బైండింగ్ అనేది డెవలప్‌మెంట్ ప్రాసెస్‌లో తర్వాత వచ్చిన ఆలోచనలను తక్కువ ప్రయత్నంతో ప్రాజెక్ట్‌లో పొందుపరచడానికి అనుమతిస్తుంది (అంతకుముందు బౌండ్ సిస్టమ్‌లైన సి, సి++, జావా మొదలైన వాటితో పోలిస్తే)

మరియు ఫ్లైలో మార్పులు మరియు వేగవంతమైన పునరావృతాల సంభావ్యత:

కీలకమైన ఆలోచనలలో ఒకటి ఏమిటంటే, సిస్టమ్ టెస్టింగ్ సమయంలో పని చేస్తూనే ఉండాలి, ముఖ్యంగా మార్పులు చేస్తున్నప్పుడు. పెద్ద మార్పులు కూడా క్రమంగా ఉండాలి మరియు స్ప్లిట్ సెకను కంటే ఎక్కువ సమయం తీసుకోకూడదు.

ఏది లేదు స్థిరంగా టైప్ చేసిన భాషలు:

చాలా మంది వ్యక్తులు చేసే విధంగా మీరు ప్రారంభ బైండింగ్ భాషలను ఉపయోగిస్తే, మీరు ఇప్పటికే వ్రాసిన దానిలోకి మీరే లాక్ అవుతారు. ఇకపై దానిని సులభంగా సంస్కరించడం సాధ్యం కాదు.

ఆశ్చర్యకరంగా, OOP గురించి అతని ఆలోచనలు దీనికే పరిమితం చేయబడ్డాయి:

నాకు OOP అంటే మెసేజ్‌లు, లోకల్ హోల్డ్ మరియు ప్రొటెక్షన్, స్టేట్ హిడింగ్ మరియు లేట్ బైండింగ్ ప్రతిదీ. ఇది స్మాల్‌టాక్‌లో మరియు LISPలో చేయవచ్చు.

మరియు వారసత్వం గురించి ఏమీ లేదు. ఇది OOP కాదు ఈరోజు మనకు తెలిసినది:

నేను చాలా కాలం క్రితం ఈ అంశం కోసం "ఆబ్జెక్ట్" అనే పదాన్ని ఉపయోగించాలని కోరుకుంటున్నాను, ఎందుకంటే ఇది చాలా మంది ఆలోచనలు తక్కువగా ఉన్న వాటిపై దృష్టి పెట్టేలా చేస్తుంది.

ఆధునిక స్థిరంగా టైప్ చేయబడిన OO భాషలలో లేని పెద్ద ఆలోచన:

పెద్ద ఆలోచన "సందేశాలు"

అతను ఒక వస్తువు యొక్క అంతర్భాగాలపై కాకుండా సందేశాలు, వదులుగా కలపడం మరియు మాడ్యూల్ పరస్పర చర్యలపై దృష్టి పెట్టాలని నమ్ముతాడు:

మంచి స్కేలబుల్ సిస్టమ్‌లను రూపొందించడంలో కీలకం మాడ్యూళ్ల మధ్య కమ్యూనికేషన్ మెకానిజమ్‌లను పని చేయడం మరియు వాటి అంతర్గత లక్షణాలు మరియు ప్రవర్తనను పని చేయకపోవడం.

స్థిరంగా టైప్ చేసిన భాషలు అతనికి అనిపిస్తాయి లోపభూయిష్ట:

నేను రకాలకు వ్యతిరేకం కాదు, కానీ నొప్పిని కలిగించని ఏ రకమైన వ్యవస్థ గురించి నాకు తెలియదు. కాబట్టి నాకు ఇప్పటికీ డైనమిక్ టైపింగ్ అంటే ఇష్టం.

నేడు కొన్ని ప్రముఖ భాషలు స్మాల్‌టాక్ సందేశాన్ని పంపే ఆలోచనలు, లేట్ బైండింగ్ మరియు అర్థం కాలేదుముందుకు ఆహ్వానం в ఆబ్జెక్టివ్- Cపద్ధతి_తప్పిపోయింది в రూబీ и సచ్మెథడ్ లేదు Google లో డార్ట్.

అన్నింటినీ నాశనం చేయండి మరియు మెరుగైనదాన్ని సృష్టించండి

అలాన్‌కి కంప్యూటర్ సైన్స్ అభివృద్ధి గురించి ఆసక్తికరమైన సిద్ధాంతం ఉంది:

కంప్యూటర్ సైన్స్ అంటే ఒకటే రకం అని, సైన్స్ అంటే వంతెనలు కట్టడం లాంటిదని నాకు అనిపిస్తోంది. ఎవరో వంతెనలను నిర్మిస్తారు, మరియు ఎవరైనా వాటిని నాశనం చేస్తారు మరియు కొత్త సిద్ధాంతాలను సృష్టిస్తారు. మరియు మేము వంతెనలను నిర్మించడం కొనసాగించాలి.

LISP గురించి

అలాన్ కే లిస్ప్‌ను విశ్వసించాడు

అన్ని కాలాలలోనూ అత్యుత్తమ ప్రోగ్రామింగ్ భాష

మరియు ప్రతి కంప్యూటర్ సైన్స్ గ్రాడ్యుయేట్ దానిని అధ్యయనం చేయాలి:

CSలో డిగ్రీలు అభ్యసిస్తున్న చాలా మంది వ్యక్తులు Lisp యొక్క ప్రాముఖ్యతను అర్థం చేసుకోలేరు. కంప్యూటర్ సైన్స్‌లో లిస్ప్ చాలా ముఖ్యమైన ఆలోచన.

సరైన వాతావరణం మరియు సందర్భం గురించి

అతను తరచుగా ప్రత్యేకమైన వాతావరణాన్ని గుర్తుచేసుకుంటాడు జిరాక్స్ PARC и హార్ప్, ఇక్కడ "లక్ష్యాల కంటే దృష్టి ముఖ్యం" మరియు "ప్రజలకు నిధులు ఇవ్వడం, ప్రాజెక్ట్‌లకు కాదు."

పాయింట్ ఆఫ్ వ్యూ విలువ 80 IQ పాయింట్లు.

అలాన్ కే చెప్పారు:

ARPA/PARC కథ దృష్టి, నిరాడంబరమైన నిధులు, సరైన సందర్భం మరియు ప్రక్రియల కలయిక నాగరికతను ప్రభావితం చేయడమే కాకుండా సమాజానికి అపారమైన విలువను సృష్టించే కొత్త సాంకేతికతలను అద్భుతంగా ఎలా పుట్టించగలదో చూపిస్తుంది.

మరియు ఇది నిజం. PARC యొక్క ఆకట్టుకునే ఆవిష్కరణల జాబితాను పరిశీలించండి, వీటిలో చాలా మన ప్రపంచం అభివృద్ధిలో చాలా ముఖ్యమైన పాత్ర పోషించాయి. ఉదాహరణకి:

  • లేజర్ ప్రింటర్లు
  • ఆబ్జెక్ట్-ఓరియెంటెడ్ ప్రోగ్రామింగ్ / స్మాల్‌టాక్
  • వ్యక్తిగత కంప్యూటర్లు
  • ఈథర్నెట్ / పంపిణీ చేయబడిన కంప్యూటింగ్
  • GUI / కంప్యూటర్ మౌస్ / WYSIWYG

మరియు లో హార్ప్ సృష్టించబడింది ARPANET, ఇది ఇంటర్నెట్ యొక్క మూలకర్తగా మారింది.

PS హ్యాకర్ న్యూస్ సంఘం నుండి వచ్చిన ప్రశ్నలకు అలాన్ కే సమాధానమిచ్చారు.

మూలం: www.habr.com

ఒక వ్యాఖ్యను జోడించండి