Биографии Характеристики Анализ

Цикълът на обучение на Дейвид Колб: Въведение. Те се появяват във формата

» Андрю Хънт и Дейвид Томас вероятно са познати на всички, занимаващи се с програмиране, и много - главно от споменавания в колекции и цитати в повече съвременни статии. Като се има предвид, че тази колекция практически съветиза разработчиците скоро ще отпразнува своята двадесета годишнина, фактът, че все още се цитира като източник на ценна информация, е уважаван. Тайната е проста: авторите, въпреки че подчертаха практическата приложимост на своите съвети, говориха в по-голямата си част за основните принципи на изграждане на работен процес. Много от техническите моменти, споменати в текста, наистина са остарели, но основните подходи за разработка, тестване, взаимодействие в екипа и с публиката остават актуални.

По-долу ще намерите резюме на първите четири глави; те са за концепцията на автора за самообучение, основите на прагматичния подход към програмирането и правилата за избор на инструменти. Книгата е много удобна за "точково" четене: материалът е представен под формата на отделни параграфи-подсказки, снабдени с препратки. Извън това резюме има примери от конкретни езици, анализ на случаи от практиката на автора, самите тези връзки, упражнения за затвърждаване и някои забавни аналогии, които оживяват текста - така че препоръчвам да прочетете оригинала, ако някои от тезите ви интересуват . Наслади се на четенето!

Съвет 1: Грижете се за занаята си

Няма смисъл да разработвате софтуер, ако не ви е грижа за качеството на работата. Това трябва да става не само в краткосрочен план, по отношение на конкретни проекти, но и в дългосрочен план – чрез формиране на правилен подход и принципи на работа.

Какво отличава прагматичния програмист?

  • Предварително възприемане и бърза адаптация. Прагматиците имат инстинкт за полезни технологии и методи, които с удоволствие тестват на практика. Те са в състояние бързо да схващат нова информация и да я комбинират със съществуващите знания.
  • Любопитство. Прагматиците задават въпроси, събират дребни факти, интересуват се от опита на другите.
  • Критичен размисъл. Прагматиците не приемат нищо за даденост, без първо да знаят фактите.
  • Реализъм. Прагматиците се опитват да открият къде са капаните във всеки проблем, пред който са изправени.
  • Универсалност. Прагматиците се стремят да се запознаят с повече технологии и операционни системи и работят, за да са в крак с времето.
Съвет 2: Мислете за работа

Когато пишете код, трябва да се концентрирате напълно върху това, което правите. Никога не преминавайте в режим на автопилот. Мислете непрекъснато, критично отразявайки работата си в реално време. Това се нарича съзнателно програмиране. Усвояването ще отнеме известно време и усилия, но наградата ще бъде навикът постоянно да правите малки подобрения, подобрявайки качеството на кода като цяло и намалявайки времето за разработка.

Глава 1: Прагматична философия

Прагматичното програмиране произлиза от философията на прагматичното мислене. Тази глава съдържа нейните основни разпоредби.

Съвет 3: Представяйте решения, а не извинения

Един от крайъгълните камъни на прагматичната философия е идеята за поемане на отговорност за себе си и за своите действия. Прагматичният програмист приема, че неговата кариера и резултатите от работата му зависят преди всичко от него и не се страхува да признае своето невежество или грешка.

Поемането на отговорност за резултатите означава да бъдете отговорни. Ако направите грешка (а ние всички правим), признайте я честно и се опитайте да предложите начини да я поправите. Не прехвърляйте вината върху колеги, партньори, инструменти и не измисляйте оправдания – това е непродуктивна загуба на време. Същото важи и за ситуации, в които сте изправени пред изисквания, които не можете да изпълните: не казвайте просто „Не е възможно“, а обяснете какво е необходимо, за да спасите ситуацията (допълнителни ресурси, реорганизация и т.н.).


Съвет 4: Не оставяйте счупени прозорци

Ентропията е физичен термин за нивото на "разстройство" в една система. Ентропията във Вселената се стреми към максимум и същият модел се наблюдава в развитието. Увеличаването на степента на нередност в програмите на професионален жаргон се нарича софтуерна корупция. Има много фактори, които допринасят за повредата на софтуера, но най-важният от тях е културата на проекта.

Според теорията за счупените прозорци небрежните решения и проблемните области са склонни да се умножават. Не оставяйте "счупените прозорци" (лош дизайн, грешки, лош код) без надзор. Ако няма време за подходяща поправка, поне коментирайте грешния фрагмент или покажете съобщението „В процес на разработка“ или използвайте фалшиви данни. Необходимо е да предприемете поне най-малкото действие, за да предотвратите по-нататъшно унищожение и да покажете, че контролирате ситуацията. Небрежността ускорява развалянето по-бързо от всеки друг фактор.

Съвет 5: Бъдете катализатор за промяна

Ако видите какво трябва да се направи, не чакайте инициативата от другите. Направете план, уточнете детайлите - хората ще са по-склонни да ви подкрепят, ако видят, че работата вече е започнала.

Съвет 6: Следете за промени

Дръжте очите си върху голямата картина. Постоянно наблюдавайте какво се случва около вас, а не само това, което правите лично. Повечето бедствия в кода започват като малки неща, които се натрупват, докато един ден проектът не се провали. Стъпка по стъпка системата се отклонява от изискванията, кодът е обрасъл с „кръпки“, докато от оригинала не остане нищо. Често именно натрупаните дреболии водят до разрушаването на морала и колективите. Но ако заснемете този процес на ранни стадиии незабавно вземете мерки (вижте предишния параграф), можете да се измъкнете с малко кръв.

Съвет 7: Направете качеството изискване

Качеството трябва да бъде договорна клауза в договора, който сключвате с вашите потребители. Разбира се, в идеалния случай трябва да е максимумът, но често ще се окажете в ситуации, в които трябва да направите компромис поради кратки срокове или липса на ресурси. И тук е полезно да свикнете да създавате приемливи програми. „Приемливо“ не означава „готово“: вие просто давате на потребителите думата при определянето на прага на качеството, който може да се счита за приемлив. Изненадващо, мнозина ще предпочетат да използват програми с някои недостатъци днес, вместо да чакат една година за пускане на мултимедийна версия.

Освен това програмите понякога се подобряват чрез съкращаване на инкубационния период. В разработката има проблем с "възстановяването" - външни ограниченияпомогнете да спрете навреме в преследване на съвършенството.

Съвет 8: Инвестирайте редовно в портфолиото си от знания

Портфолиото от знания се отнася до всичко, което програмистът знае за развитието в своята област, както и опита, който е натрупал. Управлението на портфолио от знания е много подобно на управлението на финансов портфейл:

Общите принципи са:

  1. Инвестирайте редовно. Дори ако размерът на инвестицията е малък, този навик е полезен сам по себе си.
  2. Инвестирайте в различни области. как повече областиулавяш, толкова по-ценен си. Като минимум трябва да знаете специфичните технологии, с които работите в момента, отвътре и отвън. Но не спирайте до тук. Търсенето на технология и нейната приложимост непрекъснато се променят. Колкото повече инструменти имате в арсенала си, толкова по-лесно ще се адаптирате.
  3. Претеглете рисковете. Технологиите съществуват в определен диапазон – от рискови и потенциално високодоходни до нискорискови и нискодоходни. Инвестирането на всичко в рискови опции, чийто курс може внезапно да се срине, не е така най-добрата идея, но и прекомерна предпазливост, която не ви позволява да се възползвате от печеливши възможности - също. По-добре е да се придържате към средната линия.
  4. Купувайте евтино, продавайте скъпо. Овладяването на авангардна технология, преди да стане популярна, е трудна задача, но си заслужава: първите осиновители често продължават до вълнуващи кариери.
  5. Преглеждайте и балансирайте редовно. Програмирането е много динамична индустрия. Бъдете готови периодично да преглеждате критично вашите активи: изоставете остарелите опции, възстановете тези, които са се повишили в цената и запълнете празни ниши.
Процесът на обучение ще разшири вашето мислене, отваряйки нови възможности за вас и нови творчески пътища. Ако сте научили нещо ново, опитайте се да приложите това знание към проекта, върху който работите в момента, по най-добрия начин на вашата технология.

Съвет 9: Анализирайте критично това, което четете и чувате

Трябва да се уверите, че знанията във вашето портфолио са точни, че не са представени погрешно от онези, които се възползват от тях, и че стойността им не е раздута от реклама. Пазете се от фанатици, които настояват, че тяхната догма дава единствения правилен отговор - напълно възможно е във вашия проект тя да не важи.

Съвет 10: Важно е какво да кажете и как да кажете

По-голямата част от деня на програмиста преминава в комуникация – с екипа, ръководството, потребителите, бъдещите поколения разработчици чрез документация и коментари в кода. Следователно е необходимо да се овладее неговото изкуство. Колкото по-ефективна е тази комуникация, толкова по-голяма е способността ви да превръщате идеите в действия.

Принципи на ефективна комуникация:

  1. Знайте какво искате да кажете: Планирайте какво ще кажете предварително, очертайте план и няколко стратегии за това как най-добре да предадете посланието. Това работи както за изготвяне на документи, така и за важни преговори.
  2. Познайте своята аудитория: Вие общувате само ако предавате информация. За да направите това, трябва да сте наясно с нуждите, интересите и възможностите на аудиторията. Представете информацията по начин, който е разбираем и интересен за слушателя.
  3. Изберете точния момент: Важен моментда разбереш публиката – разбирайки нейните моментни приоритети. Това, което казвате, трябва да бъде не само уместно по съдържание, но и навременно. Ако е необходимо, попитайте директно: "Удобно ли е да говорим за ...?"
  4. Изберете правилния стил: Определете стила на представяне на материала в съответствие с изискванията на аудиторията: някой предпочита голи факти, някой предпочита подробности, примери и дълги въведения. Отново, ако се съмнявате, попитайте.
  5. Срещат се по дрехите: Знаете как правилно да "сервирате" идеите си. Всичко трябва да бъде проверено в крайния документ: правопис, оформление, стилове на текста, печатен дизайн.
  6. Ангажирайте аудиторията си: Ако е възможно, включете бъдещите читатели в процеса на създаване на документи. Използвайте техните идеи. По този начин ще получите най-добър резултат и ще заздравите работните отношения.
  7. Знайте как да слушате: Включете хората в разговор, като задавате въпроси или ги карате да обобщават казаното от вас. Превърнете срещата в диалог и ще предадете по-добре това, което искате да кажете, и може би в същото време ще научите нещо за себе си.
  8. Поддържайте разговора: Винаги отговаряйте на молби и съобщения поне с обещание да се върнете към темата по-късно. Ако държите хората в течение, те се чувстват сякаш не са забравени и е много по-лесно да простят случайните пропуски.

