Alan Kay, wopanga OOP, za chitukuko, Lisp ndi OOP

Alan Kay, wopanga OOP, za chitukuko, Lisp ndi OOP

Ngati simunamvepo za Alan Kay, mwamvapo mawu ake otchuka. Mwachitsanzo, mawu awa ochokera ku 1971:

Njira yabwino yodziwira zam'tsogolo ndiyo kupeka.
Njira yabwino yodziwira zam'tsogolo ndiyo kupeka.

Alan ali ndi ntchito yosangalatsa kwambiri mu sayansi yamakompyuta. Iye analandira Mphotho ya Kyoto ΠΈ Turing Award chifukwa cha ntchito yake pa paradigm yokhazikika ya pulogalamu. Iye anali m'modzi mwa ochita nawo gawo la makompyuta aumwini ndi ma graphical interfaces, adapanga Nkhani zazing'ono ndi chimodzi mwa zilankhulo zodziwika bwino zamapulogalamu nthawi zonse.

Mu wathu Hexlete, makamaka mu kulumikiza, funso lakuti "OOP ndi chiyani" ndi "Kodi Alan Kay ankatanthauza chiyani" limadzutsidwa nthawi zonse. Cholembachi chili ndi mawu osangalatsa ochokera kwa Alan okhudza chitukuko chamakono, OOP ndi chilankhulo cha Lisp.

Za chitukuko cha mapulogalamu

Alan Kay akukhulupirira kuti kusintha kwa makompyuta kukubwera (Kusintha Kweniyeni Kwa Pakompyuta Sikunachitikebe), ndipo chitukuko cha mapulogalamu chimakula mosiyana ndi Lamulo la Moore: hardware imayenda bwino chaka chilichonse, koma mapulogalamu amatuluka mopanda chifukwa:

vuto ndi ofooka, maganizo scalable bwino ndi zida, ulesi, kusowa chidziwitso, etc.

Akufotokoza bwino nkhaniyi nthabwala zazifupi:

Zomwe Andy apereka, Bill amachotsa
Andy anapereka, Bill anatenga

Andy Grove, CEO wa Intel, ndi Bill Gates, ndiye CEO wa Microsoft.

Kupititsa patsogolo chitukuko chamakono chinali cholinga cha polojekitiyi ZOCHITIKA Pakubwezeretsanso Mapulogalamu (pdf). Cholinga ndikukwaniritsa "Lamulo la Moore" momveka bwino mwa "kuchepetsa kuchuluka kwa ma code 100, 1000, 10000 nthawi kapena kupitilira apo."

Mu lipoti lake lotsegula maso Kupanga ndi Kukulitsa (kanema) Mutuwu ukufotokozedwa mwatsatanetsatane. Malinga ndi Alan, uinjiniya wamapulogalamu wayimilira ndipo ukuyamba kukhala sayansi yoiwalika yomwe siyingagwirizane ndi ma Hardware ndi ma sayansi ena ndi uinjiniya. Ntchito zazikulu zakhala zotayirapo ndipo zafika pomwe palibe osatha kumvetsetsa mizere 100 miliyoni ya MS Vista kapena MS Word code. Koma zoona zake, payenera kukhala dongosolo la ma code ochepa muzochita zoterezi.

Alan amaganizira za intaneti, ma protocol a TCP/IP, omasulira a LISP, Nile (Math DSL for Vector Graphics) ndi OMeta (OO PEG) (PDF) zitsanzo za mapulogalamu okongola omwe ali ndi code yochepa.

Amatcha intaneti (TCP / IP) imodzi mwa mapulogalamu ochepa a mapulogalamu akuluakulu omwe anapangidwa molondola, ndipo mlingo wake wa zovuta zimakhala zogwirizana ndi zovuta (zovuta vs. zovuta). Pokhala ndi mizere yochepera 20 yamakhodi, polojekitiyi imagwira ntchito ngati yamoyo, yamphamvu yomwe imatha kuthandizira mabiliyoni a ma node, ndipo sinakhalepo pa intaneti kuyambira pomwe idakhazikitsidwa mu Seputembara 1969. Tinangosiya kuganizira kuti intaneti ndi pulogalamu yanthawi zonse yopangidwa ndi anthu:

Intaneti yapangidwa bwino kwambiri moti anthu ambiri amaiona ngati zinthu zachilengedwe, monga nyanja ya Pacific, osati chifukwa cha ntchito ya anthu. Kodi ndi liti pamene tinawona luso lokhazikika chotere, lomveka bwino, lopanda zolakwika? Poyerekeza, Webusaiti ndi zopanda pake. Webusayiti idapangidwa ndi anthu okonda masewera.

Za mapulogalamu okhudzana ndi zinthu

Chinthu choyamba chimene chinandisangalatsa chinali chake choyambirira OOP masomphenya. Zomwe adakumana nazo mu microbiology zidathandiza kwambiri:

Ndinkaganiza za zinthu ngati ma cell achilengedwe, ndi/kapena makompyuta pamaneti omwe amatha kulumikizana kudzera pa mauthenga.

ndi luso la masamu:

Zomwe ndinakumana nazo pa masamu zinandipangitsa kuzindikira kuti chinthu chilichonse chingakhale ndi ma algebra angapo, akhoza kuphatikizidwa m'mabanja, ndipo izi zingakhale zothandiza kwambiri.

Malingaliro omangika mochedwa komanso mawonekedwe amphamvu a LISPa:

