From Wikipedia, the free encyclopedia
Smalltalk — гэта чыста аб’ектна-арыентаваная мова праграмавання, створаная ў 1970-х гадах для адукацыйнага выкарыстання ў Xerox PARC навукоўцамі Learning Research Group, у тым ліку Аланам Кэем, Дэнам Інгалсам, Адэль Голдберг, Тэдам Кэлерам, Дыянай Мэры і Скотам Уоллесам.
Smalltalk | |
---|---|
Семантыка | аб’ектна-арыентаваная |
З’явілася ў | 1972 (распрацоўка пачалася ў 1969) |
Аўтар(ы) | Алан Кэй, Дэн Інгалс, Адэль Голдберг |
Пашырэнне файлаў | st |
Тыпізацыя даных | аб’ектная, у некаторых рэалізацыях моцная дынамічная |
Асноўныя рэалізацыі | Amber Smalltalk, Dolphin Smalltalk, GemStone/S, GNU Smalltalk, Pharo, Smalltalk/X, Squeak, Cuis, Haver, VA Smalltalk, VisualWorks |
Зведала ўплыў | Lisp, Simula, Euler, IMP, Logo, Sketchpad |
Паўплывала на | Dart, Erlang, Go, Java, Objective-C, PHP 5, Python, Ruby, Scala, Scratch, Swift |
У Smalltalk праграмы складаюцца з атамарных аб’ектаў, гэтыя аб’екты ўзаемадзейнічаюць шляхам перадачы паведамленняў праз асяроддзе віртуальнай машыны.
Smalltalk значна паўплывала на развіццё індустрыі распрацоўкі праграмнага забеспячэння. Упершыню публічна апублікаваная Smalltalk-80 прадставіла інавацыйныя і асноватворныя ідэі для аб’ектна-арыентаванага праграмавання.
Мовы, заснаваныя на Smalltalk, да гэтага часу знаходзяцца ў актыўнай распрацоўцы і маюць лаяльныя супольнасці карыстальнікаў. Стандартызаваная версія ANSI Smalltalk была ратыфікаваная ў 1998 годзе.
Smalltalk заняў другое месца ў намінацыі «самая любімая мова праграмавання» ў апытанні распрацоўшчыкаў Stack Overflow у 2017 годзе.[1]
Існуе вялікая колькасць версій Smalltalk.[2] Звычайна пад Smalltalk разумеюць мову Smalltalk-80 разам з сумяшчальнай віртуальнай машынай, створаныя ў 1980 годзе. Першым апаратным асяроддзем, на якім выкарыстоўваліся віртуальныя машыны Smalltalk, былі камп’ютары Xerox Alto.
Два папулярныя ў цяперашні час варыянты рэалізацыі Smalltalk з’яўляюцца нашчадкамі арыгінальнай версіі Smalltalk-80. Squeak — гэта рэалізацыя з адкрытым зыходным кодам, створаная на аснове Smalltalk-80 версіі 1 праз Apple Smalltalk. VisualWorks паходзіць ад Smalltalk-80 версіі 2 праз VisualWorkSmalltalk-80 2.5 і ObjectWorks (абодва прадукта ParcPlace Systems, кампаніі Xerox PARC, створанай для вываду Smalltalk на рынак).
З канца 1980-х да сярэдзіны 1990-х гадоў асяроддзі Smalltalk прадаваліся дзвюма канкурэнтнымі арганізацыямі: ParcPlace Systems і Digitalk. ParcPlace Systems засяроджвалася на рынку мікрасістэм Unix/Sun, у той час як Digitalk сканцэнтравалася на ПК на базе Intel з Microsoft Windows або IBM OS/2.
У 1995 годзе ParcPlace і Digitalk аб’ядналіся ў ParcPlace-Digitalk, у 1997 годзе былі перайменаваныя ў ObjectShare. Кампанія ObjectShare існавала да 1999 года: аб’яднаная фірма так і не змагла знайсці эфектыўнага адказу на Java з пункту гледжання пазіцыянавання на рынку, і да 1997 года яе ўладальнікі імкнуліся прадаць бізнес. У 1999 годзе Seagull Software набыла лабараторыю распрацоўкі Java ObjectShare і да гэтага часу валодае VisualSmalltalk, пры гэтым правы на распаўсюджванне прадукту Smalltalk па ўсім свеце першапачаткова засталіся за ObjectShare, які затым прадаў іх Cincom.[3] VisualWorks быў прададзены Cincom і цяпер з’яўляецца часткай Cincom Smalltalk. Cincom працягвае патрымку Smalltalk, выпускаючы некалькі новых версій VisualWorks і ObjectStudio кожны год з 1999 года.
Smalltalk з’яўляецца адной з самых уплывовых моў праграмавання. Практычна ўсе аб’ектна-арыентаваныя мовы, якія з’явіліся пасля — Objective-C, Java, Python, Ruby[4] і многія іншыя — былі пад уплывам Smalltalk. Smalltalk таксама была адной з самых папулярных моў для гнуткай распрацоўкі праграмнага забеспячэння, хуткай распрацоўкі праграм (RAD) або стварэння прататыпаў.[5]
У асяроддзі Smalltalk часта распрацоўваліся першыя шаблоны праектавання для аб’ектна-арыентаванага праграмнага забеспячэння. Адным з самых вядомых з’яўляецца шаблон MVC для дызайну карыстальніцкага інтэрфейсу.
У дадатак да шаблону MVC, мова і асяроддзе Smalltalk аказалі вялікі ўплыў на гісторыю графічнага інтэрфейса карыстальніка (GUI) і інтэрфейсу карыстальніка WYSIWYG.
Прыклад напісання праграмы Hello world:
Transcript show: 'Hello, world!'.
Шмат сучасных рэалізацый Smalltalk заснаваныя на віртуальнай машыне OpenSmalltalk VM. Яе зыходны код даступны на GitHub і распаўсюджваецца па ліцэнзіі MIT. Вядомыя рэалізацыі Smalltalk на базе OpenSmalltalk VM:
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.