Глава 2: Прагматичен подход

Има редица съвети и трикове, които се прилагат за всички нива на разработка на софтуер - идеи, които могат да се считат за аксиоми, процеси, които са почти универсални. Тази глава предоставя преглед на тези идеи и процеси.

Съвет 11: Не се повтаряйте

Всяко знание трябва да има уникално, недвусмислено, надеждно представяне в системата. Алтернатива е един и същи предмет да се представи на няколко места. Това е неудобно: ако нещо се редактира на едно място, трябва незабавно да се направят промени във всички останали, в противен случай програмата ще се срине под тежестта на противоречията. Рано или късно ще забравиш нещо, въпрос на време е.

Повечето дублирания попадат в една от следните категории:

  • Наложено дублиране. Разработчиците смятат, че нямат избор - дублирането е необходимо поради някои външни причини: стандарти за документация, комбинация от няколко платформи с различни среди, езици и библиотеки, спецификата на самия език. В някои случаи можете само да приемете, но в други все още можете да намерите заобиколни решения с филтри, активни генератори на код, метаданни и правилния подход към коментирането.
  • Неволно дублиране. Разработчиците не осъзнават, че дублират информация. Това обикновено се случва в резултат на грешки или несъответствия на дълбоко ниво (например един и същ атрибут е записан в няколко обекта), а елиминирането изисква реорганизация. В някои от тези случаи е допустимо нарушаването на принципа в името на ефективността, но само в рамките на класа.
  • Нетърпеливо дублиране. Разработчиците правят дублиране, защото смятат, че е по-лесно. Това обикновено се случва чрез копиране на части от код. Всичко се свежда до самодисциплина - не е твърде мързелив, за да отделите няколко допълнителни секунди, за да избегнете главоболия в бъдеще.
  • Колективно дублиране. Част от информацията се дублира от няколко членове на един и същ екип за разработка в хода на работа. Най-трудният случай по отношение на откриване и разрешаване. На високо ниво проблемът се решава чрез ясно дизайнерско решение, силен технически ръководител и ясно разпределение на отговорностите. На модулно - чрез активна комуникация между разработчиците: създайте групи за комуникация, създайте публично място в директорията за съхраняване на сервизни процедури и скриптове, насърчавайте изучаването и обсъждането на кода на някой друг.
Съвет 12: Направете програмата лесна за повторна употреба

Опитайте се да създадете среда, в която е по-лесно да намерите и използвате повторно съществуващ материал, отколкото да го създадете сами от нулата. Това помага за намаляване на риска от дублиране. Само имайте предвид, че ако повторното използване е трудно, хората няма да го направят.

Съвет 13: Избягвайте взаимодействие между обекти, които не са свързани един с друг

Това правило се нарича още принцип на ортогоналност. Два или повече обекта са ортогонални, ако промените, направени в един от тях, не засягат останалите. Има две големи ползи от тази схема: повишена производителност и намален риск.

Когато промените в системата са локализирани, времето за разработка и тестване се намалява. След като малък самостоятелен компонент е проектиран, внедрен и тестван, той може просто да бъде забравен, вместо непрекъснато да се правят промени, докато нови фрагменти се добавят към кода.

Ортогоналният подход също насърчава повторното използване на компоненти. Колкото по-малко е свързването в системите, толкова по-лесно е да се преконфигурира или реинженерира.

Намаляването на риска се дължи на факта, че грешните фрагменти са изолирани и не засягат цялата система; съответно е и по-лесно да ги коригирате или замените. В резултат на това системата става по-стабилна - проблемните зони остават зони. Също така помага, че тестването на ниво единица обикновено се извършва по-задълбочено.

Принципът на ортогоналност не трябва да се спазва на ниво отделни технологии, а трябва да обхваща всички процеси: от проектиране до избор на инструменти, от тестване до управление на продукти. Минимизира дублирането и прави системата по-гъвкава и прозрачна.


Съвет 14: Няма окончателни решения

Изискванията, потребителите и хардуерът се променят по-бързо, отколкото ние разработваме софтуер. Следователно винаги трябва да сте подготвени за факта, че всяко решение, което вземете (не само в рамките на кода, но също така, например, когато избирате инструмент на трета страна, архитектурен модел, модел на внедряване), ще трябва да бъде преразгледано в бъдеще под влиянието външни фактори. Принципът на „минимално дублиране“, принципът на отделяне и използването на метаданни правят системата по-обратима.

Съвет 15: Използвайте трасиращи куршуми, за да намерите целта си

Нарушаване на метафората: когато създава нов продукт, екипът за разработка често работи на сляпо, работейки с непознати техники, езици и библиотеки. Крайният резултат може да бъде предвиден или чрез твърдо прогнозиране, базирано на много подробен анализ на технологиите, или чрез „проследяване“ – създаване на серия от опростени, пробни, постепенно подобрени работни версии, за да се съберат компонентите на системата и да се провери как работят заедно.

Алтернатива на този подход - изолираното разработване на отделни модули, които се сглобяват заедно на последния етап и след това вече се тестват на системно ниво - е по-тромаво и по-малко удобно. Освен всичко друго, методът за проследяване ви дава чернова версия на продукта (можете да го представите на потребителите, за да им покажете същността на проекта, да ги заинтересувате и да получите обратна връзка); по-плавно и по-целенасочено интегриране на готови нови модули в средата и възможност за незабавно идентифициране и лесно отстраняване на грешки при взаимодействие.

Съвет 16: Прототип, от който да се учим

За разлика от тестовите версии, описани по-горе, прототипите имат по-тесен фокус: те са създадени, за да изработят няколко специфични характеристики и изискват значително по-малко ресурси. Пропускат се всички подробности, които не са свързани с разглеждания проблем, дори и да са изключително важни за работата на системата като цяло. Когато работите върху прототип, коректността, пълнотата, надеждността и стилът могат да бъдат пренебрегнати.

За прототипиране не е необходимо да създавате пълноценно работещо приложение, понякога е достатъчна само диаграма на хартия или дъска. Ако все пак е необходимо, тогава има смисъл да изберете език много високо ниво- над нивото на езика, използван от останалата част от проекта (език като Perl, Python или Tel). Скриптовият език от високо ниво ви позволява да пропуснете много детайли (включително указване на типове данни) и въпреки това да създадете функционален, макар и непълен и бавен програмен фрагмент.

Съвет 17: Кодирайте с обхват

Езиците за програмиране влияят на начина, по който мислите за даден проблем и как взаимодействате с потребителя. Всеки език има свои собствени характеристики, които водят до определени решенияили, обратно, да ги предотврати. Решение в стил Lisp е различно от решение, мислещо в C, и обратното. Обратното също е вярно – език, който отразява спецификата на проблема, с който работите, може от своя страна да предложи решение в областта на програмирането.

Вслушвайки се в изискванията на потребителите, можете да разберете на кой език ще бъде най-лесно да ги преведете на по-високо, абстрактно ниво. Различни типове потребители (крайни - аудиторията, за която правите проекта, и вторични - мениджъри, бъдещи поколения разработчици) може да изискват генерирането на собствени мини-среди и езици.

Съвет 18: Оценявайте, за да избегнете изненади

Даването на груба оценка е умение и съществена част от това умение е способността да се определи приемлива точност въз основа на контекста. Избраната от вас мерна единица също трябва да отразява степента на точност (сравнете: една задача ще отнеме две седмици, а една задача ще отнеме 75 работни часа).

Оценката се извършва на няколко етапа. Първо стигаме до дъното зададен въпроси оценете мащаба предметна област; освен това самата формулировка на въпроса често води до отговор. След това се изгражда модел на проблема - приблизителна последователност от етапи, през които ще трябва да се премине при решаването му. Моделът е декомпозиран на компоненти, за всеки от които е зададен параметър на значимост. Въз основа на тези параметри и приблизителни стойности се правят изчисления. Последната стъпка се извършва постфактум - прогнозата се сравнява с действителното състояние на нещата, в случай на сериозни отклонения се работи върху грешките.

Съвет 19: Прецизирайте графика на проекта, ако кодът го изисква

Това може да не се хареса на ръководството, което обикновено иска числата да бъдат обявени преди началото на проекта и да не подлежат на промяна. Ще трябва да им предадете, че графикът за изпълнение на задачите ще се определя от производителността на екипа и обстоятелствата. Чрез формализиране на тази процедура и прецизиране на графика по време на всяка итерация, можете да дадете на ръководството най-точните оценки на времето за всеки етап.

Глава 3: Комплект инструменти за къмпинг

Инструментите са средство за подобряване на вашия талант. Колкото по-добри са те и колкото по-добри ги притежавате, толкова повече можете да направите. Започнете с универсална, „пътуваща“ кутия с инструменти, която ще използвате за всички. основни операции. Този комплект ще расте, докато натрупвате опит и отговаряте на конкретни изисквания.

Съвет 20: Запазете информация в обикновен текстов формат

Най-добрият формат за постоянно съхранение на знания е обикновен текст, който позволява информацията да се обработва както ръчно, така и с помощта на всякакви налични инструменти. Проблемът с повечето двоични формати е, че контекстът, необходим за разбиране на данните, е отделен от самите данни. А с обикновен текст, който може да се чете без декриптиране, можете да създадете самодокументиращ се поток от данни, независимо от програмата, която го е генерирала.

Обикновеният текст има два основни недостатъка: (1) може да заема повече място за съхранение от компресиран двоичен формат и (2) от изчислителна гледна точка интерпретацията и обработката на файл с обикновен текст може да бъде по-бавно. В зависимост от приложението една или и двете от горните ситуации може да са неприемливи. Но дори и в тези случаи е приемливо да се запазят метаданни, които ще описват оригиналните данни в обикновен текстов формат.

Обикновеният текст е:

  • Уверете се, че данните не са остарели
  • По-кратък път до целта
  • По-лесно тестване
Съвет 21: Използвайте силните страни на черупките

Ако работите само с графичен интерфейс, значи не използвате всички функции, предоставени от операционната система – не автоматизирате типичните задачи, не използвате максимално наличните инструменти, не комбинирате различни решения за създаване на специализирани макро инструменти. Предимството на графичния потребителски интерфейс е, че те работят на принципа „каквото виждаш, това получаваш“. Основният недостатък на графичния интерфейс може да се формулира по следния начин: "получавате само това, което виждате." Обхватът на такива инструменти обикновено е ограничен до задачите, за които първоначално е бил замислен. Ако искате да отидете отвъд този модел (и рано или късно ще го направите), вие сте извън пътя с тях.

