Кіріспе

VisualWorks (бұрын ObjectWorks, кейін Cincom Smalltalk) – Smalltalk тілінің кросс-платформалық іске асырылуы. Ол жүйелік кескіндерге негізделген даму жүйесі ретінде іске асырылады, олар – әрқайсысы жүйелік кескінде сақталатын бағдарламалық нысандардың динамикалық жиынтығы. VisualWorks тарихы Xerox PARC-тағы алғашқы Smalltalk 80 іске асырылымына дейін жетеді. 1980-жылдардың соңында Smalltalk 80-ді дамытушылардың бір тобы ParcPlace Systems компаниясын құрып, Smalltalk 80-ді коммерциялық өнім ретінде одан әрі дамытуға кірісті. Бұл коммерциялық өнім бастапқыда ObjectWorks деп аталды, сосын VisualWorks. 1999 жылдың 31 тамызында VisualWorks өнімі Cincom Systems компаниясына сатылды. VisualWorks көптеген операциялық жүйелерде жұмыс істейді, оның ішінде Windows, macOS, Linux және бірнеше Unix нұсқалары. VisualWorks платформааралық даму жобаларын қолдайды, себебі ол кіріктірілген көпплатформалық мүмкіндіктерге ие. Мысалы, графикалық пайдаланушы интерфейсі (GUI) қолданбасын бір рет ғана дамыту жеткілікті, одан кейін оны әртүрлі виджет стильдеріне ауыстыруға болады. VisualWorks қолданбасын қолдау көрсетілетін барлық платформаларда өзгерістерсіз іске қосуға болады. Платформаға тәуелділік тек виртуалды машинада ғана болады.

Пайдасы мен кемшіліктері

VisualWorks өте жылдам қолданбаларды жасауға мүмкіндік береді, себебі жеке әдістерді тіпті әзірленетін бағдарлама жұмыс істеп тұрғанда құрастыруға болады. Smalltalk әдісін құрастыру әдетте бір секундтан кем уақыт алады, ал C++ жобасы үшін осы операцияны орындау көбінесе бір минут немесе одан да көп уақытты қажет етеді және процесті қайта іске қоспаса, оңай орындалмайды. VisualWorks-тің әртүрлі код шолғыштары әзірлеушіге қажетті сыныпты немесе әдісті жылдам табуға көмектеседі. Smalltalk бағдарламаларының өнімділігі мен өткізу қабілеті, уақтылы компиляторды қолданып, жиі қолданылатын типтерге арналған машиналық кодты жасау арқылы C++, Fortran, Pascal немесе Ada сияқты статикалық тілдердің өнімділігіне жақындауы мүмкін, бірақ сандық өңдеу және жадтың нақты орналасуынан үлкен пайда көретін бағдарламалар бәрібір баяу жұмыс істеуі мүмкін. Ұрпақтық қоқыс жинағыш көптеген жинау тоқтауларын азайтады, бірақ нақты уақыт және детерминистік талаптарға сәйкес келмеуі мүмкін, себебі толық жинаулар жүзеге асырылуы мүмкін, бұл әлемді ондағаннан жүздерше миллисекундқа дейін тоқтатуы мүмкін, үйіндінің көлеміне пропорционалды. Дегенмен, объектіге бағытталған тілде қоқыс жинау қолмен жадты басқарудан артық тиімді, және бағдарламашы қоқыс жинаудың қашан және қанша уақытқа созылатынын бақылау үшін түрлі шаралар қолдана алады; сондықтан көп жағдайда қоқыс жинау мазаламайды.

Орнату

VisualWorks жүйесінің барлық компоненттері Windows 7 немесе одан кейінгі нұсқалардағы Program Files\Cincom каталогына, орнатылған жүйенің нөмірімен аталған қалтаға орнатылады – мысалы, vw7.5nc. Бұл каталогта bin, doc, examples және тағы да басқа көптеген кіші каталогтар бар.

Тышқанның батырмалары мен мәзірлері

VisualWorks логикалық атаулары <Select>, <Operate> және <Window> болатын үш түймелі тышқанды қолданады. Дегенмен, Ctrl, Option немесе Command пернелерімен бірге бір немесе екі түймелі тышқанды да пайдалануға болады. <Select> кез келген интерфейс нысанын таңдайды. <Operate> ағымдағы көрініс немесе таңдау үшін операциялар тізімін ашады. <Window> VisualWorks терезелерімен әрекеттерді (қозғау, жабу) іске қосады.

Файл-ин форматы

File in format – кластарды мәтіндік файл түрінде көрсетуге арналған бастапқы Smalltalk пішімі. Бұл файлдарды VisualWorks IDE-ге "қосып", Smalltalk кескінінде жоқ кластарды жасауға болады. Әрбір файл .st қосымшасы бар мәтіндік файлда Smalltalk класын немесе кластарды қарапайым мәтіндік түрінде ұсынады. VisualWorks-та қолдау көрсетіледі, бірақ Parcels механизмімен ығыстырылды. Мысалдар файл пішіміндегі мысалдар "үлгілер" кіші каталогында сақталған.