Gawo lachiwiri ndikumvetsetsa LISPa ndikugwiritsa ntchito kumvetsetsa kumeneku kupanga zosavuta, zazing'ono, zamphamvu kwambiri ndikumanga pambuyo pake.

Ndipo posakhalitsa Alan anayamba kuthandizira lingaliro lakuti zilankhulo zamphamvu ndizo tsogolo la chitukuko cha mapulogalamu (pdf). Makamaka, kusintha kosavuta ndikofunikira kwa iye:

Kumanga mochedwa kumalola malingaliro omwe adabwera pambuyo pake pachitukuko kuti aphatikizidwe mu polojekitiyo mosachita khama (poyerekeza ndi machitidwe am'mbuyomu monga C, C++, Java, etc.)

Ndipo kuthekera kwa kusintha pa ntchentche ndi kubwereza mwachangu:

Limodzi mwa malingaliro ofunikira ndikuti dongosololi liyenera kupitiriza kugwira ntchito panthawi yoyesedwa, makamaka pamene kusintha kukuchitika. Ngakhale kusintha kwakukulu kuyenera kukhala kwapang'onopang'ono ndipo kusatenga mphindi imodzi yokha.

chomwe chikusowekamo zilankhulo zolembedwa mokhazikika:

Ngati mumagwiritsa ntchito zilankhulo zoyambirira, monga momwe anthu ambiri amachitira, ndiye kuti mumadzitsekera pazomwe mudalemba kale. Sizidzakhala zothekanso kukonzanso mosavuta.

Chodabwitsa n'chakuti, maganizo ake okhudza OOP anali ochepa pa izi:

OOP kwa ine ndi mauthenga, gwirani ndikuteteza kwanuko, kubisala kwa boma ndikumanga chilichonse mochedwa. Izi zitha kuchitika mu Smalltalk komanso mu LISP.

Ndipo palibe chokhudza cholowa. Iyi si OOP zomwe tikudziwa lero:

Ndikanakonda nditagwiritsa ntchito mawu oti "chinthu" pamutuwu kalekale chifukwa zimapangitsa kuti anthu ambiri azingoganizira zazing'ono.

Lingaliro lalikulu lomwe zilankhulo zamakono za OO zilibe:

Lingaliro lalikulu ndi "mauthenga"

Amakhulupirira kuti amayang'ana kwambiri mauthenga, kulumikizana kotayirira, ndi kuyanjana kwa ma module m'malo moyang'ana zamkati mwa chinthu:

Chinsinsi chopanga machitidwe abwino owopsa ndikukonza njira zoyankhulirana pakati pa ma module, komanso kusagwira ntchito zamkati ndi machitidwe awo.

Zilankhulo zojambulidwa mokhazikika zimawoneka kwa iye chosalongosoka:

Sindikutsutsana ndi mitundu, koma sindikudziwa zamtundu uliwonse zomwe sizimayambitsa kupweteka. Chifukwa chake ndimakondabe kulemba kwamphamvu.

Zilankhulo zina zodziwika masiku ano zimagwiritsa ntchito malingaliro opitilira uthenga wa Smalltalk, kumanga mochedwa, ndi doNotUnderstandforwardInvocation Π² Cholinga-Cnjira_yosowa Π² Ruby ΠΈ noSuchMethod mu Google amathamangira.

Kuwononga chilichonse ndikupanga china chabwinoko

Alan ali ndi chiphunzitso chosangalatsa chokhudza chitukuko cha sayansi yamakompyuta:

Zikuwoneka kwa ine kuti pali mtundu umodzi wokha wa sayansi yamakompyuta, ndikuti sayansi ili ngati kumanga milatho. Wina amamanga milatho, ndipo wina amawawononga ndikupanga malingaliro atsopano. Ndipo tiyenera kupitiriza kumanga milatho.

Za LISP

Alan Kay amakhulupirira Lisp

chilankhulo chabwino kwambiri chanthawi zonse

Ndipo kuti aliyense womaliza maphunziro a sayansi yamakompyuta aziphunzira:

Anthu ambiri omwe amatsata madigiri mu CS samamvetsetsa kufunikira kwa Lisp. Lisp ndiye lingaliro lofunikira kwambiri mu sayansi yamakompyuta.

Za mlengalenga ndi nkhani yoyenera

Nthawi zambiri amakumbukira mlengalenga wapadera Xerox PARK ΠΈ Zeze, kumene β€œmasomphenya ali ofunika kwambiri kuposa zolinga” ndi β€œkupereka ndalama kwa anthu, osati ntchito.”

Mawonedwe ndi ofunika 80 IQ points.

Alan Kay akuti:

Nkhani ya ARPA/PARC ikuwonetsa momwe kuphatikizika kwa masomphenya, ndalama zochepa, nthawi yoyenera ndi njira zomwe zingabweretsere umisiri watsopano womwe umakhudza chitukuko komanso kupanga phindu lalikulu kwa anthu.

Ndipo ndi zoona. Onani mndandanda wochititsa chidwi wa PARC wazopanga, zambiri zomwe zinathandiza kwambiri pa chitukuko cha dziko lathu lapansi. Mwachitsanzo:

  • Makina osindikizira a laser
  • Kukonzekera kwa Object-Oriented / Smalltalk
  • Makompyuta aumwini
  • Ethernet / kugawa makompyuta
  • GUI / kompyuta mbewa / WYSIWYG

Ndipo mkati Zeze analengedwa ARPANET, yomwe idakhala kholo la intaneti.

PS Alan Kay amayankha mafunso ochokera ku gulu la Hacker News.

Source: www.habr.com

Kuwonjezera ndemanga