Положете малко усилия, за да се запознаете с обвивката и ще се изненадате колко по-продуктивна става работата ви. Командите на реда могат да бъдат объркващи, но са мощни и кратки. Като ги обединявате в скриптови файлове, можете да създавате поредици от команди за автоматизиране на често използвани процедури.

Съвет 22: Използвайте един текстов редактор, но се възползвайте максимално от него

Обработката на текст трябва да изисква минимални усилия, така че е по-добре да овладеете един редактор до съвършенство и да го използвате за решаване на всички задачи за редактиране: работа с програмен текст, документация, бележки, системно администриране и т.н. Трудно е да си експерт в веднъж в няколко софтуерни среди, доведете работата с всяка до рефлекс, като се има предвид, че всяка от тях има свой собствен набор от команди и стандарти. Опитвайки се да комбинирате няколко редактора, рискувате да повторите ситуацията с вавилонския пандемониум.

Изборът на редактора е почти религия, така че тук не могат да се правят конкретни препоръки. При вземането на решение обаче трябва да се вземат предвид следните параметри:

  • Възможност за персонализиране. Всички свойства на редактора трябва да могат да се персонализират, включително шрифтове, цветове, размери на прозорци и клавишни комбинации.
  • Разширяемост. Редакторът не трябва да остарява веднага щом се появи нов език за програмиране. Трябва да може да се интегрира в каквато и среда на компилатор да използвате в момента. Трябва да имате възможност да го „научите“ на нюансите на всеки нов език за програмиране или текстов формат.
  • Програмируемост. Трябва да можете да програмирате редактора да извършва сложни многоетапни операции.
Съвет 23: Винаги използвайте контрола на изходния код

Системите за управление на изходния код следят всички промени, направени в текста и документацията. Най-добрите също могат да следят промените във версиите на компилатора и операционната система. Със система за управление програмен кодправилно конфигуриран, винаги можете да се върнете към предишна версия на програмата.

Системата за управление на изходния код предоставя много повече от просто отмяна на грешни действия. Добрата система ви позволява да проследявате промените и дава отговори на конкретни въпроси: „Кой направи промени в този ред от текст? Каква е разликата между версията, която съществува сега, и версията, която съществуваше миналата седмица? Колко реда от програмния текст са променени в тази версия? Кои файлове се променят най-много? Този вид информация е безценна за проследяване на грешки, одит, оценка на ефективността и качеството.


Как върви отстраняването на грешки?

Съвет 24: Фокусирайте се върху отстраняването на проблема, а не върху обвиняването

Преминаваме към темата за коригиране на грешки - много чувствителна и изключително подходяща за работа в екип. Тук, както никъде другаде, е важно правилното отношение. Прегърнете факта, че отстраняването на грешки е задача като всяка друга, и подходете към нея от тази гледна точка. Всъщност няма значение кой е виновен за грешката - вие или някой друг. Все още си остава твой проблем.

Съвет 25: Не се паникьосвайте

Много е важно да направите крачка назад, да потиснете първата емоционална реакция и да помислите каква всъщност е основната причина за симптомите и как да се справите с нея. Устояйте на изкушението просто да премахнете симптомите и по този начин да разрешите проблема на повърхностно ниво – работете с първопричината.

Преди да погледнете грешката, уверете се, че работите върху програма, която е преминала чисто етапа на компилация - без предупреждения. Губенето на време за грешки, които дори компилаторът вижда, няма смисъл. Съберете възможно най-много информация; ако бъг е докладван от трета страна, попитайте тези, които са се сблъскали с него подробно.

Съвет 26: Търсете грешки извън операционната система

Започнете с предположението, че операционна система, базата данни и другият софтуер е наред. Ако сте „направили само една промяна“ и системата е спряла да работи, тогава най-вероятно това е причината за случилото се, колкото и абсурдно да изглежда това твърдение. Ако не знаете откъде да започнете, винаги можете да разчитате на доброто старо бинарно търсене.

Изключение: Ако някой от вашите инструменти наскоро е бил актуализиран, проблемът може да е причинен от конфликти с нова версия. Проследявайте графика на предстоящите промени, за да сведете до минимум въздействието на подобни конфликти.

Съвет 27: Не предполагайте – доказвайте

Изненадата, която получавате, когато нещо се обърка, е правопропорционална на нивото на вяра в правилността на програмата. Следователно, когато се сблъскате с неочакван срив на програмата, трябва да приемете, че едно или повече от вашите предположения са грешни. Не се доверявайте сляпо на код, който е причинил грешка, само защото „знаете“, че работи добре. Първо го докажете - в реален контекст, с реални данни и с реални гранични условия.

Когато се сблъскате с неочаквана грешка, опитайте се да предприемете стъпки, за да се уверите, че тя няма да се разпространи, да засегне други кодови фрагменти или да се повтори. Ако е резултат от нечии погрешни схващания, обсъдете проблема с целия екип.

Съвет 28: Научете език за текстообработка

От време на време се налага да извършваме някои трансформации, които не могат да бъдат направени с комплекта инструменти за къмпинг. В такива случаи е необходим универсален инструмент за обработка на текст. Използвайки текстообработващи езици, можете бързо да решавате проблеми с помощните програми и идеи за прототипи - докато работите с обикновени езицище отнеме пет до десет пъти повече време.

Те също така улесняват създаването на генератори на кодове, които ще бъдат обсъдени по-нататък.

Съвет 29: Напишете код, който ще кодира вместо вас

От програмистите често се изисква да изпълняват подобни задачи: да предоставят същата функционалност, но в различен контекст, да възпроизвеждат информация или просто да въвеждат отново един и същ текст ad infinitum. Тук идват шаблоните. За да ги създаде, програмистът може да изгради генератор на код, който може да се използва до края на живота на проекта на практика безплатно.

Генераторите на код са активни и пасивни. Пасивните генератори работят веднъж, за да постигнат резултат, който след това става независим. Всъщност те са персонализирани шаблони, които спестяват време за въвеждане и се използват за операции като създаване на нови изходни файлове, извършване на двоични трансформации или създаване на справочни таблици и други ресурси, които са твърде скъпи за изчисляване.

Активните генератори на кодове се използват винаги, когато има нужда от резултатите от тяхната работа. Те могат да бъдат изключително полезни при спазването на принципа на „минимално дублиране“. С активен генератор на код можете да вземете представяне на някакво знание и да го трансформирате във всякакви форми, от които се нуждае вашето приложение. Това не е дублиране, тъй като тези формуляри са консумативи и се създават от генератора според нуждите. Когато трябва да организирате съвместната работа на две напълно различни среди, трябва да обмислите използването на активни генератори на код.

Глава 4: Прагматична параноя

Съвет 30: Невъзможно е да напишете перфектна програма

В цялата история на програмирането никой не е успял да напише нито един перфектен код. Малко вероятно е да сте първи. И когато приемете това за факт, ще спрете да губите време и енергия в преследване на призрачен сън.

Съвет 31: Проектирайте според договорите

Методологията на проектиране чрез договор предлага да се изгради взаимодействието на софтуерните модули на базата на документираните им права и задължения, за да се гарантира правилната работа на програмата. Коректността се разбира като способността да се прави точно това, което е заявено.

Договорът между подпрограмата и всяка потенциално извикваща програма може да се формулира по следния начин: „Ако извикващата програма удовлетворява всички предварителни условия на подпрограмата, тогава подпрограмата гарантира, че в края на нейната работа всички постусловия и инварианти ще бъдат верни. " Ако една от страните наруши условията на договора, тогава се прилага предварително договорена мярка, например се добавя изключение или програмата се прекратява. В развитието се придържайте към класическите принципи за сключване на договор: когато предписвате предварителни условия, бъдете изключително каустични, а когато става въпрос за постусловия, напротив, не давайте ненужни обещания.

Най-голямата полза от използването на този принцип е, че той поставя искове и гаранции на преден план. По време на живота на един проект простото изброяване на факторите – какъв е обхватът на входовете, какви са граничните условия, какво може да се очаква от подпрограмата (или, което е по-важно, какво не може да се очаква от нея) – е огромна стъпка напред. Като не посочите тези позиции, вие се плъзгате към програмиране, основано на съвпадение, на което много проекти се провалят.

Съвет 32: Оставете програмата да се срине възможно най-скоро

В много случаи прекратяването на програмата по този начин е най-добрият изход, тъй като алтернативите ще имат сериозни, понякога необратими последици. Прагматиците гледат на ситуацията така: ако се случи грешка, значи се е случило нещо много лошо и е по-добре да се играе на сигурно.

Ясно е, че в някои случаи аварийният изход от работеща програма е неподходящ (може би трябва първо да регистрирате нещо, да затворите отворени транзакции или да взаимодействате с други процеси). Основният принцип обаче остава същият – ако програмата открие, че се е случило събитие, което се е смятало за невъзможно, тя губи жизнеспособност. Започвайки от този момент, всички действия, извършвани от програмата, попадат под съмнение и нейното изпълнение трябва да бъде прекъснато възможно най-скоро. В повечето случаи мъртвата програма причинява много по-малко вреда от повредената.

Съвет 33: Ако нещо не може да се случи, използвайте изявления, за да сте сигурни, че няма да се случи

Всеки път, когато започнете да мислите в духа на „Разбира се, това просто не може да се случи“, потвърдете това с код. Най-лесният начин да направите това е да използвате твърдения. Повечето реализации на езиците C и C++ имат някакъв вид assert или _assert макрос, който проверява за булево условие. Тези макроси могат да бъдат от голяма полза. Например, ако указателят, предаван на вашата процедура, никога не трябва да приема стойност NULL, запишете задължителното изпълнение на това условие.

Утвържденията не трябва да се използват вместо действително обработване на грешки. Те само тестват нещо, което никога не трябва да се случва. Има гледна точка, според която одобренията са необходими само в периода на отстраняване на грешки, а когато проектът бъде доставен, те се превръщат в мъртва тежест. Това е твърде оптимистичен възглед: тестването най-вероятно няма да разкрие всичко, което може да се случи в реални условия. Дори ако има проблеми с производителността, деактивирайте само тези твърдения, които действително имат значително влияние върху производителността.

Съвет 34: Използвайте изключения само в изключителни случаи

На практика обаче проверката за всяка възможна грешка може да доведе до това програмата да стане грозна; нормалната логика може да се срине поради пренаселеност с рутинни процедури за обработка на грешки. Изключенията ще помогнат да се приложи всичко по-грациозно.

Основният проблем с изключенията е, че трябва да знаете кога да ги използвате. Не злоупотребявайте с изключенията за нормалния ход на изпълнение на програмата; те трябва да бъдат запазени за извънредни ситуации.