Жүктеу менеджері

Парцел менеджері барлық парцелдерді парцел жолына жүктеу және түсіру үшін қолданылады. Ұсыныстар көрінісі негізгі қосымша парцелдері бар санаттарды тізімдейді. Санатты таңдау арқылы ұсынылған парцелдердің тізімін аласыз. Мысалы, UI Painter негізгі элементтер санатында орналасқан. Ұсыныстар көрінісінен тыс парцелдерді табу үшін парцел жолының директориялық ағаш көрінісі де бар. Жүктелген көріністе кескіндегі барлық парцелдердің тізімі көрсетіледі. Тек жүктелген парцелдерді ғана қарап шығуға болады. Қолдау көрсетілетін VisualWorks өнімінің парцелі парцелге ұқсас белгішемен бейнеленеді. Басқа жеткізушілердің парцелдері сауда қапшығына ұқсайды. Smalltalk кластарының даму тарихының күрделілігіне байланысты бұл өте пайдалы болуы мүмкін. Мысалы, парцел белгішесі Arbor гипермәтін жүйесі енді VisualWorks қолдауында екенін көрсетеді. Қолданбадан бағдарламалық түрде парцелдерді жүктеу және түсіруге де болады.

Пакеттер

Жүк жіберілген кезде ол пакет немесе пакеттер жиынтығы ретінде жинақталады. Жүктелген кодты іздегенде, жүйелік шолғышта сол аттас жиынтықты немесе пакетті табуға болады. Пакеттер – компоненттерге сәйкес сабақтарды байланысты топтарға жіктеуге арналған категориялар. Пакеттер жиынтықтарға біріктірілуі мүмкін. Пакеттер мен жиынтықтар пакет ретінде сақталуы (жариялануы) немесе бастапқы код қоймасына сақталуы мүмкін.

Код кітапханаларын жүктеу

Бастапқы кескін. im кескіні негізгі сынып кітапханаларын пайдалана отырып, минималды даму құралдарын қамтиды. Қосымша сынып кітапханаларын VisualWorks немесе үшінші тарап өндірушілер, әдетте, пакет файлдары түрінде ұсынады. Көптеген Smalltalk емес даму орталарында код кітапханалары компиляция уақытында include командасы арқылы импортталады. Smalltalk-та код кітапханалары жұмыс істеп тұрған жүйеге жүктеліп, ортаның бір бөлігіне айналады. Мысалы, UI Painter пакет ретінде жүктеледі.

VisualWorks бастауышы

VisualWorks Launcher, көбінесе Launcher деп аталады, VisualWorks жүйесінің басқару орталығы. Ол негізгі құралдардың барлығын іске қосу платформасы болып табылады.

Кішкене әңгіме негіздері

Smalltalk – таза объектіге бағытталған бағдарламалау тілі, яғни Smalltalk-та қандай да бір оқиғаны орындаудың жалғыз жолы – объекттерге хабар жіберу арқылы. VisualWorks стандартты Smalltalk 80 тілін пайдаланады, бірақ өзіндік кластары мен әдістерімен бірге келеді. Тіпті Object сияқты қарапайым кластар да басқа Smalltalk 80 IDE-леріндегі, мысалы Squeak және Dolphin Smalltalk-тағылардан өзгеше болады. Осы мысалдар VisualWorks Smalltalk-та жұмыс істейді, бірақ басқа Smalltalk орталарында жұмыс істемеуі мүмкін, себебі кластар және/немесе әдістері әртүрлі болуы мүмкін.

Smalltalk кодын қарау және өңдеу

Дәстүрлі объектіге бағытталған бағдарламалау орталарында әзірлеуші сыныптар мен әдістердің анықтамаларын қамтитын қарапайым мәтіндік бастапқы код файлын тікелей өңдейді. VisualWorks-та, барлық Smalltalk-тар сияқты, кластарды қоса, барлық нәрсе орындалатын объекті болып табылады. Smalltalk кластарын қарау кезінде әзірлеуші орындалатын объектілерден анықтамаларды алады. VisualWorks-тағы негізгі шолғыш/редактор – Жүйелік шолғыш. Ол әзірлеушіге сыныптарды жалпы сынып иерархиясында немесе олардың пакеттері арқылы қарауға мүмкіндік береді. Ол VisualWorks Launcher арқылы іске қосылады. Жүйелік шолғыштағы тізім панельдері әзірлеушілерге сыныптар мен әдістердің анықтамаларына өтуге мүмкіндік береді. Оларды код көрінісінде қарауға, өңдеуге немесе жаңа анықтамалармен өзгертуге болады.

Декларацияланбаған айнымалылар

Айнымалыға сілтемелер әлі де болса сақталған күйде жойылғанда немесе тіркеме арқылы жүктелген, бірақ жарияланбаған жағдайда, оның атауы "Жарияланбаған атаулар" кеңістігіне өтеді. Жарияланбаған айнымалылар кейбір бағдарламалық қателерге себеп болуы мүмкін.

Оқулық

Cincom Smalltalk үшін оқулықтар жиі дайындалады, сондай-ақ Seaside оқулығы да бар.