Изключение е мигновено нелокално прехвърляне на контрол - нещо като многопластов goto оператор. Програмите, които използват изключения в нормалната си работа, изпитват същите проблеми с четливостта и поддръжката като класическите неструктурирани програми. Те нарушават принципа на капсулиране: подпрограмите и програмите, които ги извикват, са по-тясно свързани една с друга поради обработката на изключения.

Съвет 35: Довършете започнатото

Когато пишем програми, ние трябва да управляваме ресурси: памет, транзакции, нишки, файлове, таймери - с една дума различни видове обекти, които са налични в ограничено количество. Повечетос течение на времето използването на ресурс следва предвидим модел: ресурсът се присвоява, използва и след това се освобождава. Много разработчици обаче нямат ясен план за разпределяне и освобождаване на ресурси, което може да доведе до недостиг на ресурси. Решението тук е просто: рутината или обектът, който изисква ресурса, трябва да отговаря за освобождаването на този ресурс.

Ако няколко процедури се нуждаят от повече от един ресурс едновременно, се добавят още две правила:

  1. Освободете ресурси в реда, обратен на начина, по който са били разпределени. В същото време може да се избегне появата на „осиротели“ ресурси, ако един от тях съдържа връзки към друг.
  2. Когато разпределяте един и същи набор от ресурси на различни места в програмата, е необходимо тази операция да се извърши в същия ред. Това намалява вероятността от блокиране.
В програми, които използват динамични структури от данни, има моменти, когато основната схема за разпределение на ресурсите не е добра. В този случай трикът е да се установи семантичен инвариант за разпределение на паметта.

Проблемът за определяне на границите на предметната област на всеки научно направлениеНа първо място, той е уместен при решаването на терминологични и терминографски проблеми, включително в задачите за инвентаризация на термините, както и при преподаването на съответните дисциплини.

Определянето на границите на предметната област на такова научно направление като "Компютърна лингвистика" според нас е една от най-трудните задачи. Обикновено границите на предметната област се установяват чрез съставяне на списък от заглавия и подзаглавия (посоки), които я формират.

Основната трудност в този случайе, че компютърната лингвистика е сравнително млада наука, възникнала в края на 20 век. Това направление започва да се развива активно в чужбина през 60-70-те години и се разбира предимно като използване на статични методи в лингвистиката, откъдето идва и името „Computational Linguistics“ (т.е. „Computational Linguistics“). В Русия свързаният с него термин "математическа лингвистика" стана широко разпространен през 70-те години. Във връзка с развитието на компютърните технологии и тяхното активно приложение в лингвистични задачи, този термин като наименование на науката се трансформира и науката получи по-ясно определение на "компютърна лингвистика". По този начин можем да кажем, че има два подхода при определяне на направленията, разглеждани под този термин - това е нашият руски подход и чуждият.

Що се отнася до гледната точка на чуждестранните лингвисти върху предметната област на компютърната лингвистика, може да се отбележи, че голяма организационна и научна работасе провежда от Асоциацията за компютърна лингвистика, която има регионални структури в няколко страни по света. Официалният уебсайт на тази организация дава обща дефиниция - "компютърната лингвистика е научното изследване на езика от компютърна гледна точка. Компютърните лингвисти се интересуват от предоставянето на компютърни модели на различни видове лингвистични явления". Тази организация организира международни конференции по компютърна корпусна лингвистика: Изследване на езика и COLING. Computational Linguistics се публикува на три месеца в САЩ. Съответните въпроси обикновено също са широко представени на различни конференции за изкуствен интелект.

От гледна точка на западния подход основното направление на компютърната лингвистика е Natural Language Processing (Автоматична обработка на естествен език и реч). При анализа на документи (архиви от конференции, съдържание на основни сайтове) на COLING Association for Computational Linguistics беше отбелязано, че западните лингвисти включват следните приложни области в областта на компютърната лингвистика:

Изчислителна морфология и синтаксис (Компютърна морфология и синтаксис).

  • НЛП (автоматична обработка на езика и речта).
  • Цифрови библиотеки (Digital Libraries).
  • Извличане на информация.
  • Извличане на информация.
  • Представяне на знания и семантика (Представяне на знания и семантика).
  • Машинен превод.
  • Обработка на реч (разпознаване и синтез на реч).
  • Статистическа езикова обработка.
  • Резюмиране (Резюмиране и анотиране).

От гледна точка на руското възприемане на разглежданата проблемна област, основната работа в тази посока се извършва от Руската асоциация по компютърна лингвистика КОЛИНТ, на чийто уебсайт можете да намерите всички научни доклади, представени на конференцията по проблемите на компютърната лингвистика. Въпреки че този сайт не предоставя заглавия за проблемни задачи, можете да видите, че руските лингвисти дават приоритет на области като:

  • Машинен превод;
  • Системи за търсене и класификация;
  • Компютърна лексикография;
  • Лингвистична компютърна семантика;
  • Корпусна лингвистика;

Формални модели на анализ и разпознаване на езикови структури.

Анализът на съществуващите учебници и справочници все още не дава пълна и ясна представа за това практическа насокалингвистика.

Голям енциклопедичен речник: Лингвистика, под редакцията на В. Н. Ярцева. изобщо не включва този термин в речника.

Известният руски лингвист Марчук Ю.Н. основно определя компютърната лингвистика като "езиковите основи на компютърните науки", което всъщност включва решаване на проблеми, свързани с разработването и използването изкуствени езициосигуряване на комуникация между човек и компютър. Но в същото време в работата си "Основи на компютърната лингвистика" Марчук Ю.Н. последователно разглежда компютърното моделиране на естествен език, а именно морфология, синтаксис, представяне на семантика и прагматика в компютърни среди. Освен това в работата се споменава приложни задачикато организация от машинни речници, банки с терминологични данни и дори се разглеждат основите на терминологията.

Според руския лингвист, професор от Московския държавен университет Баранов А.Н. Терминът "компютърна лингвистика" се отнася до широка област на използване на компютърни средства - програми, компютърни технологии за организиране и обработка на данни - за моделиране на функционирането на език в определени условия, ситуации, проблемни области и др., както и обхватът на компютърните езикови модели не само в лингвистиката, но и в сродните дисциплини". В своята работа Баранов A.N. идентифицира някои области на компютърната лингвистика като основни - това са комуникационно моделиране, моделиране на сюжетна структура, хипертекстови технологии за представяне на текст, компютърна лексикография , машинен превод, системи за обработка на естествен език.

Проблемът за определяне на границите на предметната област стои и пред разработчиците на учебни програми за учебните дисциплини в областта на приложната и компютърната лингвистика. За тези цели учебните програми по компютърна лингвистика на руски университети като Москва Държавен университет, Московска държава Лингвистичен университет, Руски държавен университет.

Разработчиците на курсовата програма MSLU се фокусират върху компютърното моделиране на естествения език при решаването на проблеми изкуствен интелект, основните принципи на езиковото моделиране, т.е. направления, които са свързани с моделиране на комуникацията човек-компютър.

Разработчиците на програмата на курса в Московския държавен университет идентифицират такива задачи и области като проблемите на езиковата поддръжка на съвременните автоматизирани информационни системи, автоматичната обработка на естествения език и създаването на речници и текстови процесори.

Основните области, обхванати в курса по компютърна лингвистика в Руския държавен университет, са: извличане на информация, машинен превод, терминология, терминология, терминография, компютърна лексикография, разпознаване и синтез на реч, проблеми с компютърно подпомагано езиково обучение. Програмата на този университет е най-близка до програмата на Уляновския държавен технически университет.

Горният анализ показва, че на практика почти всичко, свързано с използването на компютри в лингвистиката, често се нарича компютърна лингвистика, поради което проблемите се бъркат с практическите решения. По този начин, когато се определят границите на предметната област на компютърната лингвистика, е необходимо по-ясно да се разграничат 2 гледни точки:

1. АВТОМАТИЧНА ЕЗИКОВА ОБРАБОТКА (Language Processing), която ще включва задачите за анализиране и моделиране на езиковата структура, а именно:

  • графематичен/фонематичен анализ на езика;
  • морфологичен анализ;
  • лексикален и граматичен анализ на езика;
  • разбор, или разбор;
  • анализ и моделиране на семантичната структура;
  • задачата за синтезиране на езикови елементи, вкл. генериране на текст;
  • автоматична лингвистична статистика.
2. ПРИЛОЖНИ НАПРАВЛЕНИЯ НА КОМПЮТЪРНАТА ЛИНГВИСТИКА, а именно:
  • Машинен превод;
  • разпознаване и синтез на реч;
  • разработване и използване на изкуствени езици, включително езици за програмиране, езици на информационните системи;
  • компютърна лексикография и терминография;
  • лингвистични основи на извличане на информация;
  • автоматично индексиране, рефериране и класифициране на текстове;
  • автоматичен анализ на съдържанието и авторизация на текстове;
  • хипертекстови технологии за представяне на текст;
  • корпусна лингвистика;
  • компютърна лингводидактика.

Това разграничение не претендира за пълнота, но дава по-определена представа за предметната област на тази сложна наука и може да се използва като основа за разработване на терминологичен речник или работна програма за курса "Компютърна лингвистика".

ЛИТЕРАТУРА

1. Баранов A.N. Въведение в приложната лингвистика. - М .: Едиториал URSS, 2001. - 360 с.
2. Гринев С.В. Въведение в терминологичната лексикография. - М., 1986.-106s.
3. Марчук Ю.Н. Основи на компютърната лингвистика: Урок. - М., 1999. - 225 с.
4. Соснина Е.П. Въведение в приложната лингвистика: Учебник. - Уляновск: UlGTU, 2000. - 46 с.
5. Ярцева В.Н. Езикознание. Голям енциклопедичен речник. - 2-ро изд. - Y41 M.: Велика руска енциклопедия, 1998. - 685 с.
6. http://www.aclweb.org
7. http://www.dialog-21.ru

Обратът в лингвистичните изследвания към прагматиката на езика, реалните условия на неговото функциониране беше естествен и необходим. Водещите тенденции в науката за езика през 60-70-те години - лингвистичният структурализъм и логическата семантика имаха един съществен недостатък - слаба връзка с реалността и практическата дейност на хората. Изказването (и речта като цяло) се свързваше в тези теории с условен „среден“ носител на езика, а реално използващите езика хора с техните чувства, взаимоотношения, намерения и цели оставаха извън анализа (Gak 1998: 555). Постепенно се стигна до разбирането, че за по-пълно обяснение на езика, както на неговата структура, така и на особеностите на използването му в речта, е необходимо да се обърнем към факторите на функционирането на езиковите единици, т.е. към прагматиката.

Идентифицирането и формирането на собствено лингвистичната прагматика е стимулирано, от една страна, от идеите на Ч.С. Пиърс и Чу. Морис, а от друга страна се опира на концепцията на късния Витгенщайн. Според V.V. Петров именно трудовете на Л. Витгенщайн до голяма степен допринасят за превръщането на прагматиката като част от общата семиотична теория в самостоятелна изследователска област, поставяйки основата на мощен поток от съвременни трудове по прагматика (Петров 1987). Началото на интензивното развитие на прагматиката условно се приписва на 1970 г. - времето на Международния симпозиум по прагматика на естествените езици (Bulygina 1981: 333).

Прагматиката като специално направление в изучаването на езика от самото начало на своето съществуване се обяви за много обширна и много

неопределена научна дисциплина. Почти всеки труд по прагматика (независимо дали неговият автор като цяло се фокусира върху лингвистичната семантика, философията на езика или формалната логика) започва с предефиниране на предмета на изследване и в съответствие с това авторовото разбиране на прагматиката в езикът се определя.

Описвайки задачите и проблемите на прагматичните изследвания, Н.Д. Арутюнова и Е.В. Падучева отбелязва, че постепенно разширявайки се, „те разкриват тенденция към размиване на границите между лингвистиката и сродните дисциплини (психология, социология и етнография), от една страна, и съседните дялове на лингвистиката (семантика, реторика, стилистика), от друга “ (Арутюнова, Падучева 1985 : четири).

Лингвистичната прагматика е тясно свързана със социолингвистиката и психолингвистиката. Наличието на общи интереси в прагматиката и социолингвистиката е толкова голямо, че дори стана причина да се обособи отделна дисциплина в чуждестранната наука - социопрагматиката (социопрагматика), която изучава зависимостта на вербалната комуникация от социалните фактори (ARSLS 1996: 541; вж. Leech 1983: 10).

Размиването на границите на езиковата прагматика очевидно е свързано с факта, че тя за кратко време усвои идеите на теорията на езиковата комуникация, теорията на текста, комуникативната граматика, новите концепции на реториката, теорията на речевите актове, теорията на дискурс, т.е. всички онези дисциплини, които имат за предмет използването на езика от човека.

В резултат на това в научната общност постепенно се установява разбирането за прагматиката като посока, свързана с решаването на голямо разнообразие от проблеми за описание на функционирането на езика. Развитието на идеите на лингвистичната прагматика, определянето на областите на нейното приложение и задачи се отразява в многобройни тълкувания на термина "прагматика".

Терминът "прагматичен" (изучаване на език) се появява през 20-те години на миналия век - под формата на прилагателно е използван през 1923 г. от Б. Малиновски в приложение към книгата "Значението на значението" на Огдън и Ричардс. След това, и тази позиция в "историята на прагматиката" е общоприета, терминът "прагматика" е създаден от К. Морис през 1938 г. за използване в добре познатата триада на синтактика (синтаксис), семантика и прагматика като части от семиотиката (Nerlich & Clarke 1994; Nerlich 1995). К. Морис, провеждайки изследвания, насочени към изучаване на структурата на знакова ситуация (семиозис) в динамичен, процедурен аспект, включително участниците в тази ситуация, разграничава трите гореспоменати аспекта на семиотиката, определяйки прагматиката като „връзката на знаците на тези, които ги тълкуват“ (Морис 1938: 6). Въпреки това, в бъдеще, във връзка с развитието на възгледите на изследователя, а също и поради факта, че терминът вече е придобил нежелана двусмисленост и замъгляване, Морис определя прагматиката като изследване на „произхода, употребата и ефектите на знаците ) “ (Морис 1946: 219). От това определение следва, че вниманието на изследователя трябва да бъде насочено към цялостно изследване на три взаимосвързани процеса на една верига - формирането, използването (функционирането) и въздействието на знаците. Разбиране за прагматиката, съзвучно с дефиницията на Морис, откриваме в работата на Г. Клаус, който отнася към прагматиката „психологическите и социалните аспекти на използването на езикови знаци“ (Клаус 1967: 22).

Визията за прагматиката, както е представена от C. Fillmore, изглежда интересна. Неговата дефиниция е доста подробна и гласи следното: „Прагматиката изучава триизмерна връзка, която съчетава (1) езикови форми, (2) комуникативните функции, които тези форми могат да изпълняват с (3) контекста или средата, в която тези езиковите форми могат да имат функции на езика на данните“ (цитирано в Pocheptsov (Jr.) 1984: 33).

Добре известна лингвистична дефиниция на прагматиката в края на 70-те и началото на 80-те години беше определението, предложено от R.S. Столнакер. Прагматиката според Столнакер се занимава с изучаването на речевите действия и контекстите, в които те се произвеждат и прилагат. Целта на прагматиката като дисциплина трябва да бъде да подчертае класификацията на речевите действия и техните продукти, т.е. съответни твърдения (Stalnaker 1972).

Често се подчертава, че прагматиката до голяма степен съответства на принципа на дейността и по този начин въвежда акционален (деятелен) аспект в описанието на езика. Съответствието на прагматиката с изискванията на принципа на активността е отразено в определението предметпрагматици дадени от E.S. Азнаурова. Предмет на лингвистичната прагматика според нея е „изучаването на езика в аспекта на човешката дейност в широк социален контекст” (Азнаурова 1988: 8). 1 Изследването на фактите на езика в аспекта на човешката дейност се счита за основен постулат на прагматиката. Но, както E.S. Азнаурова, „широчината на постулата е довела до значително разпръскване на теми и проблеми, обсъждани в тази лингвистична област, вариращи от прагматичната интерпретация на езиковите знаци и теорията на речевите действия, до изследването на прагматичните параметри на литературната комуникация и текстът в неговата динамика, съотнесена с „Аз-а" на създаващия текст. човек" (пак там: 10).

Широко разбиране на прагматиката, когато обхватът на нейния интерес включва въпроси на deixis, речеви действия, пресупозиции, импликации на преобразуване, проблеми, свързани с тълкуването на речта, когато задачата на прагматиката като отделна лингвистична наука се нарича "изследване на съответствията между езиковите единици и ефектите от тяхното използване“ (Почепцов 1985: 16) или „изучаването на връзката между езиковите форми (същности) и потребителите на тези форми“ (Yule 1996: 4) се противопоставя на подхода, когато единственият реален обект на изследване в областта на прагматиката се счита за реализиран в текста

Говорейки за предмета на прагматиката, трябва да се има предвид, че въпреки че прагматиката е призната за специална лингвистична дисциплина според голям брой лингвисти, тази позиция не е общоприета. Редица изследователи отричат ​​прагматиката на притежанието собствен предметизследвания и заключава, че е невъзможно да се разглежда като друг компонент на теорията на езика. Придава му се само статут на специална перспектива (прагматична перспектива) при разглеждането на езиковите явления (вж. Verschueren 1999). прагматична нагласа, в най-общ вид, дефинирана като „осъзнатото намерение на подателя на съобщението, материализирано в текста, да окаже съответен ефект върху реципиента на речта“ (Naer 1985: 16). Привържениците на такова разбиране на прагматиката смятат, че предложеното максимално ограничаване на приложението на прагматиката позволява да се отдели в езика сфера, свързана с целеполагащо речево въздействие, подобно на акт (Гелия 1988: 189).

Подобно разбиране на задачите на прагматиката е отразено в изследвания, в които акцентът е върху крайния резултат от комуникацията - ефектът на въздействието (перлокутивен ефект според Остин), когато въпросите за изучаване на вербалния контрол на човешкото поведение, моделирането на социалния и индивидуално поведениехората чрез речта (Кисельова 1978).

Прагматичният подход към разбирането на природата на езика се формира и продължава да се развива под знака на включване на субективността на говорещия в това разбиране. И така, в концепцията на Ю.С. Степановската категория субект се определя като централна категория на съвременната прагматика (Степанов 1981; 1985; 2001). В същото време, с нарастваща яснота, необходимостта от отчитане на фактора на адресата, т.е. субективността на слушателя, която служи като отправна точка за разработване на теория за интерпретация на речеви произведения, които се появяват в определени комуникативни контексти, когато обект на интерпретация е това, което обикновено се нарича прагматично значение на изявлението (Arutyunova 1981).

Някои изследователи смятат, че понятието интерпретация позволява по най-естествен начин да се формулират наблюдения върху свойствата на езика и по един или друг начин присъства във всяко прагматично изследване (Демянков 1981: 369). Третата гледна точка за значението на факторите на субекта на речта и адресата е подход, който определя траекторията на прагматиката като движение от егоцентризма към принципа на пълната бинарност „по линията на синтеза на субективността на подателят и субективността на адресата в единен и кумулативен фактор“ (Сидоров 1995: 470).

Цялостното разглеждане на различни фактори, на които се набляга в прагматичните изследвания, „позволява да разберем по-добре спецификата на езика при неговата реална употреба“ (Gak 1997: 361) и свидетелства за изключителния потенциал на прагматиката.

Както се вижда от горните определения, извеждането на преден план на определена група фактори ни позволява да говорим за различни видовеили варианти на прагматиката. Още в началото на 70-те години Т.М. Дридзе уверено предполага съществуването на два прагматика – „прагматика на комуникатора” и „прагматика на реципиента” (Дридзе 1972: 34-35). J. Yule, още в края на 90-те години на миналия век, конкретизира понятието потребител ("потребител") и дава обемна дефиниция на прагматиката, която отчита позицията на изпращача, позицията на получателя и определя различни възможности за прагматика, в зависимост от ъгъла на изследване. Прагматиката на J. Yule „се занимава с изследване на значението, както е докладвано от говорещия (или пишещия) и интерпретирано от слушателя (или читателя), което ни позволява да говорим за: (1) прагматиката като значение на говорещия ( прагматиката е изследване на значението на говорещия); (2) прагматиката е изследване на контекстуалното значение; (3) прагматика на импликацията (прагматиката е изследване на това как се съобщава повече, отколкото се казва); (4) прагматиката е изследване на изразяването на относителна дистанция (Yule 1996: 3).

Тук е интересно да се сравнят разновидностите на прагматиката, предложени от J. Yule, с доста подробно представяне на задачите на прагматиката, както са формулирани от N.D. Арутюнова. Авторът идентифицира четири основни проблема, включващи набор от проблеми, свързани с говорещия субект, адресата, тяхното взаимодействие в комуникацията и ситуацията на комуникация.

Във връзка с предмета на речта прагматиката изучава: (1) явните и скритите цели на изказването; (2) речеви тактики и видове речево поведение; (3) правила за разговор, подчинени на принципа на сътрудничество; (4) отношението на говорещия или прагматичното значение на изказването; (5) референция на говорещия; (6) прагматични предпоставки; (7) отношението на говорещия към това, което съобщава.

Във връзка с адресата на речта се разглеждат: (1) тълкуване на речта; (2) въздействието на изявлението върху адресата; (3) видове речев отговор на получения стимул.

Във връзка с отношенията между участниците в общуването се изучават: (1) форми на вербална комуникация; (2) социално-етикетен аспект на речта; (3) отношенията между участниците в комуникацията в определени речеви действия (т.е. ролеви отношения).

Във връзка със ситуацията на общуване в прагматиката се изследват: (1) интерпретацията на дейктичните знаци, както и индексалните компоненти в значението на думите; (2) влиянието на речевата ситуация върху темите и формите на общуване (Арутюнова 1990а: 390).

Сравнявайки вариантите на прагматиката от J. Yule и обхвата на приложение, задачите на прагматиката в N.D. Арутюнова, не е възможно да не се забележи, че прагматиката на импликацията, откроена от Юл, е включена в Н.Д. Арутюнова в широк кръг от въпроси, изследвани във връзка с предмета на речта, а прагматиката на контекстуалното значение на Юл не е нищо повече от стеснен кръг от въпроси, разглеждани във връзка с адресата на речта. Като цяло наблюдаваме изоморфизъм в дефинирането на набор от основни въпроси, което може да се тълкува като постепенно формиране на контурите на прагматиката.

Обръщението на лингвистите към изследването на функционирането на езиковите единици в речта ни позволява да говорим за прагматиката в смисъла на комуникативните свойства на разглежданите единици. Те говорят за „прагматиката на думата“, „прагматиката на изречение" (изявление) и т.н. като се имат предвид, на първо място, особеностите на употреба езикови образуванияв определени прагматични ситуации и условия на функциониране и, второ, реализацията на значението в контекста под влияние на различни прагматични параметри. В първия случай можем да говорим за „външна прагматика“, а във втория – за „вътрешна прагматика“ (понякога наричана прагмасемантика)“1 (Горшунов 1999: 5-6). Смятаме, че разделението на прагматиката, изрично предложено от Ю. В. Горшунов на „външни“ и „вътрешни“, съдържащи се имплицитно в редица трудове, представляват теоретичен интерес и още веднъж потвърждават всички основания да се говори за прагматичен смисъл, като част от езиковото значение.

Разбирането на "вътрешната прагматика" като социално осъзната и фиксирана чрез използване на нивото на системата от прагматична информация позволява три интерпретации: (1) семантичната информация се разглежда като част от комуникативно-прагматичната информация; (2) двата компонента се смятат за равни, автономни, но изпълняващи предназначението си в тясна връзка един с друг, или (3) прагматичната информация се счита за вградена в семантичната информация (срв. Leech 1983: 6).

Първият подход (Малкълм и други оксфордски философи) се основава на идеите на късния Витгенщайн, когато „за голям клас случаи – макар и не за всички – в които използваме думи, значението може да се дефинира по следния начин: значението на една дума е нейното използване в езика” (цит. по Арутюнов 1976: 44). Теорията на значението с този подход губи своя денотативен характер и се превръща в комуникативна теория на значението, която е свързана не само със значението на изявлението, но и със значението на думите, включени в него. За лингвистиката този вид теория, която не прави принципна разлика между значението на дума, изречение и изказване, едва ли може да бъде ефективна (по-подробно вж. Арутюнова 1976: 39-45).

В рамките на втория подход има опити да се припишат контекстно-независимите значения на езиковите единици към обхвата на семантиката, а към обхвата на прагматиката - речевите функции на езиковите изказвания и ситуативно

М.В. Никитин определя прагмасемантиката като изучаване на онази част от общото значение на изявленията и текстовете, която се отнася до намеренията на речта, т.е. към онези прагматични задачи, които говорещият решава чрез речта (Никитин 1996. 619). ср дефиницията на езика на интерпретацията, използван в московската и полската школи по семантика, като „прагмасемантичен език“ в Санников 1989. Виж също в тази връзка Pocheschov (Jr.) 1984; Сталнакер 1972 г.

Обусловената страна на изразените в тях предложения. Някои изследователи определят границите на прагматиката, като изследват онези аспекти на значението, които не са обхванати от семантичната теория (Levinson 1983). В същото време, като се предлага подобно разграничение, се признава фактът, че все още не е разработена адекватна (семантична или прагматична) теория, която да позволи недвусмислен отговор на въпроса къде свършва семантиката и къде започва прагматиката (вж. напр. , Булигия 1981; Интерфейсът семантика/прагматика... 1999).

От друга страна, много изследователи посочват, че най-адекватните резултати могат да бъдат постигнати, ако семантиката и прагматиката се разглеждат като взаимосвързани части на едно цяло: „Няма семантика без прагматика – но няма и прагматика без семантика“ (Kiefer 1985). : 347 ). P. Sgall също отбелязва, че всички опити за изследване на семантиката, без да се вземе предвид прагматиката, са обречени на провал (Sgall 1986: 45).

Голям интерес по отношение на връзката между прагматиката и семантиката представлява гледната точка на Ю.Д. Апресян. Разбирайки прагматиката доста широко, авторът смята, че само прагматичната информация, която е лексикална или граматикализирана, т.е. представлява лингвистичен интерес. придобива траен статут в езика (Апресян 1988; 1995а). Подобна гледна точка е изразена и от друг представител на Московската школа по семантика В.З. Санников, който разбира значението на една езикова единица като нейната семантика и прагматика, тълкувайки последната като „информация за отношениеговорене и слушане на описаните обекти и един на друг” (Санников 1989: 84).

Много общо с концепцията на Ю.Д. Апресян има визия за прагматика В.И. Заботкина (Заботкина 1989; 1993). Отчитайки наличието на сложна диалектическа връзка между прагматика и семантика, изследователят определя прагматиката на думата като част от общата семантика, която носи информация за социалния статус на говорещите, за реалните условия на потребление и за очакваното ефект от въздействието върху слушателя. С други думи, говорим за прагматични компоненти, които са фиксирани поради употребата в семантичната структура на думата, отразяват параметрите на нейното използване в типизирани ситуации на комуникация и осигуряват прагматичното маркиране на думата на системно ниво.

А. Вежбицкая и нейните последователи (Е. В. Падучева и др.) решават по най-радикален начин проблема за границата между семантиката и прагматиката. Самият този въпрос, смята Вежбицкая, няма смисъл, поради факта, че такава граница не съществува: прагматиката е част от семантиката, която изучава определен набор от езикови значения. В концепцията на Wierzbicka автономията на прагматиката по отношение на семантиката се оказва въображаема, има единна семантика на прагматиката или просто прагматиката е една от частите, на които авторът разделя задачата да опише семантиката на даден език . „Езиковите значения по принцип са прагматични: с човек, с речева ситуациясвързани в езика не са някои специално подбрани изразни елементи, а като цяло значението на огромното мнозинство от думи и граматични единици(Падучева 1996: 222). Границите на прагматиката, както те се разбират в работата на Wierzbicka 1991, се очертават именно на основата на естеството на значението, когато онези езикови елементи попадат в компетенцията на прагматиката, в която инсталационните компоненти (субективни, експресивни и други) доминират над денотативните, т.е. езиковите елементи от всякакъв формален тип, обединени само от факта, че носят предимно "прагматична информация" (Падучева 1996: 223).

Известно е, че изпълняваните от тях функции са тясно свързани със значенията на езиковите единици, тъй като изследването на функциите на една или друга форма обхваща анализа на нейното значение: „Значението е пряко подчинено на функцията, която съответната единица изпълнява; формира се в зависимост от предназначението на тази единица" (Арутюнова 1976: 44). Разграничаване на семантични и структурни функцииезик, някои лингвисти посочват сложна връзка между функциите семантичени н рагматичен. Последната може да се разглежда като особен аспект на семантичните функции, чиято същност е да предаде връзката между съдържанието на езиковите единици и изказването като цяло на участниците в речевия акт и неговите условия (Бойдарко 1987: 8- 9). Това означава, че е доста трудно да се направи ясна граница между семантика и прагматика. И двете (в една или друга степен) отразяват проникващия антропоцентризъм съвременна наука, широко използват екстралингвистични данни, трябва да вземат предвид контекстния фактор и т.н.

В нашето дисертационно изследване ние изхождаме от широкото разбиране на прагматиката като специална лингвистична дисциплина, като вземаме за основа обемната, многостранна дефиниция на Д. Кристъл. Прагматиката е наука, „изучаваща езика от гледна точка на лицето, което го използва, от гледна точка на подбора на езикови единици, ограниченията върху използването им в социалната комуникация и ефекта от влияние върху участниците в комуникацията“ (Crystal 1985: 240). "

При разбирането на прагматиката като част от езиковото значение, ние се придържаме към прагматично-семантичния подход, основан на концепциите на Ю.Д. Апресян, А. Вежбицкая, В.И. Заботкина.

Няма съмнение, че изследването на "вътрешната прагматика" (прагмасемантика) е една от задачите на лингвистичната прагматика и засяга нейната слабоизучена и дискусионна област (Горшунов 2000). Изследване, развитие и изясняване на вече установени прагматични компоненти, идентифициране на особеностите на тяхното взаимодействие и въздействие върху адресата в различни лексикален материал, представляват значителен теоретичен и практически интерес и играят важна роля в изследването на семантиката и прагматиката на езиковите единици.

Развитието на прагматиката вероятно още не е приключило. Все още има много спорни въпроси. Това са въпроси за връзката между прагматиката и

ср с по-късно определение от същия автор: „Прагматиката изучава факторите, които определят нашия избор на езикови средства в социалното взаимодействие и въздействието на тези избори върху другите“ (Кристал 1997: 120) социолингвистика, психолингвистика, стилистика, реторика, с които прагматиката има обширни области на пресичащи се изследователски интереси. Това е кръг от въпроси, свързани с това как човек се въплъщава в езиков знак, в изявление, живее и действа като езикова личност, използвайки езика за постигане на целите си, предава отношението си към действителността, съдържанието на съобщението, на комуникационни партньори, да им влияе.

Дълбока и точна в това отношение е тезата на Ж. Версурен, че измерението (измерението), което прагматиката е призвана да схване и разкрие, е пространство, създадено от връзката между езика и човешкия живот като цяло (Verschueren 1999: 6). ).

Историята на термина "прагматика" (на гръцки "pragma" - бизнес, действие) обикновено се проследява до К. Морис, който отделя в семиотиката, теорията на знаковите системи, областта на прагматиката заедно с области на семантиката и синтактиката.Както всяка наука, прагматиката има свой обект, предмет, предмет и метод на изследване. Обект на изследване на прагматиката може да бъде речев акт, дума, текст или съвкупност от текстове. По-късно терминът "прагматика" започва да се използва в лингвистиката, но не получава еднозначно тълкуване сред лингвистите.

Прагматиката се разбира като наука за използването на езика, наука за езика в контекста или наука за контекстуалността на езика като феномен, изучаване на езика (или всяка друга система за комуникация) от гледна точка на преследваните цели, различните начини за постигането им и условията, при които се постигат тези цели.теория на тълкуването на речеви действия, изучаване на езикови средства, които служат за обозначаване на различни аспекти на контекста на взаимодействие, в който е изразено предложението. В руската лингвистика прагматиката се разбира и като теория, която изучава прагматичните параметри на литературната комуникация [Арутюнова 1981], както и текста в неговата динамика, съотнесена с „Аз”-а на човека, който създава текста [Степанов 1981, 1985]. ].

Прагматиката се разглежда като "смисъл минус условия на истина"; това е полето на изследване на онези аспекти на значението, които не са обхванати от семантичната теория. Прагматиката се разбира като теория за речево въздействие [Кисельова 1978]. Целта на прагматиката се вижда в изучаването на езика като инструмент на човешката социална практика [Сусов 1974].

Т. ван Дайк смята, че компетентността на прагматиката включва идентифицирането на системи, които характеризират езиковата форма, значение и дейност. Според Т. ван Дайк, в най-теоретизирания и абстрактен смисъл, прагматиката е призвана да извърши спецификацията на (теоретично допустимите) условия за (теоретично допустимата) пригодност на (теоретично допустимите) структури на изказване. Емпиричните задачи на теорията на прагматиката включват разработването на когнитивен модел на производство, разбиране, запаметяване на речеви действия, както и модел на комуникативно взаимодействие и използване на езика в конкретни социокултурни ситуации.

Сериозно затруднениесе крие във взаимното дефиниране на понятията прагматика и семантика. Според Г. В. Колшански: „... Всяка формация на речта е резултат от концептуалната обработка на някакъв когнитивен акт, който е неизбежен и дава на всяко смислено изявление когнитивен характер, обикновено приписван на семантиката в широкия смисъл на думата. В тази връзка е съвсем разбираем стремежът на лингвистите да не отделят фактора на прагматичното функциониране на езика като цяло от неговата субстантивна природа и по този начин да включат прагматиката само като компонент в единната семантика на езиковите комуникативни единици” [Колшански 1985]. : 175].

Колкото и разнообразни да са вариантите за дефиниране на прагматиката, основното в тях може да се счита, че произлизат от схемата на Ч. Морис. Едно от свойствата на знака е връзката между знака и неговия потребител - човек. Човешкият фактор е признат за водещо понятие на прагмалингвистиката [Арутюнова 1981; Булыгина 1981; Гак 1982; Степанов 1981, 1985 и др.]. Прагматиката изучава всички условия, при които човек използва езикови знаци. В същото време условията за използване се разбират като условия за адекватен избор и използване на езикови единици с цел постигане на крайната цел на комуникацията - въздействие върху партньор.

В съвременните изследвания на прагматиката все по-голямо значение придобива субектът на дейност, който в прагматиката се разбира като „абстрактен индивид (виртуален комуникант), който е носител на комплекс от характеристики: психологически, социални, географски, национално-културни и др. .” [Багатурия 2004: 4]. Тази нарастваща роля на предмета определя избора на методи за изучаване на предмета на прагматиката. Ако разглеждаме прагматиката като наука, която изучава езика от гледна точка на „човек, който го използва от гледна точка на избора на езикови единици, ограниченията за тяхното използване в социалната комуникация и ефекта от влияние върху участниците в комуникацията“, тази наука трябва да се класифицират като практически, основани на индуктивни методи за познание на реалността.

Дейността по предаване на знаково съобщение от човек се изучава преди всичко като процес комуникации- целият цикъл от научни дисциплини, изучаващи комуникацията, и първите трудности при идентифицирането на действителния предмет на прагматиката възникват именно в това отношение. Според В. Г. Колшански: „ Прагматиката, като клон, който изучава връзката на човек с езиков знак, обикновено губи значението си поради причината, че връзката със знака не може да бъде разкрита на език, различен от използването на самия език, който по дефиниция е комуникация . (подчертано от нас - А.Ш.)[Колшански 1985: 131].

Често прагматиката се определя чрез фокусиране върху конкретен аспект на комуникационния процес, а именно въздействието или комуникативно въздействие: „... Независимо от дефиницията на прагматичния аспект на езика, лайтмотивът остава, като правило, идеята за влияние върху човешкото поведение с помощта на словесни средства на речеви актове“ [пак там: 139]. В момента комуникативно въздействиеразбирано доста широко. Например Ю. К. Пирогова отделя „... Въздействие върху съзнанието чрез изграждане на рационална аргументация (убеждаване), или въздействие върху съзнанието чрез емоционалната сфера, или въздействие върху подсъзнанието (внушение), въздействие с помощта на вербални (вербални) или невербални средства“ [Пирогов 2001: 541]. Въздействие на речтав лингвистиката се изучава във връзка със социалната страна на вербалното общуване [Федорова 1991: 46-50]. В теорията на речевата комуникация речевата комуникация се представя като двустепенна формация, включваща социологическо и комуникативно ниво. Съдържанието на комуникативното ниво се разбира като обмен на информация между събеседниците, а съдържанието на социологическото ниво предполага социалното взаимодействие на участниците в комуникацията, тоест тяхното влияние върху поведението, начина на мислене и чувствата на всеки друго. Речевото влияние се определя като речева форма на социалното въздействие на говорещия върху слушателя в процеса на общуване [пак там: 46].

Струва ни се, че изборът на предмет на прагматика на текста на СУК не може да се основава изцяло на понятието „въздействие“. Редица материали за СУК наистина имат за цел да повлияят на знанията, нагласите и намеренията на адресата, целта е да се постигне необходимата за адресата оценка на определен обект - например в реклама или при призив за гласуване на избори . Но в текстовете на СУК могат да се открият и други цели, например водещата цел е да се „забавлява” или да се плени реципиентът (да се привлече вниманието му). В този случай публикацията задоволява психическата потребност на субекта от забавление, като стимулира потенциалния купувач да закупува все нови и нови издания на развлекателните материали на изданието. Така в материалите на „жълтата“ преса в субекта на получателя се инициират онези състояния, за които той е готов да плати: страх, изненада, възмущение, нежност и др. По подобен начин художествените и публицистичните текстове апелират към „чувството за красота”, за което с достатъчна степен на вероятност публиката на тези текстове има разбиране. В такива случаи има приблизително същите основания да се говори за „въздействие върху знанията, нагласите и намеренията на адресата ...“, както в случая с излъчването на футболен мач по канала SMK. Възможно ли е да се открият признаци на комуникативно въздействие в развлекателни или в художествени и публицистични материали? В широк смисъл, разбира се, възможно е. В същото време рискуваме отново да се върнем към изчерпателни дефиниции (в този случай концепцията за въздействие) и да загубим предмета на изследване, който трябва да приложим на първо място. методически задачи. Например, според Г. Г. Матвеева: „... Влиянието или управлението на поведението е целта всякакви (подчертано от нас - А.Ш.)комуникация. Комуникацията е социална ориентация, в която се реализира адаптивната функция на човек. Свежда се до функционални регулаторни цели. Тези цели имат пряко и косвено въздействие. При последните се осъществява и управление, например при информиране, при изразяване на оценка, взаимоотношения, въз основа на които може да се вземе решение и за регулиране на поведението” [Матвеева 1984: 44].

Според нас е недопустимо да се смесват понятията влияние и патос на СУК. Както отбелязва Ю. В. Рождественски: „... Патосът на средствата за масова информация е да направят съобщенията за събития (по принцип несвързани с получателя) интересни за него, така че той да стане духовно ангажиран в тези събития. Следователно масовата информация подбира съобщения за събития и ги коментира така, че нейните материали да предизвикват интерес. Това се постига чрез предизвикване на емоции, любопитство, страх и състрадание. Целта на формирането на такава емоция е да се включи получателят на информацията в масови действия” [Рождественский 1997: 593].

От своя страна, под въздействието „в посоката, необходима за адресата“, е по-правилно да се разбира такова въздействие, което е изградено около конкретен обект на реалността. В същото време адресантът постига добре дефинирана мисъл, емоция или линия на поведение на адресата по отношение на този обект на действителността.

Така на практика концепцията за комуникативно въздействие се свързва по-ефективно с онези текстове на СУК, чието съдържание е предназначено да формира картина на света на реципиента, неговото разбиране за реалността по отношение на избрания обект или група. на обекти. Както ще покажем по-късно, тези текстове могат да бъдат групирани според общи цели: те могат да бъдат насочени към убеждаване, подтикване или реклама. В тези случаи (текстове) прагматиката на текста на СУК е свързана с влияние, но като понятие той има своя обективна реалност. Доказателство за това може да бъде например прагматиката на текстовете на СУК с водещи цели информиране или забавление на аудиторията, които нямат ясно изразен потенциал за въздействие.

Нека разгледаме още една възможност при дефинирането на предмета на прагматиката. Да кажем изследване прагматичен характеристики на езиковите знациевентуално в езикова система. Естественото развитие на такава логика е изборът като предмет на изследване на определен езиков материал, езикови единици, които имат тясно прагматична ориентация.

Такива единици са отделени от Л. А. Киселева: „...Прагмемите са единици различни ниваезици, които имат прагматична цел: те са предназначени да регулират човешкото поведение. Те включват преди всичко тези езикови единици, които отразяват явленията от емоционално-волевата сфера на психиката на адресата и чрез нея - неговата интелектуална сфера (чрез емоционално внушение, заразяване, убеждаване) с цел регулиране на поведението му. Това са единиците, които принадлежат към сърцевината на прагматичното поле (например емоционални, емоционално-оценъчни и мотивиращи междуметия, както и емоционално-оценъчни думи като отвратително, чудесно, скъпа моя, прекрасна и др.) ”[Кисельова 1978: 106].

Тази насока на изследване се критикува главно за изолацията на разглеждането на езиковите единици, за липсата на израз на връзката между знака и реципиента. Както отбелязва В. Н. Комисаров: „... Не могат да бъдат дадени доказателства, че така наречените емоционални думи (от вида, даден в такива произведения - грозен, възхитителен и т.н.) са директно адресирани до чистата психика, заобикаляйки нормалното интелектуално възприятие на такива единици, имащи очевидно концептуално съдържание, свързано с категорията на т. нар. оценъчно като продукт на човешката умствена дейност” [Комисаров 1990: 140–141].

Отделяйки отделна област в сферата на езика (в края на краищата езикът, за разлика от речта, има абстрактна и системна същност), изследователят получава необходимата системност, логика и предвидимост на функциите на определени знаци и връзките между тях, които пряко следват от системността и логиката на езика като явление. Но в рамките на този подход изследователят е принуден да отвори отношенията между знаците(в рамките на езиковата система), а не връзката между знак и реципиент – откъдето идва определението за прагматика. По този начин, подчертавайки предмета на прагматиката в системата на самия език, в подчертаването на специалните езикови знаци, според нас неправилно.

И така, нека да определим собствената си позиция в изследването предмет на прагматиката: а не прагматичният аспект на езика, а прагматичният аспект на конкретен текст, включен в съвкупността от текстове, в нашия случай СУК. В съвкупността от текстове на СУК е необходимо да се откроят намеренията на автора, които са устойчиви, повтарящи се нива на въздействие и, разбира се, езикови инструментикоито успешно изпълняват установения набор от цели и задачи. Факторът за успех на езиков знак в контекста на изпълнението на набор от цели и задачи на конкретен текст ви позволява да останете в рамките на връзката „знак-реципиент“, а не да се ограничавате до чисто абстрактни отношения на знаците в езиковата система.

Сама по себе си логиката на обособяване на предмета на прагматиката в зависимост от сферата на използване на текста (в социалната практика) не е нова. Както пише G.V. Kolshansky: „... Ако разбираме постигането на всяка цел - практическа, теоретична, физическа, интелектуална и т.н. от прагматиката на вербалната комуникация, тогава можем до известна степен да говорим за характеристиките на използването на човек от езиков знак, но само, очевидно, в смисъла на "успешен" или "неуспешен" е била реализирана комуникативната цел. Такъв успех на вербалната комуникация може да се определи както за отделен речев акт, така и за определена социална група като цяло. Въпросът за целесъобразността на разработването на критерии за "прагматичен успех" на речевия акт може да бъде разрешен само в чисто приложен план и във връзка със специфични области на човешката езикова комуникация » (подчертано от нас - А.Ш.)[Колшански 1985: 149].

Когнитивната лингвистика е тясно свързана с комуникативната прагматика и теориите за дискурса. По отношение на тези теми тя рязко се различава от структурната лингвистика. Ако за структурната лингвистика беше достатъчно да постулира съществуването на езика като вид абстрактна мрежа от взаимозависимости, то за когнитивната лингвистика фокусът е не само върху езика в неразривното единство на неговата форма и субстанция, но и върху едно по-висше единство – единството на езика и действащия човек реалния свят, мислещ и знаещ, общуващ със себеподобните.

Структурната лингвистика, статична по своята същност, в познанието на езика идва от такива езикови обекти като думата и нейните граматична форма, изречение, текст; Езиковата прагматика, основана на когнитивната лингвистика, изхожда от човека, неговите потребности, мотиви, цели, намерения и очаквания, от неговите практически и комуникативни действия, от комуникативни ситуации, в които той участва или като инициатор и лидер, или като изпълнител на "вторите" роли.

Дисциплини като анализ на дискурса и анализ на разговор, който се развива в него (т.е. спонтанен устна реч) се ръководят от настройките на парадигмата на дейността. За представителите на тази парадигма езикът не е ценен сам по себе си и не се изучава сам по себе си. Той е онтологично и епистемично включен в човешка дейност, като е едновременно един от най-важните инструменти и един от най-ценните продукти. По този начин, комуникативен подходкъм езика може да се определи като антропологичен подход.

Въвеждането на антропологичния подход към езика в лингвистиката засили интереса към личните и социални аспекти на дейността на говорещия. Стана ясно, че прилагането и интерпретацията на определени стратегии на вербалната комуникация не може да се осъществи без да се вземат предвид разнообразните лични и социокултурни аспекти на комуникативния процес. От позиции модерни подходидискурсът е сложен комуникативен феномен, който включва в допълнение към текстовете екстралингвистични фактори (познание за света, мнения, нагласи, цели на адресата), необходими за разбирането на текста.

Как се отчитат когнитивните процеси в комуникативната прагматика? В натурален езикова комуникация- с огромно и безкрайно разнообразие от фактори, които го определят - броят на възможните "ходове" просто не може да бъде изчислен. Най-трудната задача за тяхното изчисляване се опростява само чрез идентифициране на някои повтарящи се, най-типични структури, които предизвикват определени когнитивни реакции. Много изследователи разграничават два основни аспекта в когнитивния анализ на дискурса - структурите на представяне на знанието и начините за неговата концептуална организация.


По този начин, както за комуникативната прагматика, така и за когнитивната психология и изкуствения интелект, темата за представяне на знания е също толкова важна. Всяко комуникативно действие в рамките на спонтанен или организиран дискурс е реализация на определени комуникативно-когнитивни структури. Такива когнитивни структури са рамкови модели, съдържащи информация от социокултурен характер или знания за това, което Витгенщайн нарича „езикови игри“.

За разбирането на текстове – както писмени, така и устни – има значение как „авторът“ на съобщението и реципиентът „моделират“ знанията си за света. Комуникацията е възможна само ако в съзнанието на всеки говорещ, в неговата картина на света има определени семантични, информационни „кондензации“ („рамки“, „ментални модели“, „сценарии“, „ситуационни модели“). Още през 30-те години на ХХ век. Ф. Бартлет даде дефиниция на понятието "информационна схема", представена в паметта схема. Това понятие е навлязло и в когнитивната психология. Както вече беше споменато, в компютърната лингвистика се използват понятията "сценарий", "кадър", в лингвистиката и социологията се използва и понятието рамка. Рамките допринасят за адекватна когнитивна обработка на типични ситуации, кохерентност на текста, предоставят контекстуални очаквания и правят възможно предсказването на предстоящи събития въз основа на предишни такива. Така комуникативно-когнитивната прагматика предлага някои начини за изследване на това, което прави текстовете солидни и последователни за възприемащия.

При описанието на едно речево действие се вземат предвид не само общите типични схеми на практическа и комуникативна дейност, но и типичните схеми на организация вътрешен мирговорещият, с други думи, наборът от когнитивни структури, представени в неговата картина на света (социално и етнокултурно обусловени, но индивидуални по отношение на начина на съществуване). Генерирането и разбирането на речта се основава не само на абстрактно знание за стереотипни събития и ситуации - както в ментални модели, сценарии и рамки - но също така и на личните познания на носителите на езика, натрупвайки техния предишен индивидуален опит, нагласи и намерения, чувства и емоции. Т. ван Дайк формулира това по такъв начин, че хората действат не толкова в реалния свят и не говорят толкова за него, колкото за субективни модели на явления и ситуации от реалността. В тази връзка можем да цитираме от книгата на известния руски лингвист и филолог Б. Гаспаров: „Уникалността на жизнения езиков опит на всеки от нас през цялото време ни отдалечава един от друг” (Б. Гаспаров. Език). , памет, образ: Лингвистика на езиковото съществуване. М., 1996. С. 16).

Въпреки това винаги някак се разбираме - правилно или не; ориентацията към разбиране е основно условие на човешкото общуване. В същото време успешното разбиране се осъществява не само когато хората се опитват да разберат значението на думите и фразите в изявлението, но преди всичко, когато са фокусирани върху намерението на събеседника, върху това, което той иска да изрази, какво речево действиепроизвежда.

Първият опит да се погледне речта през призмата на действията на носителя на езика се изразява в теорията на речевите актове, при формирането на които възгледите на такива учени като Дж. Остин, Дж. Сърл, П. Грайс играят роля важна роля.

В теорията на речевите актове, формулирана за първи път от Дж. Остин, основната единица е "речев акт" - квант на речта, който свързва едно намерение ("иллокуция"), завършен минимален сегмент от речта и постигнат резултат. В основата на тази теза стои идеята, че минималната единица на човешката комуникация не е изречение или друг израз, а действие - извършване на определени действия, като твърдение, въпрос, заповед, описание, обяснение, извинение, благодарност, поздравление.

Идеите на Дж. Остин са развити в работата на Дж. Сърл „Речеви актове“, в която говоренето се разглежда като ангажиране определени действия. Речта, според Сърл, има перформативен характер, нейната цел е или промяна в околен святговорител, или в съзнанието на събеседника. „Илокутивното намерение“ на говорещия е това, което говорещият се опитва да предаде с помощта на езика и съответно същността на комуникационния процес е да разгадае това намерение. За да се обясни разбирането / неразбирането в процеса на комуникация, беше предложен терминът - "успешен илокутивен акт", чиято същност е да се постигне определен резултат, в името на който е замислен и осъществен.

Изследователят на комуникацията трябва да знае какво точно допринася за правилното възприемане на намеренията на говорещия от слушателя – а това до голяма степен е всичко, което остава извън словесния израз и въпреки това се оказва неразделна част от изказването. Това „задкулисно” съдържание се отнася както до индивидуалния опит на индивидите, участващи в комуникацията, така и до „фона” на знанието, който ги обединява или, напротив, разделя.

Общопризнато е, че различни видове езикови общности и социокултурни слоеве на обществото се характеризират с особеностите на използването на езика. В процеса на овладяване на контекста на речта участниците в речевото събитие трябва да имат общи познания както от езиков, така и от исторически, културен и социален характер. И.В. Губенет определя фоновите знания като социокултурен фон, който характеризира възприеманата реч. В. С. Виноградов подчертава националния аспект на фоновите знания, без изучаването на които е невъзможно да се постигне пълно и правилно разбиране при обмена на информация. За успеха на комуникацията е важно сходството на манталитета, което ви позволява да постигнете минимални промени в знанията в процеса на комуникация. Следователно изследователят на комуникацията трябва да вземе предвид „основното знание“, което е взаимното познаване на реалностите на говорещия и слушащия, което е в основата на езиковата комуникация.

Понастоящем има шест основни области в изследването на дискурса: теория на речевите действия, интерактивна социолингвистика, етнография на комуникацията, прагматика, разговорен анализ и анализ на вариациите. Източниците за формиране на модели на разбиране и методи за анализ на дискурса в тези подходи (с всички многобройни различия между тях) бяха постиженията на такива дисциплини като лингвистика, антропология, социология, философия, теория на комуникацията, социална психология и изкуствен интелект.

Въпреки различията в тези подходи, в тях има нещо общо и обединяващо, което същевременно е общо във всички когнитивно ориентирани лингвистични изследвания. Това е антропоцентричността на езика, по-точно практическите, теоретични и културни знания, опит, вградени в езика, усвоени, осмислени и пряко или косвено вербализирани от носителите на езика, и в крайна сметка възстановени - в резултат на семантичен и концептуален анализ - под формата на езикова картина на света.