Biografier Kjennetegn Analyse

David Kolbs læringssyklus: en introduksjon. De vises i skjemaet

» Andrew Hunt og David Thomas er sannsynligvis kjent for alle som er involvert i programmering, mange av dem hovedsakelig fra omtaler i samlinger og sitater i mer moderne artikler. Med tanke på at denne samlingen praktiske råd for utviklere vil snart feire sitt tjueårsjubileum, er det respektabelt at det fortsatt er sitert som en kilde til verdifull informasjon. Hemmeligheten er enkel: Forfatterne, selv om de la vekt på den praktiske anvendeligheten av tipsene deres, snakket for det meste om de grunnleggende prinsippene for å konstruere en arbeidsflyt. Mange av de tekniske punktene som er nevnt i teksten er riktignok utdaterte, men de grunnleggende tilnærmingene til utvikling, testing, interaksjon innad i teamet og med publikum er fortsatt relevante.

Nedenfor finner du en oppsummering av de fire første kapitlene; de snakker om forfatterens konsept for selvopplæring, det grunnleggende om en pragmatisk tilnærming til programmering og reglene for valg av verktøy. Boken er veldig praktisk for "punkt-for-punkt" lesing: materialet presenteres i form av separate avsnitt-tips, utstyrt med kryssreferanser. Utover omfanget av denne oppsummeringen er det eksempler fra spesifikke språk, analyser av saker fra forfatterens praksis, de samme lenkene, øvelser for konsolidering og noen morsomme analogier som liver opp teksten - så jeg anbefaler at du leser originalen hvis noen av oppgavene interesserer deg. Liker å lese!

Tips 1: Ta vare på håndverket ditt

Det er ingen vits i å utvikle programvare hvis du ikke bryr deg om kvaliteten på arbeidet. Dette må gjøres ikke bare på kort sikt, i forhold til konkrete prosjekter, men også på lang sikt – ved å utvikle riktig tilnærming og arbeidsprinsipper.

Hva gjør en pragmatisk programmerer?

  • Forutseende oppfatning og rask tilpasning. Pragmatikere har et instinkt for nyttige teknologier og metoder som de gjerne tester ut i praksis. De er i stand til raskt å gripe ny informasjon og integrere den med eksisterende kunnskap.
  • Nysgjerrighet. Pragmatikere stiller spørsmål, samler inn små fakta og er interessert i andres erfaringer.
  • Kritisk refleksjon. Pragmatikere tar ikke noe for gitt uten først å sette seg inn i fakta.
  • Realisme. Pragmatikere prøver å finne hvor fallgruvene er i alle problemer de møter.
  • Allsidighet. Pragmatikere streber etter å bli kjent med flere teknologier og operativsystemer og jobber for å følge med i tiden.
Tips 2: Tenk på jobb

Mens du skriver kode, bør du konsentrere deg fullt ut om det du gjør. Gå aldri i autopilotmodus. Tenk hele tiden, reflekter kritisk over arbeidet ditt i sanntid. Dette kalles bevisst programmering. Å mestre det vil ta litt tid og krefter, men belønningen vil være vanen med å stadig gjøre små forbedringer, forbedre kvaliteten på koden generelt og redusere utviklingstiden.

Kapittel 1: Pragmatisk filosofi

Pragmatisk programmering stammer fra filosofien om pragmatisk tenkning. Dette kapittelet skisserer hovedbestemmelsene.

Tips 3: Presenter løsninger på problemer, ikke unnskyldninger.

En av hjørnesteinene i pragmatisk filosofi er ideen om å ta ansvar for deg selv og dine handlinger. En pragmatisk programmerer antar at karrieren og arbeidsresultatene hans først og fremst avhenger av ham, og er ikke redd for å innrømme uvitenhet eller feil.

Å akseptere ansvar for resultater krever vilje til å være ansvarlig. Hvis du gjør en feil (og det gjør vi alle), innrøm det ærlig og prøv å komme med forslag til forbedringer. Du bør ikke flytte skylden til kolleger, partnere, verktøy eller finne på unnskyldninger - dette er uproduktiv bortkastet tid. Det samme gjelder situasjoner når du står overfor krav du ikke kan møte: ikke bare si: «Dette er umulig», men forklar hva som skal til for å redde situasjonen (ekstra ressurser, omorganisering osv.).


Tips 4: Ikke la knuste vinduer være igjen

Entropi er et fysikkbegrep som refererer til nivået av "uorden" i et system. Entropi i universet har en tendens til et maksimum, og det samme mønsteret observeres i utviklingen. Å øke graden av uorden i programmer kalles programkorrupsjon i fagsjargong. Det er mange faktorer som bidrar til å skade programmene, men den viktigste av dem er kulturen for å jobbe med prosjektet.

I følge teorien om knuste vinduer har slurvete beslutninger og problemområder en tendens til å formere seg. Ikke la "knuste vinduer" (dårlig design, feil, kode av lav kvalitet) være uten tilsyn. Hvis du ikke har tid til å foreta en skikkelig reparasjon, kommenter i det minste det feilaktige fragmentet eller vis en "Under Construction"-melding, eller bruk dummydata. Det er nødvendig å ta i det minste den minste handling for å forhindre ytterligere ødeleggelse og vise at du har kontroll over situasjonen. Uforsiktighet akselererer forverringen raskere enn noen annen faktor.

Tips 5: Vær en katalysator for endring

Hvis du ser hva som må gjøres, ikke vent på initiativ fra andre. Lag en plan, regn ut detaljene – folk vil være mer villige til å støtte deg hvis de ser at arbeidet allerede har begynt.

Tips 6: Se etter endringer

Hold øynene på det store bildet av hva som skjer. Observer hele tiden hva som skjer rundt deg, og ikke bare hva du personlig gjør. De fleste kodekatastrofer starter med små ting som akkumuleres til en dag prosjektet går for fullt. Trinn for trinn avviker systemet fra kravene, koden er overgrodd med "lapper" til ingenting er igjen av originalen. Ofte er det de akkumulerte små tingene som fører til ødeleggelse av moral og lag. Men hvis du fanger denne prosessen på tidlige stadier og ta grep umiddelbart (se forrige avsnitt), kan du slippe unna med lite blod.

Tips 7: Gjør kvalitet til et krav

Kvalitet bør være en omsettelig klausul i kontrakten du inngår med brukere. Selvfølgelig skal det ideelt sett være så høyt som mulig, men ofte vil du komme i situasjoner hvor du må inngå kompromisser på grunn av stramme tidsfrister eller mangel på ressurser. Og her er det nyttig å venne seg til å lage akseptable programmer. "Akseptabel" betyr ikke "badass": du gir rett og slett brukere medbestemmelse i å bestemme hvilken terskel for kvalitet som er akseptabel. Overraskende nok vil mange foretrekke å bruke programmer med noen mangler i dag, fremfor å vente et år på utgivelsen av en multimedieversjon.

I tillegg forbedres programmene noen ganger ved å redusere inkubasjonstiden. Det er et problem med "overpolering" i utviklingen - eksterne restriksjoner hjelp til å stoppe i tide i jakten på perfeksjon.

Tips 8: Invester regelmessig i kunnskapsporteføljen din

Kunnskapsporteføljen refererer til alt en programmerer vet om utvikling innen sitt felt, samt erfaringen han har samlet. Kunnskapsporteføljestyring er veldig lik finansiell porteføljestyring:

De generelle prinsippene er:

  1. Invester med jevne mellomrom. Selv om investeringen er liten, er denne vanen gunstig i seg selv.
  2. Invester på ulike områder. Hvordan flere områder du fanger, jo mer verdi representerer du. Som et minimum må du kjenne til de spesifikke teknologiene du for øyeblikket jobber med, innvendig og utvendig. Men ikke stopp der. Etterspørselen etter teknologi og dens anvendelighet er i konstant endring. Jo flere verktøy du har i arsenalet ditt, jo lettere blir det for deg å tilpasse deg.
  3. Vei risikoen. Teknologier eksisterer i et visst område - fra risikofylt og potensielt høyprofitt til lavrisiko og lavprofitt. Å investere alt i risikable alternativer, hvis rate plutselig kan kollapse, er det ikke beste ideen, men også overdreven forsiktighet, som ikke lar deg dra nytte av lønnsomme muligheter. Det er bedre å holde seg til midtlinjen.
  4. Kjøp lavt, selg høyt. Å mestre en banebrytende teknologi før den blir populær er en utfordring, men det er verdt det: tidlige brukere går ofte videre til fantastiske karrierer.
  5. Gjennomgå og rebalanser regelmessig. Programmering er en veldig dynamisk bransje. Vær forberedt på å periodisk gjennomgå eiendelene dine kritisk: forlat utdaterte alternativer, gjenopprett de som har steget i pris, og fyll tomme nisjer.
Læringsprosessen vil utvide tankegangen din, åpne for nye muligheter og nye kreativitetsmuligheter. Hvis du lærer noe nytt, prøv å bruke den kunnskapen til prosjektet du jobber med, så langt teknologien din tillater det.

Tips 9: Analyser kritisk det du leser og hører.

Du må sørge for at kunnskapen i porteføljen din er nøyaktig, at den ikke blir forvrengt av de som drar nytte av den, og at verdien ikke blåses opp av hype. Vokt dere for fanatikere som insisterer på at deres dogme gir det eneste riktige svaret - det kan godt hende det ikke gjelder for prosjektet ditt.

Tips 10: Det er viktig hva du skal si og hvordan du skal si det

Mesteparten av en programmerers dag går med til å kommunisere – med teamet, ledelsen, brukerne, fremtidige generasjoner av utviklere gjennom dokumentasjon og kommentarer i koden. Derfor er det nødvendig å mestre kunsten sin. Jo mer effektiv denne kommunikasjonen er, jo større er din evne til å omsette ideer til handling.

Prinsipper for effektiv kommunikasjon:

  1. Vet hva du vil si: Planlegg hva du skal si på forhånd, skisser en disposisjon og et par strategier for hvordan du best kan formidle poenget ditt. Dette fungerer både for utforming av dokumenter og viktige forhandlinger.
  2. Kjenn publikummet ditt: Du kommuniserer kun hvis du formidler informasjon. For å gjøre dette må du være klar over behovene, interessene og evnene til publikum. Presenter informasjon på en måte som er tydelig og interessant for lytteren.
  3. Velg riktig øyeblikk: Viktig poengå forstå publikum - forstå dets umiddelbare prioriteringer. Det du sier skal ikke bare være relevant innholdsmessig, men også betimelig. Spør om nødvendig direkte: "Er det praktisk å snakke om ... nå?"
  4. Velg stilen du ønsker: Bestem presentasjonsstilen for materialet i samsvar med publikums krav: noen foretrekker bare fakta, andre foretrekker detaljer, eksempler og lange introduksjoner. Igjen, hvis du er i tvil, sjekk.
  5. Møtt av klær: Vet hvordan du "serverer" ideene dine på riktig måte. Alt i sluttdokumentet må kontrolleres: stavemåte, layout, tekststiler, utskrift.
  6. Engasjer publikum: Når det er mulig, involver fremtidige lesere i dokumentopprettingsprosessen. Bruk ideene deres. På denne måten vil du få bedre resultater og styrke dine arbeidsforhold.
  7. Vet hvordan du lytter: Delta i samtale med folk ved å stille spørsmål eller få dem til å oppsummere det du sa. Gjør møtet til en dialog, og du vil bedre formidle det du ville si, og kanskje lære noe selv samtidig.
  8. Ikke avkort samtalen: Svar alltid på forespørsler og meldinger med minst et løfte om å komme tilbake til saken senere. Hvis du holder folk orientert, føler de at de ikke er glemt og er mye mer tilgivende for sporadiske feil.

Kapittel 2: Pragmatisk tilnærming

Det er en rekke tips og triks som gjelder på alle nivåer av programvareutvikling – ideer som kan betraktes som aksiomer, prosesser som er nesten universelle. Dette kapittelet gir en oversikt over disse ideene og prosessene.

Tips 11: Ikke gjenta deg selv

Hvert stykke kunnskap må ha en enkelt, entydig, pålitelig representasjon i systemet. Et alternativ er å presentere samme vare på flere steder. Dette er upraktisk: hvis noe redigeres på ett sted, må du umiddelbart gjøre endringer i alle de andre, ellers vil programmet kollapse under vekten av motsetninger. Før eller siden vil du glemme noe, det er et spørsmål om tid.

De fleste tilfeller av duplisering faller inn i en av følgende kategorier:

  • Tvunget duplisering. Utviklere føler at de ikke har noe valg - duplisering er nødvendig av noen eksterne årsaker: dokumentasjonsstandarder, kombinasjonen av flere plattformer med forskjellige miljøer, språk og biblioteker, spesifikasjonene til selve språket. I noen tilfeller må du bare godta det, men i andre kan du fortsatt finne løsninger ved å bruke filtre, aktive kodegeneratorer, metadata og riktig tilnærming til å kommentere.
  • Utilsiktet duplisering. Utviklerne skjønner ikke at de dupliserer informasjon. Dette oppstår vanligvis som følge av feil eller inkonsekvenser på et dypt nivå (for eksempel er det samme attributtet registrert i flere objekter), og eliminering krever omorganisering. I noen slike tilfeller kan prinsippet brytes av hensyn til ytelsen, men kun innenfor klassen.
  • Utålmodig duplisering. Utviklere dupliserer fordi de tror det er enklere. Dette skjer vanligvis ved å kopiere kodebiter. Alt kommer ned til selvdisiplin – ikke vær for lat til å bruke noen ekstra sekunder for å unngå hodepine i fremtiden.
  • Kollektiv duplisering. En informasjon dupliseres av flere medlemmer av samme utviklingsteam i løpet av arbeidet. Den vanskeligste saken når det gjelder både deteksjon og løsning. På et høyt nivå løses problemet gjennom en tydelig designløsning, et sterkt teknisk forsprang og en tydelig ansvarsfordeling. På modulbasis - gjennom aktiv kommunikasjon mellom utviklere: opprette grupper for kommunikasjon, opprette et offentlig sted i katalogen for lagring av tjenesterutiner og skript, oppmuntre til studie og diskusjon av andres kode.
Tips 12: Gjør programmet enkelt å gjenbruke

Prøv å skape et miljø hvor det er lettere å finne og gjenbruke eksisterende materiale enn å lage det selv fra bunnen av. Dette bidrar til å redusere risikoen for duplisering. Bare husk at hvis gjenbruk er vanskelig, vil ikke folk gjøre det.

Tips 13: Unngå interaksjoner mellom ikke-relaterte objekter

Denne regelen kalles også ortogonalitetsprinsippet. To eller flere objekter er ortogonale hvis endringer som gjøres på ett av dem ikke har noen effekt på de andre. Denne ordningen gir to store fordeler: økt produktivitet og redusert risiko.

Når endringer i systemet er lokalisert, reduseres utviklings- og testtiden. Når en liten selvstendig komponent er designet, implementert og testet, kan du ganske enkelt glemme det, i stedet for å gjøre endringer hele tiden ettersom nye deler av kode legges til koden.

Den ortogonale tilnærmingen oppmuntrer også til gjenbruk av komponenter. Jo mindre kobling det er i systemene, desto lettere er det å rekonfigurere eller reversere.

Risikoreduksjonen skyldes at feilaktige fragmenter er isolert og ikke påvirker hele systemet; Følgelig er det også enklere å fikse eller erstatte dem. Som et resultat blir systemet mer stabilt - problemområder forblir områder. Det hjelper også at testing på enhetsnivå vanligvis gjøres mer grundig.

Prinsippet om ortogonalitet bør ikke overholdes på nivået av individuelle teknologier, men bør dekke alle prosesser: fra design til valg av verktøy, fra testing til produktstyring. Det minimerer duplisering og gjør systemet mer fleksibelt og transparent.


Tips 14: Det finnes ingen endelige løsninger

Krav, brukere og maskinvare endres raskere enn vi utvikler programvare. Derfor må du alltid være forberedt på at enhver beslutning du tar (ikke bare innenfor koden, men også for eksempel når du velger et tredjepartsverktøy, et arkitektonisk mønster, en distribusjonsmodell) må vurderes på nytt i fremtiden under påvirkning av eksterne faktorer. Prinsippet om «minimum duplisering», prinsippet om frakobling og bruk av metadata gjør systemet mer reversibelt.

Tips 15: Bruk sporkuler for å finne målet ditt

For å utvide metaforen: når man lager et nytt produkt, opptrer utviklingsteamet ofte blindt, og jobber med ukjente teknikker, språk og biblioteker. Sluttresultatet kan forutsies enten ved harde prognoser, basert på en svært detaljert analyse av teknologier, eller ved å "spore" - lage en serie med forenklede, prøveversjoner, gradvis forbedrede fungerende versjoner for å sette sammen komponentene i systemet og teste hvordan de arbeide sammen.

Et alternativ til denne tilnærmingen - isolert utvikling av individuelle moduler, som i sluttfasen settes sammen og deretter testes på systemnivå - er mer tungvint og mindre praktisk. Blant annet gir sporingsmetoden deg en utkastversjon av produktet (som kan presenteres for brukerne for å vise dem essensen av prosjektet, interessere dem og få tilbakemeldinger); jevnere og mer fokusert integrasjon av ferdige nye moduler i miljøet og muligheten til umiddelbart å identifisere og enkelt eliminere feil i samhandling.

Tips 16: Lag prototyper for å lære av dem

I motsetning til testversjonene beskrevet ovenfor, har prototyper et smalere fokus: de er laget for å teste flere spesifikke egenskaper og krever betydelig mindre ressurser. Alle detaljer som ikke er relevante for det aktuelle problemet er utelatt, selv om de er ekstremt viktige for driften av systemet som helhet. Når du arbeider med en prototype, kan korrekthet, fullstendighet, pålitelighet og stil neglisjeres.

For prototyping er det ikke nødvendig å lage en fullverdig arbeidsapplikasjon; noen ganger er bare et diagram på papir eller et brett nok. Hvis det fortsatt er nødvendig, er det fornuftig å velge et språk veldig høy level– over nivået til språket som brukes av resten av prosjektet (et språk som Perl, Python eller Tel). Et skriptspråk på høyt nivå lar deg utelate mange detaljer (inkludert å spesifisere datatyper) og fortsatt produsere et funksjonelt, om enn ufullstendig og tregt program.

Tips 17: Skriv kode med applikasjonen i tankene

Programmeringsspråk påvirker måten du tenker på et problem og brukeropplevelsen. Hvert språk har sine egne egenskaper som fører til visse løsninger eller omvendt forhindre dem. En løsning i Lisp-stil er forskjellig fra en C-løsning, og omvendt. Det motsatte er også sant – et språk som reflekterer det spesifikke ved problemet du jobber med kan på sin side tilby en løsning innen programmering.

Ved å lytte til brukerkrav kan du forstå hvilket språk som er lettest å oversette dem til på et høyere, abstrakt nivå. Ulike typer brukere (endelig - målgruppen du gjør prosjektet for, og sekundær - ledere, fremtidige generasjoner av utviklere) kan kreve generering av sine egne minimiljøer og språk.

Tips 18: Anslå for å unngå overraskelser

Å gjøre grove estimater er en ferdighet, og en vesentlig del av den ferdigheten er å kunne bestemme akseptabel nøyaktighet basert på kontekst. Måleenheten du velger bør også gjenspeile graden av nøyaktighet (sammenlign: en oppgave vil ta to uker og en oppgave vil ta 75 arbeidstimer).

Vurderingen gjennomføres i flere trinn. Først kommer vi til poenget spørsmålet stilt og vurdere skalaen fagområde; Dessuten antyder ofte selve formuleringen av spørsmålet et svar. Deretter bygges en modell av problemet - en omtrentlig sekvens av stadier som må gå gjennom for å løse det. Modellen er dekomponert i komponenter, for hver av disse er det spesifisert en signifikansparameter. Basert på disse parametrene og omtrentlige verdier blir det gjort beregninger. Det siste trinnet utføres i etterkant - prognosen sammenlignes med den faktiske tilstanden, og ved alvorlige avvik jobbes det med å rette opp feilene.

Tips 19: Sjekk prosjektplanen hvis koden krever det

Dette gleder kanskje ikke ledelsen, som vanligvis ønsker at tallene skal oppgis før prosjektet starter og ikke kan endres. Du må formidle til dem at tidsplanen for å fullføre oppgaver vil bli bestemt av produktiviteten til teamet og omstendighetene. Ved å formalisere denne prosedyren og avgrense tidsplanen under hver iterasjon, kan du gi ledelsen de mest nøyaktige tidslinjeanslagene for hvert trinn.

Kapittel 3: Reiseverktøysett

Verktøy er et middel til å forbedre talentet ditt. Jo bedre de er og jo bedre du mestrer dem, jo ​​mer kan du gjøre. Start med et universelt "go-to"-sett med verktøy som du vil bruke for alle grunnleggende operasjoner. Dette settet vil vokse etter hvert som du får erfaring og oppfyller spesifikke krav.

Tips 20: Lagre informasjon i vanlig tekstformat

Det beste formatet for permanent lagring av kunnskap er enkel tekst, som lar deg behandle informasjon både manuelt og ved hjelp av tilgjengelige verktøy. Problemet med de fleste binære formater er at konteksten som trengs for å forstå dataene er atskilt fra selve dataene. Og med ren tekst som kan leses uten dekryptering, kan du lage en selvdokumenterende datastrøm, uavhengig av programmet som genererte den.

Ren tekst har to store ulemper: (1) den kan ta opp mer lagringsplass enn et komprimert binært format, og (2) fra et beregningsmessig synspunkt kan tolking og behandling av en ren tekstfil være tregere. Avhengig av søknaden kan det hende at en eller begge av de ovennevnte situasjonene ikke er akseptable. Men selv i disse tilfellene er det akseptabelt å lagre metadata som vil beskrive kildedataene i ren tekstformat.

Enkel tekst er:

  • Sørg for at data ikke blir utdatert
  • Kortere vei til målet
  • Enklere testing
Tips 21: Spill etter styrkene til skjell

Hvis du bare jobber med et grafisk grensesnitt, bruker du ikke alle funksjonene som tilbys av operativsystemet - du automatiserer ikke typiske oppgaver, bruker ikke de tilgjengelige verktøyene til sitt fulle potensial, og kombinerer ikke forskjellige løsninger for å lage spesialiserte makroverktøy. Fordelen med GUI-er er at de fungerer etter et "det du ser er det du får"-prinsippet. Den største ulempen med det grafiske grensesnittet kan formuleres som følger: "du får bare det du ser." Omfanget av slike verktøy er vanligvis begrenset til oppgavene de opprinnelig ble designet for. Hvis du vil gå utover dette mønsteret (og før eller siden må du det), er du ikke på samme vei med dem.

Legg litt innsats i å gjøre deg kjent med skallet, og du vil bli overrasket over hvor mye mer produktiv du blir. Linjekommandoer kan være forvirrende, men de er kraftige og konsise. Ved å kompilere dem til skriptfiler, kan du lage sekvenser av kommandoer for å automatisere ofte utførte prosedyrer.

Tips 22: Bruk ett tekstredigeringsprogram, men så mange som mulig

Behandling av tekst bør kreve et minimum av innsats, så det er bedre å mestre én enkelt editor perfekt og bruke den til å løse alle oppgaver knyttet til redigering: arbeide med programtekst, dokumentasjon, notater, systemadministrasjon osv. Det er vanskelig å være en ekspert umiddelbart i flere programvaremiljøer, bringe arbeidet med hver til en refleks, ta i betraktning at hver av dem har sitt eget sett med kommandoer og standarder. Hvis du prøver å kombinere flere redaktører, risikerer du å gjenta Babel-pandemonisituasjonen.

Redaktørens valg er nærmest en religion, så det er umulig å gi konkrete anbefalinger her. Men når du tar en beslutning, er det verdt å vurdere følgende parametere:

  • Tilpassbarhet. Alle redigeringsegenskaper bør kunne tilpasses etter eget ønske, inkludert fonter, farger, vindusstørrelser og hurtigtaster.
  • Utvidbarhet. Redaktøren skal ikke bli utdatert så snart et nytt programmeringsspråk dukker opp. Den skal kunne integreres i det kompilatormiljøet du bruker for øyeblikket. Du bør ha muligheten til å "lære" den nyansene til ethvert nytt programmeringsspråk eller tekstformat.
  • Programmerbarhet. Du må kunne programmere editoren til å utføre komplekse flertrinnsoperasjoner.
Tips 23: Bruk alltid kildekodekontroll

Kildekontrollsystemer holder styr på eventuelle endringer som gjøres i tekst og dokumentasjon. De beste kan også spore endringer i kompilator- og operativsystemversjoner. Med kontrollsystem originaltekst riktig konfigurert, kan du alltid gå tilbake til forrige versjon av programmet.

Kildekontroll gjør mye mer enn bare å angre feilaktige handlinger. Et godt system lar deg spore endringer og gir svar på typiske spørsmål: «Hvem har gjort endringene i denne tekstlinjen? Hva er forskjellen mellom den nåværende versjonen og versjonen som eksisterte forrige uke? Hvor mange linjer med programtekst ble endret i denne versjonen? Hvilke filer endres oftest? Slik informasjon er uvurderlig i feilsporing, revisjon, ytelse og kvalitetsvurdering.


Hvordan går det med feilsøking?

Tips 24: Fokuser på å fikse problemet, ikke skyld på det.

Vi går videre til temaet eliminering av feil – et veldig sensitivt og ekstremt relevant for teamarbeid. Her, mer enn noe annet sted, er riktig holdning viktig. Omfavn det faktum at feilsøking er en oppgave som alle andre, og tilnærm deg det fra det perspektivet. Faktisk spiller det ingen rolle hvem som har skylden for feilen - du eller noen andre. Dette er fortsatt ditt problem.

Tips 25: Ikke få panikk

Det er veldig viktig å ta et skritt tilbake, undertrykke den første følelsesmessige reaksjonen, og tenke på hva som faktisk er grunnårsaken til symptomene og hvordan man skal håndtere det. Motstå fristelsen til å eliminere symptomene og dermed løse problemet på overflaten - arbeid med den underliggende årsaken.

Før du ser på feilen, sørg for at du jobber med et program som har fullført kompileringsfasen rent – ​​uten advarsler. Det er ingen vits i å kaste bort tid på feil som selv kompilatoren kan se. Samle så mye informasjon som mulig; Hvis en feil ble rapportert av en tredjepart, spør i detalj de som har møtt den.

Tips 26: Se etter feil utenfor operativsystemet

Start fra antagelsen om at med operativsystem, database og annen programvare er i orden. Hvis du "bare gjorde én endring" og systemet sluttet å fungere, er det mest sannsynlig årsaken til det som skjedde, uansett hvor absurd denne uttalelsen kan virke. Hvis du ikke vet hvor du skal begynne, kan du alltid stole på gode gamle binære søk.

Unntak: Hvis noen av verktøyene dine nylig har blitt oppdatert, kan problemet være forårsaket av konflikter med ny verson. Overvåk tidsplanen for kommende endringer for å minimere virkningen av slike konflikter.

Tips 27: Ikke anta – bevis

Overraskelsen du opplever når noe går galt er direkte proporsjonal med ditt nivå av tro på riktigheten av programmet. Derfor, når du står overfor en uventet programfeil, må du akseptere at en eller flere av dine antakelser er feil. Ikke stol blindt på et stykke kode som forårsaker en feil bare fordi du "vet" at det fungerer bra. Bevis det først - i en reell sammenheng, med reelle data og med reelle grensebetingelser.

Når du står overfor en uventet feil, prøv å iverksette tiltak for å sikre at den ikke sprer seg, påvirker andre kodebiter eller oppstår igjen. Hvis det er et resultat av andres misoppfatninger, diskuter problemet med hele teamet.

Tips 28: Lær deg et tekstbehandlingsspråk

Fra tid til annen må vi utføre noen transformasjoner som ikke kan gjøres ved hjelp av leirverktøy. I slike tilfeller er det nødvendig med et universelt tekstbehandlingsverktøy. Ved å bruke tekstbehandlingsspråk kan du raskt løse alle verktøyproblemer og prototypeideer - når du jobber med vanlige språk det ville tatt fem til ti ganger lengre tid.

De gjør det også enklere å lage kodegeneratorer, som vil bli diskutert senere.

Tips 29: Skriv kode som vil skrive kode for deg

Programmerere er ofte pålagt å utføre samme type oppgaver: gi den samme funksjonaliteten, men i en annen kontekst, reprodusere informasjon, eller ganske enkelt skrive inn den samme teksten i det uendelige. Det er her maler kommer til unnsetning. For å lage dem kan en programmerer bygge en kodegenerator som kan brukes for resten av prosjektets levetid nesten gratis.

Kodegeneratorer er enten aktive eller passive. Passive generatorer avfyres én gang for å oppnå et resultat, som deretter blir uavhengig. De er i hovedsak tilpassede maler som sparer skrivetid og brukes til operasjoner som å lage nye kildefiler, utføre binære konverteringer eller lage oppslagstabeller og andre ressurser som er for dyre å beregne.

Aktive kodegeneratorer brukes når resultatene av arbeidet deres er nødvendig. De kan være svært hjelpsomme med å følge "minimum duplisering"-prinsippet. Med en aktiv kodegenerator kan du ta en representasjon av et visst stykke kunnskap og transformere det til alle skjemaene søknaden din trenger. Dette er ikke en duplisering ettersom disse skjemaene er forbrukbare og opprettes av generatoren etter behov. Når du skal organisere to helt forskjellige miljøer for å jobbe sammen, bør du tenke på å bruke aktive kodegeneratorer.

Kapittel 4: Pragmatisk paranoia

Hint 30: Det er umulig å skrive et perfekt program

I hele programmeringshistorien har ingen vært i stand til å skrive et eneste perfekt stykke kode. Det er usannsynlig at du blir den første. Og når du aksepterer dette som et faktum, vil du slutte å kaste bort tid og energi i jakten på en illusorisk drøm.

Tips 31: Design i henhold til kontrakter

Kontraktdesignmetodikken foreslår å bygge samspillet mellom programvaremoduler på grunnlag av deres dokumenterte rettigheter og ansvar for å sikre korrekt drift av programmet. Korrekthet refererer her til evnen til å gjøre nøyaktig det som er oppgitt.

Kontrakten mellom en subrutine og et hvilket som helst potensielt program som kaller det kan angis som følger: "Hvis det kallende programmet tilfredsstiller alle subrutinens forutsetninger, garanterer subrutinen at alle postbetingelser og invarianter vil være sanne ved fullføring av operasjonen." Hvis en av partene bryter vilkårene i kontrakten, brukes et forhåndsavtalt tiltak, for eksempel å legge til et unntak eller stenge programmet. Når du utvikler, hold deg til de klassiske prinsippene for å inngå en kontrakt: når du skriver forutsetninger, vær ekstremt nøye, og når det kommer til postbetingelser, tvert imot, ikke kom med unødvendige løfter.

Den største fordelen med å bruke dette prinsippet er at det setter krav og garantier i høysetet. I løpet av et prosjekt er det bare å liste opp faktorene – hva utvalget av inngangsverdier er, hva grensebetingelsene er, hva som kan forventes av rutinen (eller, enda viktigere, hva som ikke kan forventes av den) – et stort skritt. framover. Uten å definere disse posisjonene glir du inn i programmering basert på tilfeldigheter, og det er der mange prosjekter mislykkes.

Tips 32: La programmet krasje så tidlig som mulig

I mange tilfeller er slik avslutning av programmet det beste alternativet, siden alternativene vil føre til alvorlige, noen ganger irreversible konsekvenser. Pragmatikere ser på situasjonen på denne måten: Hvis det oppstår en feil, betyr det at noe veldig ille har skjedd, og det er bedre å spille det trygt.

Det er klart at i noen tilfeller er en nødutgang fra et kjørende program upassende (kanskje du først må logge noe, fullføre åpne transaksjoner eller samhandle med andre prosesser). Grunnprinsippet forblir imidlertid det samme - hvis et program oppdager at en hendelse som ble ansett som umulig har skjedd, mister det levedyktighet. Fra dette tidspunktet er alle handlinger utført av programmet under mistanke, og utførelsen må avbrytes så raskt som mulig. I de fleste tilfeller gjør et dødt program mye mindre skade enn et ødelagt.

Tips 33: Hvis noe ikke kan skje, bruk utsagn som garanterer at det ikke vil skje.

Når du begynner å tenke: "Selvfølgelig kan dette bare ikke skje," sjekk med kode. Den enkleste måten å gjøre dette på er å bruke affirmasjoner. De fleste implementeringer av C og C++ har en form for assert eller _assert makro som tester en logisk tilstand. Disse makroene kan være av stor verdi. For eksempel, hvis pekeren som sendes til prosedyren din ikke under noen omstendigheter må ha verdien NULL, sørg for at denne betingelsen er oppfylt.

Påstander skal ikke brukes som erstatning for faktisk feilhåndtering. De tester bare for noe som aldri burde skje. Det er et synspunkt om at godkjenninger kun trengs i feilsøkingsperioden, og når prosjektet er levert, blir de til dødvekt. Dette er et altfor optimistisk syn: testing vil sannsynligvis ikke avsløre alt som kan skje i den virkelige verden. Selv om det er ytelsesproblemer, deaktiver bare de uttalelsene som virkelig har en alvorlig innvirkning på det.

Tips 34: Bruk unntak kun i unntakstilfeller

I praksis kan imidlertid sjekke for alle tenkelige feil resultere i et feilformat program; normal logikk kan komme til intet på grunn av overmetning av feilhåndteringsprosedyrer. Unntak vil hjelpe deg med å implementere alt mer elegant.

Hovedproblemet med unntak er at du må vite når du skal bruke dem. Du bør ikke misbruke unntak for normal flyt av programkjøring; de bør reserveres for nødsituasjoner.

Et unntak er en umiddelbar ikke-lokal overføring av kontroll - en slags goto-uttalelse på flere nivåer. Programmer som bruker unntak som en del av normal drift lider av de samme lesbarhets- og vedlikeholdsproblemene som plager klassiske ustrukturerte programmer. De bryter med innkapslingsprinsippet: subrutiner og programmene som kaller dem er nærmere beslektet med hverandre på grunn av unntakshåndtering.

Tips 35: Fullfør det du starter.

Når vi skriver programmer, må vi administrere ressurser: minne, transaksjoner, tråder, filer, tidtakere - med et ord, ulike typer objekter som er tilgjengelige i en begrenset mengde. Mest Over tid følger ressursbruken et forutsigbart mønster: ressursen blir tildelt, brukt og deretter frigitt. Mange utviklere har imidlertid ikke en klar plan for tildeling og frigjøring av ressurser, noe som kan føre til ressursmangel. Løsningen her er enkel: rutinen eller objektet som ber om en ressurs må være ansvarlig for å frigjøre den ressursen.

Dersom flere rutiner krever mer enn én ressurs samtidig, legges det til ytterligere to regler:

  1. Frigjør ressurser i omvendt rekkefølge som de ble tildelt. I dette tilfellet kan du unngå utseendet til "foreldreløse" ressurser hvis en av dem inneholder lenker til en annen.
  2. Når du distribuerer det samme settet med ressurser på forskjellige steder i programmet, er det nødvendig å utføre denne operasjonen i samme rekkefølge. Dette reduserer sjansen for vranglås.
I programmer som bruker dynamiske datastrukturer, er det tider når den grunnleggende ressursallokeringsordningen ikke lenger er tilstrekkelig. I dette tilfellet er trikset å etablere en semantisk invariant for minneallokering.

Problemet med å bestemme grensene for et fagområde for noen vitenskapelig retning For det første er det relevant ved løsning av terminologiske og terminografiske problemer, inkludert oppgaver med inventar av termer, samt ved undervisning i relevante disipliner.

Å bestemme grensene for fagområdet for en slik vitenskapelig retning som "Datalingvistikk" er en av de vanskeligste oppgavene, etter vår mening. Vanligvis fastsettes grensene for et fagområde ved å sette sammen en liste over overskrifter og underoverskrifter (retninger) som utgjør det.

Den største vanskeligheten er i dette tilfellet er at datalingvistikk er en relativt ung vitenskap, som oppsto på slutten av 1900-tallet. Denne retningen begynte å bli aktivt utviklet i utlandet på 60-70-tallet, og det betydde først og fremst bruk av statiske metoder i lingvistikk, derav navnet "Computational Linguistics" (dvs. "Computational Linguistics"). I Russland ble det relaterte begrepet "matematisk lingvistikk" utbredt på 70-tallet. I forbindelse med utviklingen av datateknologier og deres aktive applikasjoner i språklige problemer, har dette begrepet som et navn for vitenskap blitt transformert, og vitenskapen har fått en klarere definisjon av "datalingvistikk." Dermed kan vi si at det er to tilnærminger til å definere retningene som vurderes under dette begrepet - dette er vår russiske tilnærming og den utenlandske.

Når det gjelder utenlandske lingvisters syn på fagområdet datalingvistikk, kan det bemerkes at en stor organisatorisk og vitenskapelig arbeid er utført av Association for Computational Linguistics, som har regionale strukturer i flere land rundt om i verden. Den offisielle nettsiden til denne organisasjonen gir en generell definisjon - "beregningslingvistikk er den vitenskapelige studien av språk fra et beregningsmessig perspektiv. Beregningslingvister er interessert i å tilby beregningsmodeller for ulike typer språklige fenomener." Denne organisasjonen holder internasjonale konferanser om datamaskin Corpus Linguistics: Investigating language structural linguistics COLING. Tidsskriftet «Computational Linguistics» utgis kvartalsvis i USA. Tilsvarende problemstillinger er vanligvis også bredt representert på ulike konferanser om kunstig intelligens.

Fra den vestlige tilnærmingens synspunkt er hovedretningen for datalingvistikk Natural Language Processing (Automatisk behandling av naturlig språk og tale). Ved analyse av dokumenter (konferansearkiver, innhold på basissider) fra Association for Computational Linguistics COLING, ble det bemerket at vestlige lingvister inkluderer følgende anvendte områder innen datalingvistikk:

Beregningsmorfologi og -syntaks (Datamaskinmorfologi og -syntaks).

  • NLP (Automatisk språk- og talebehandling).
  • Digitale biblioteker.
  • Informasjonsutvinning.
  • Informasjonsinnhenting.
  • Kunnskapsrepresentasjon og semantikk.
  • Maskinoversettelse.
  • Talebehandling (Talegjenkjenning og syntese).
  • Statistisk språkbehandling.
  • Oppsummering (sammendrag og merknad).

Fra et synspunkt av russisk oppfatning av problemområdet under vurdering, utføres hovedarbeidet i denne retningen av Russian Association of Computational Linguistics KOLINT, på hvis nettsted du kan finne alle de vitenskapelige rapportene presentert på konferansen om problemer med datalingvistikk. Selv om dette nettstedet ikke gir en kategorisering av problematiske oppgaver, kan det bemerkes at russiske lingvister prioriterer følgende områder:

  • Maskinoversettelse;
  • Søke- og klassifiseringssystemer;
  • Dataleksikografi;
  • Lingvistisk datamaskin semantikk;
  • Corpus lingvistikk;

Formelle modeller for analyse og gjenkjennelse av språkstrukturer.

Analyse av eksisterende lærebøker og oppslagsverk gir ennå ikke et fullstendig og klart bilde av dette praktisk retning lingvistikk.

Stor encyklopedisk ordbok: Lingvistikk, redigert av V.N. Yartseva. inkluderer ikke dette begrepet i ordboken i det hele tatt.

Den kjente russiske lingvisten Marchuk Yu.N. definerer først og fremst datalingvistikk som "det språklige grunnlaget for informatikk", som faktisk innebærer å løse problemer knyttet til utvikling og bruk kunstige språk som muliggjør kommunikasjon mellom mennesker og datamaskiner. Men på samme tid, i sitt arbeid "Fundamentals of Computer Linguistics" Marchuk Yu.N. undersøker konsekvent datamodellering av naturlig språk, nemlig morfologi, syntaks, representasjon av semantikk og pragmatikk i datamiljøer. I tillegg nevner verket slike anvendte problemer hvordan organisere maskinordbøker, terminologiske databanker og til og med det grunnleggende om terminologi diskuteres.

Ifølge den russiske lingvisten, professor ved Moskva statsuniversitet A.N. Baranov. Begrepet "Computer Linguistics" refererer til et bredt område for bruk av dataverktøy - programmer, datateknologier for organisering og behandling av data - for å modellere funksjonen til språk under visse forhold, situasjoner, problemområder, etc., samt anvendelsesområde for datamodeller av språk i ikke bare lingvistikk, men også i relaterte disipliner." I sitt arbeid identifiserer A.N. Baranov noen områder av datalingvistikk som grunnleggende - disse er kommunikasjonsmodellering, plottstrukturmodellering, hypertekstteknologier for tekstrepresentasjon, dataleksikografi, maskinoversettelse, prosesseringssystemer naturlig språk.

Problemet med å bestemme grensene for fagområdet står også overfor utviklerne av pedagogiske disipliner innen anvendt og datalingvistikk. For disse formålene, utdanningsprogrammene i datalingvistikk ved slike russiske universiteter som Moskva State University, Moskva-staten Språklig universitet, Russian State University.

Utviklerne av MSLU-kurset fokuserer på datamodellering av naturlig språk for å løse problemer kunstig intelligens, grunnleggende prinsipper for språkmodellering, dvs. områder knyttet til modellering av menneske-datamaskin-kommunikasjon.

Utviklerne av kursprogrammet ved Moscow State University fremhever slike oppgaver og områder som problemer med språklig støtte for moderne automatiserte informasjonssystemer, automatisk naturlig språkbehandling og opprettelse av ordbok og tekstbehandlere.

Hovedområdene som dekkes i løpet av datalingvistikk ved det russiske statsuniversitetet er: informasjonsinnhenting, maskinoversettelse, terminologi, terminologi, terminografi, dataleksikografi, talegjenkjenning og syntese, problemer med språkundervisning ved bruk av en datamaskin. Programmet til dette universitetet er nærmest programmet til Ulyanovsk State Technical University.

Ovenstående analyse viser at i praksis blir nesten alt knyttet til bruk av datamaskiner i lingvistikk ofte klassifisert som datalingvistikk, og det er derfor problemer forveksles med praktiske løsninger. Når man definerer grensene for fagområdet datalingvistikk, er det derfor nødvendig å tydeligere avgrense 2 synspunkter:

1. AUTOMATISK SPRÅKBEHANDLING, som vil omfatte oppgaver med analyse og modellering av språkstruktur, nemlig:

  • grafematisk/fonemisk analyse av språk;
  • morfologisk analyse;
  • leksiko-grammatisk analyse av språk;
  • syntaktisk analyse, eller parsing;
  • analyse og modellering av semantisk struktur;
  • oppgaven med å syntetisere språklige elementer, inkl. tekst generering;
  • automatisk språkstatistikk.
2. ANVENDTE RETNINGER FOR DATALINGVISTIKK, nemlig:
  • Maskinoversettelse;
  • talegjenkjenning og syntese;
  • utvikling og bruk av kunstige språk, inkludert programmeringsspråk, informasjonssystemspråk;
  • datamaskinleksikografi og terminografi;
  • språklig grunnlag for informasjonsinnhenting;
  • automatisk indeksering, abstrahering og klassifisering av tekster;
  • automatisk innholdsanalyse og tekstautorisasjon;
  • hypertekstteknologier for tekstpresentasjon;
  • korpuslingvistikk;
  • datalinguodidatikk.

Denne distinksjonen hevder ikke å være fullstendig, men gir et mer bestemt bilde av fagområdet til denne komplekse vitenskapen, og kan brukes som grunnlag for å utvikle en terminologisk ordbok eller arbeidsprogram for kurset "Datalingvistikk".

LITTERATUR

1. Baranov A.N. Introduksjon til anvendt lingvistikk. - M.: Redaksjonell URSS, 2001. - 360 s.
2. Grinev S.V. Introduksjon til terminologisk leksikografi. - M., 1986.-106 s.
3. Marchuk Yu.N. Grunnleggende om datalingvistikk: Opplæringen. - M., 1999. - 225 s.
4. Sosnina E.P. Introduksjon til anvendt lingvistikk: Lærebok. - Ulyanovsk: UlSTU, 2000. - 46 s.
5. Yartseva V.N. Lingvistikk. Stor encyklopedisk ordbok. - 2. utg. - Ya41 M.: Great Russian Encyclopedia, 1998. - 685 s.
6. http://www.aclweb.org
7. http://www.dialog-21.ru

Omslaget i språkforskningen til språkets pragmatikk, de virkelige betingelsene for dets funksjon, var naturlig og nødvendig. De ledende trendene innen språkvitenskapen på 60- og 70-tallet, lingvistisk strukturalisme og logisk semantikk, hadde en betydelig ulempe - en svak forbindelse med virkeligheten og menneskenes praktiske aktiviteter. Ytringen (og talen generelt) ble i disse teoriene assosiert med den betingede «gjennomsnittlige» morsmålstalen, og virkelige mennesker som brukte språk med sine følelser, relasjoner, intensjoner og mål forble utenfor analysen (Gak 1998: 555). Gradvis kom forståelsen at for en mer fullstendig forklaring av språk - både dets struktur og funksjonene ved bruken i tale - er det nødvendig å vende seg til faktorene for funksjonen til språklige enheter, dvs. til pragmatikk.

Identifikasjonen og dannelsen av den egentlige språklige pragmatikken ble stimulert på den ene siden av ideene til Ch.S. Pierce og CHU. Morris, og på den annen side stolte på konseptet til avdøde Wittgenstein. Ifølge V.V. Petrov, det var verkene til L. Wittgenstein som i stor grad bidro til transformasjonen av pragmatikk, som en del av den generelle semiotiske teorien, til et uavhengig forskningsfelt, og la grunnlaget for en kraftig strøm av moderne verk om pragmatikk (Petrov 1987) . Begynnelsen på den intensive utviklingen av pragmatikk tilskrives konvensjonelt 1970 - tiden for International Symposium on the Pragmatics of Natural Languages ​​(Bulygina 1981:333).

Pragmatikk, som en spesiell retning i studiet av språk, erklærte seg fra begynnelsen av sin eksistens for å være svært omfattende og svært

udefinert vitenskapelig disiplin. Nesten ethvert verk om pragmatikk (uansett om forfatteren generelt er orientert mot språklig semantikk, språkfilosofi eller formell logikk) begynner med å omformulere forskningsemnet og, i samsvar med dette, definere forfatterens forståelse av det pragmatiske i Språk.

Karakteriserer oppgavene og problemene ved pragmatisk forskning, N.D. Arutyunov og E.V. Paducheva bemerker at, gradvis utvidende, "avslører de en tendens til å viske ut grensene mellom lingvistikk og relaterte disipliner (psykologi, sosiologi og etnografi) på den ene siden, og naboseksjoner av lingvistikk (semantikk, retorikk, stilistikk) på den andre" ( Arutyunova, Paducheva 1985: 4).

Lingvistisk pragmatikk er nært knyttet til sosiolingvistikk og psykolingvistikk. Tilstedeværelsen av felles interesser mellom pragmatikk og sosiolingvistikk er så stor at det førte til etableringen i utenlandsk vitenskap av til og med en egen disiplin - sosiopragmatikk, som studerer avhengigheten av talekommunikasjon på sosiale faktorer (ARSLS 1996: 541; se også Leech 1983: 10).

Utviskingen av grensene for lingvistisk pragmatikk skyldes tilsynelatende at den på kort tid har absorbert ideene til teorien om språklig kommunikasjon, teorien om tekst, kommunikativ grammatikk, nye retorikkbegreper, teorien om talehandlinger, diskursteorien, dvs. alle de disiplinene som har som emne språkbruk av mennesker.

Som et resultat er det vitenskapelige miljøet gradvis i ferd med å etablere en forståelse av pragmatikk som en retning knyttet til å løse en lang rekke problemer med å beskrive funksjonen til språk. Utviklingen av ideene til språklig pragmatikk, definisjonen av sfærene for dens anvendelse og oppgaver gjenspeiles i en rekke tolkninger av begrepet "pragmatikk".

Begrepet «pragmatic» (språkopplæring) dukket opp på 1920-tallet – i adjektivform ble det brukt i 1923 av B. Malinowski i et vedlegg til Ogden og Richards bok «The Meaning of Meaning». Deretter, og denne posisjonen i "pragmatikkens historie" er generelt akseptert, ble begrepet "pragmatikk" skapt av C. Morris i 1938 for bruk i den velkjente triaden av syntaktikk (syntaks), semantikk og pragmatikk som deler av semiotikken (Nerlich & Clarke 1994; Nerlich 1995). C. Morris, som driver forskning rettet mot å studere strukturen til en tegnsituasjon (semiose) i et dynamisk, prosedyremessig aspekt, inkludert deltakerne i denne situasjonen, skilte mellom de tre ovennevnte aspektene ved semiotikk, og definerer pragmatikk som "forholdet mellom tegn til dem som tolker dem» (Morris 1938: 6). Men senere, i forbindelse med utviklingen av forskerens synspunkter, og også på grunn av det faktum at begrepet allerede har fått uønsket tvetydighet og vaghet, definerer Morris pragmatikk som studiet av "opprinnelsen, bruken og effekten av tegn )" ( Morris 1946: 219). Fra denne definisjonen følger det at forskerens oppmerksomhet bør rettes mot en omfattende studie av tre sammenhengende prosesser i én kjede - dannelse, bruk (fungering) og påvirkning av tegn. En forståelse av pragmatikk i samsvar med Morris sin definisjon finnes i arbeidet til G. Klaus, som omtaler pragmatikk som «psykologiske og sosiale aspekter ved bruken av språklige tegn» (Klaus 1967: 22).

Visjonen om pragmatikk, som presentert av Charles Fillmore, virker interessant. Definisjonen er ganske detaljert og lyder som følger: «Pragmatikk studerer det tredimensjonale forholdet som forener (1) språklige former, (2) de kommunikative funksjonene som disse formene er i stand til å utføre med (3) kontekster eller miljøer der disse språklige skjemaer kan ha dataspråkfunksjoner" (sitert fra Pocheptsov (Jr.) 1984: 33).

En velkjent språklig definisjon av pragmatikk på slutten av 70-tallet og begynnelsen av 80-tallet var definisjonen som ble foreslått av R.S. Stolnaker. Pragmatikk er ifølge Stolnaker studiet av talehandlinger og kontekstene de produseres og implementeres i. Målet med pragmatikk som disiplin bør være å synliggjøre klassifiseringen av talehandlinger og deres produkter, dvs. relevante utsagn (Stalnaker 1972).

Det fremheves ofte at pragmatikk i stor grad samsvarer med aktivitetsprinsippet, og dermed introduserer et handlingsmessig (aktivitets)aspekt i beskrivelsen av språk. Pragmatikkens samsvar med kravene til aktivitetsprinsippet gjenspeiles i definisjonen Emne pragmatikere, gitt av E.S. Aznaurova. Emnet for språklig pragmatikk er etter hennes mening «studiet av språk i aspektet av menneskelig aktivitet i en bred sosial kontekst» (Aznaurova 1988: 8). 1 Studiet av språkets fakta i aspektet av menneskelig aktivitet regnes som pragmatikkens hovedpostulat. Men, som videre bemerket av E.S. Aznaurov, "bredden av postulatet har ført til en betydelig spredning av emner og problemer diskutert innenfor denne språklige retningen, alt fra den pragmatiske tolkningen av språklige tegn og teorien om talehandlinger, til studiet av de pragmatiske parametrene for litterær kommunikasjon og teksten i sin dynamikk, korrelert med "jeget" som skaper tekstpersonen" (ibid.: 10).

En bred forståelse av pragmatikk, når omfanget av dens interesse inkluderer spørsmål om deixis, talehandlinger, forutsetninger, konverteringsimplikaturer, problemer knyttet til tolkning av tale, når oppgaven med pragmatikk som en egen språkvitenskap kalles "studiet av korrespondanser mellom språkenheter og effektene av bruken av dem» (Pocheptsov 1985: 16) eller «studiet av forholdet mellom språklige former (entiteter) og brukerne av disse formene» (Yule 1996: 4) er motstander av tilnærmingen når den eneste reelt studieobjekt innen pragmatikk anses å være realisert i teksten

Når vi snakker om emnet pragmatikk, bør det huskes at selv om et stort antall lingvister er enige i anerkjennelsen av pragmatikk som en spesiell språklig disiplin, er denne posisjonen ikke generelt akseptert. En rekke forskere benekter pragmatikk besittelsen eget emne forskning og konkluderer med at det er umulig å betrakte det som en annen komponent i språkteorien. Det gis kun status som et spesielt perspektiv (pragmatisk perspektiv) i betraktningen av språklige fenomener (se Verschueren 1999). en pragmatisk holdning, mest generelt definert som «den bevisste intensjonen til avsenderen av et budskap, materialisert i teksten, for å ha en tilsvarende innvirkning på mottakeren av talen» (Naer 1985: 16). Tilhengere av denne forståelsen av pragmatikk mener at den foreslåtte maksimale begrensning på anvendelsen av pragmatikk gjør det mulig å identifisere en sfære i språket assosiert med målsettende talepåvirkning, i likhet med handling (Geliya 1988: 189).

Denne forståelsen av pragmatikkens oppgaver gjenspeiles i forskning der det legges vekt på det endelige resultatet av kommunikasjon - effekten av påvirkning (perlokusjonær effekt ifølge Austin), når spørsmålene om å studere den verbale kontrollen av menneskelig atferd, modellering av sosial og individuell oppførsel mennesker gjennom tale (Kiseleva 1978).

Den pragmatiske tilnærmingen til å forstå språkets natur har blitt dannet og fortsetter å utvikle seg under tegnet av å inkludere talerens subjektivitet i denne forståelsen. Så, i konseptet til Yu.S. Stepanovs fagkategori er definert som den sentrale kategorien av moderne pragmatikk (Stepanov 1981; 1985; 2001). Samtidig, med økende klarhet, realiseres behovet for å ta hensyn til adressatfaktoren, dvs. lytterens subjektivitet, som fungerer som utgangspunkt for å utvikle en tolkningsteori av taleverk som opptrer i visse kommunikative kontekster, når tolkningsobjektet er det som vanligvis kalles ytringens pragmatiske betydning (Arutyunova 1981).

Noen forskere mener at tolkningsbegrepet lar oss formulere observasjoner om språkets egenskaper på den mest naturlige måten og på den ene eller andre måten er tilstede i enhver pragmatisk forskning (Demyankov 1981: 369). Det tredje synspunktet på betydningen av faktorene til talens emne og adressaten er tilnærmingen som definerer banen til pragmatikk som en bevegelse fra egosentrisme til prinsippet om kumulativ binær "langs synteselinjen av subjektiviteten til avsender og adressatens subjektivitet til en enkelt og kollektivt virkende faktor» (Sidorov 1995: 470).

En omfattende redegjørelse for de ulike faktorene som vektlegges i pragmatisk forskning «tillater oss å bedre forstå de spesifikke språket i dets virkelige bruk» (Gak 1997: 361) og vitner om det ekstraordinære potensialet til pragmatikk.

Som det fremgår av definisjonene ovenfor, lar det å bringe en eller annen gruppe faktorer frem i forgrunnen å snakke om forskjellige typer eller varianter av pragmatikk. Tilbake på begynnelsen av 1970-tallet, T.M. Dridze antok selvsikkert eksistensen av to pragmatikk - "kommunikatorpragmatikk" og "mottakerpragmatikk" (Dridze 1972: 34-35). J. Yule, allerede på slutten av 1990-tallet, spesifiserte brukerbegrepet («bruker») og ga en omfattende definisjon av pragmatikk, som tar hensyn til avsenderens posisjon, mottakerens posisjon og definerer ulike alternativer for pragmatikk, avhengig av studiets perspektiv. J. Yules pragmatikk "omhandler studiet av mening slik den formidles av foredragsholdere (eller forfattere) og tolkes av en lytter (eller leser), som lar oss snakke om: (1) pragmatikk er studiet av foredragsholderens mening ); (2) pragmatikk er studiet av kontekstuell mening; (3) pragmatikk av implikasjoner (pragmatikk er studiet av hvordan mer blir kommunisert enn sagt); (4) pragmatikk er studiet av uttrykket for relativ avstand (Yule 1996: 3).

Her er det interessant å sammenligne variantene av pragmatikk foreslått av J. Yule med en ganske detaljert presentasjon av pragmatikkens oppgaver slik de er formulert av N.D. Arutyunova. Forfatteren identifiserer fire hovedproblemer, inkludert et sett med problemstillinger knyttet til det talende emnet, adressaten, deres interaksjon i kommunikasjon og kommunikasjonssituasjonen.

I forbindelse med emnet tale studerer pragmatikk: (1) eksplisitte og skjulte mål for ytringen; (2) taletaktikker og typer taleatferd; (3) samtaleregler, underlagt samarbeidsprinsippet; (4) talerens holdning eller pragmatiske betydning av ytringen; (5) høyttalerreferanse; (6) pragmatiske forutsetninger; (7) talerens holdning til det han kommuniserer.

I forbindelse med talens adressat vurderes følgende: (1) tolkning av talen; (2) virkningen av erklæringen på adressaten; (3) typer talerespons på den mottatte stimulansen.

I forbindelse med relasjonene mellom deltakere i kommunikasjon studeres følgende: (1) former for verbal kommunikasjon; (2) sosial og etikette side av tale; (3) forholdet mellom kommunikasjonsdeltakere i visse talehandlinger (dvs. rolleforhold).

I forbindelse med kommunikasjonssituasjonen i pragmatikk studeres følgende: (1) tolkningen av deiktiske tegn, samt indeksikale komponenter i betydningen av ord; (2) talesituasjonens innflytelse på tema og kommunikasjonsformer (Arutyunova 1990a: 390).

Ved å sammenligne variantene av pragmatikk av J. Yule og bruksområdene, kan oppgavene til pragmatikk av N.D. Arutyunova, man kan ikke unngå å legge merke til at implikasjonenes pragmatikk, fremhevet av Yul som et eget punkt, er inkludert i N.D. Arutyunova inn i et bredt spekter av problemstillinger studert i forbindelse med emnet tale, og Yuls pragmatikk for kontekstuell mening er ikke noe mer enn en innsnevret sirkel av problemstillinger som vurderes i forbindelse med talens adressat. Generelt observerer vi isomorfisme i definisjonen av et sett med grunnleggende problemstillinger, som kan tolkes som den gradvise dannelsen av konturene til pragmatikk.

Lingvisters appell til studiet av funksjonen til språklige enheter i tale "tillater oss å snakke om pragmatikk i betydningen de kommunikative egenskapene til enhetene som vurderes. De snakker om "ordets pragmatikk", "setningens pragmatikk". ” (uttalelse), etc., som betyr for det første funksjonene ved bruk språklige enheter i visse pragmatiske situasjoner og driftsforhold og for det andre implementering av mening i konteksten under påvirkning av ulike pragmatiske parametere. I det første tilfellet kan vi snakke om "ekstern pragmatikk", og i det andre - om "intern pragmatikk" (noen ganger kalt pragmasemantikk)" 1 (Gorshunov 1999: 5-6). Vi tror at inndelingen av pragmatikk eksplisitt foreslått av Yu.V. Gorshunov til "ekstern" og "intern", inneholdt implisitt i en rekke verk, er av teoretisk interesse og bekrefter nok en gang alle grunnene til å snakke om pragmatisk mening, som deler av språklig betydning.

Forståelsen av «intern pragmatikk» som sosialt bevisst og fastsatt ved bruk på nivået av det pragmatiske informasjonssystemet åpner for tre tolkninger: (1) semantisk informasjon betraktes som en del av kommunikativ-pragmatisk informasjon; (2) begge komponentene er oppfattet som likeverdige, autonome, men oppfyller sin hensikt i nær sammenheng med hverandre, eller (3) pragmatisk informasjon anses som innebygd i semantisk informasjon (jf. Leech 1983: 6).

Den første tilnærmingen (Malcolm og andre Oxford-filosofer) er basert på ideene til avdøde Wittgenstein, når "for en stor klasse av tilfeller - men ikke alle - der vi bruker ord, kan betydning defineres som følger: betydningen av en ord er dets bruk i språket" (sitert fra Arutyunov 1976: 44). Meningsteorien med denne tilnærmingen mister sin denotative karakter og blir en kommunikativ meningsteori, som ikke bare var relatert til betydningen av utsagnet, men også til betydningen av ordene inkludert i den. For lingvistikk kan denne typen teorier, der det ikke gjøres noe grunnleggende skille mellom betydningen av et ord, setning og utsagn, neppe være effektiv (se Arutyunova 1976: 39-45 for flere detaljer).

Innenfor rammen av den andre tilnærmingen er det forsøk på å inkludere kontekstuavhengige betydninger av språklige enheter under semantikkens jurisdiksjon, og talefunksjonene til språklige ytringer og situasjonsbetydninger under pragmatikkens jurisdiksjon.

M.V. Nikitin definerer pragmasemantikk som studiet av den delen av den totale betydningen av utsagn og tekster som relaterer seg til talens intensjoner, dvs. til de pragmatiske oppgavene som taleren løser gjennom talen (Nikitin 1996. 619). ons. definisjon av tolkningsspråket brukt i Moskva og polske semantikkskoler som et "pragmasemantisk språk" i Sannikov 1989. Se også i denne forbindelse Pocheschov (Jr.) 1984; Stalnaker 1972.

Den betingede siden av forslagene som er uttrykt i dem. Noen forskere definerer grensene for pragmatikk ved å studere de aspektene av mening som ikke dekkes av semantisk teori (Levinson 1983). Samtidig anerkjenner å tilby denne typen distinksjon det faktum at en adekvat (semantisk eller pragmatisk) teori ennå ikke er utviklet som ville gjøre det mulig å entydig svare på spørsmålet om hvor semantikken slutter og pragmatikken begynner (se f.eks. Bulygia 1981; The Semantics /Pragmatics interface... 1999).

På den annen side peker mange forskere på at de mest adekvate resultatene kan oppnås hvis semantikk og pragmatikk betraktes som sammenkoblede deler av en helhet: "Det er ingen semantikk uten pragmatikk - men det er heller ingen pragmatikk uten semantikk" (Kiefer 1985) : 347). P. Sgall bemerker også at alle forsøk på å studere semantikk uten å ta hensyn til pragmatikk er dømt til å mislykkes (Sgall 1986: 45).

Av stor interesse angående forholdet mellom pragmatikk og semantikk er synspunktet til Yu.D. Apresyan. For å forstå pragmatikk ganske bredt, mener forfatteren at bare den pragmatiske informasjonen som er leksikalisert eller grammatisert er av språklig interesse, dvs. fikk permanent status i språket (Apresyan 1988; 1995a). Et lignende synspunkt uttrykkes av en annen representant for Moscow School of Semantics, V.Z. Sannikov, som forstår betydningen av en språklig enhet som dens semantikk og pragmatikk, og tolker sistnevnte som "informasjon om respekt taler og lytter til de beskrevne objektene og til hverandre» (Sannikov 1989: 84).

Mye til felles med konseptet Yu.D. Apresyan har visjonen om pragmatisme V.I. Zabotkina (Zabotkina 1989; 1993). Ved å anerkjenne tilstedeværelsen av en kompleks dialektisk forbindelse mellom pragmatikk og semantikk, definerer forskeren pragmatikken til et ord som en del av den totale semantikken, som bærer informasjon om den sosiale statusen til høyttalerne, de faktiske forbruksforholdene og den forventede effekten på lytteren. Med andre ord, vi snakker her om pragmatiske komponenter, som er fikset på grunn av bruk i ordets semantiske struktur, reflekterer parametrene for bruken i typiske kommunikasjonssituasjoner og sikrer den pragmatiske markeringen av ordet på systemnivå.

På den mest radikale måten løser A. Vezhbitskaya og hennes tilhengere (E.V. Paducheva og andre) problemet med grensen mellom semantikk og pragmatikk. Dette spørsmålet i seg selv, mener Vezhbitskaya, gir ingen mening, på grunn av det faktum at en slik grense ikke eksisterer: pragmatikk er en del av semantikk som studerer et visst spekter av språklige betydninger. I Wierzbickas konsept viser pragmatikkens autonomi i forhold til semantikk seg å være imaginær, det er en enhetlig semantikk av pragmatikk, eller rett og slett pragmatikk – en av delene forfatteren deler oppgaven med å beskrive et språks semantikk i. "Språklige betydninger er pragmatiske i prinsippet: med en person, med talesituasjon Det som henger sammen i et språk er ikke noen spesielt fremhevede uttrykkselementer, men generelt betydningen av det overveldende flertallet av ord og grammatiske enheter"(Paduheva 1996: 222). Pragmatikkens grenser, slik de forstås i arbeidet til Wierzbicka 1991, er avgrenset nøyaktig på grunnlag av meningens natur, når pragmatikkens kompetanse inkluderer de språklige elementene der holdningskomponenter ( subjektive, ekspressive og andre) dominerer over denotative, det vil si språklige elementer av enhver formell type, bare forent av det faktum at de hovedsakelig bærer «pragmatisk informasjon» (Paduheva 1996: 223).

Det er kjent at betydningen av språklige enheter er nært knyttet til funksjonene de utfører, siden studiet av funksjonene til en bestemt form dekker analysen av dens betydning: «Betydningen er direkte underordnet funksjonen som den tilsvarende enheten utfører; den dannes avhengig av formålet med denne enheten» (Arutyunova 1976: 44). Skille mellom semantisk og strukturelle funksjoner språk, peker noen lingvister på et komplekst forhold mellom funksjonene semantisk og s ragmatisk. Sistnevnte kan betraktes som et spesielt aspekt ved semantiske funksjoner, hvis essens er å formidle forholdet mellom innholdet i språklige enheter og ytringen som helhet til deltakerne i talehandlingen og dens betingelser (Boidarko 1987: 8- 9). Det vil si at det er ganske vanskelig å trekke en klar grense mellom semantikk og pragmatikk. Begge (i en eller annen grad) gjenspeiler den antroposentrismen som gjennomsyrer moderne vitenskap, ekstralingvistiske data er mye brukt, må ta hensyn til kontekstfaktoren osv.

I vår avhandlingsforskning går vi ut fra en bred forståelse av pragmatikk som en spesiell språklig disiplin, og tar utgangspunkt i den romslige, mangefasetterte definisjonen av D. Crystal. Pragmatikk er vitenskapen "som studerer språk fra synspunktet til personen som bruker det, når det gjelder valg av språklige enheter, restriksjoner på deres bruk i sosial kommunikasjon, og effekten av påvirkning på deltakere i kommunikasjon" (Crystal 1985: 240).»

Når vi forstår pragmatikk som en del av språklig mening, følger vi den pragmatisk-semantiske tilnærmingen basert på begrepene til Yu.D. Apresyan, A. Vezhbitskaya, V.I. Zabotkina.

Det er ingen tvil om at studiet av «intern pragmatikk» (pragmasemantikk) er en av oppgavene til lingvistisk pragmatikk og angår dets lite studerte og kontroversielle område (Gorshunov 2000). Forskning, utvikling og avklaring av allerede etablerte pragmatiske komponenter, identifisering av funksjonene i deres interaksjon og innvirkning på adressaten på forskjellige nivåer leksikalsk materiale, er av betydelig teoretisk og praktisk interesse og spiller en viktig rolle i studiet av språklige enheters semantikk og pragmatikk.

Fremveksten av pragmatikk er sannsynligvis ikke fullført ennå. Det gjenstår fortsatt mange kontroversielle spørsmål. Dette er spørsmål om forholdet mellom pragmatikk og

ons. med en senere definisjon av samme forfatter: «Pragmatikk er studiet av faktorene som bestemmer vårt valg av språklige virkemidler i sosial interaksjon og innvirkningen av disse valgene på andre» (Crystal 1997: 120) sosiolingvistikk, psykolingvistikk, stilistikk, retorikk, som pragmatikk har omfattende områder med overlappende forskningsinteresser. Dette er en rekke spørsmål knyttet til hvordan en person legemliggjør seg selv i et språklig tegn, i en ytring, lever og opptrer som en språklig personlighet, bruker språket for å nå sine mål, formidler sin holdning til virkeligheten, innholdet i budskapet, kommunikasjonspartnere og påvirke dem.

Dyp og nøyaktig i denne forbindelse ser ut til å være tesen til J. Verschueren om at den dimensjonen som pragmatikken er pålagt å forstå og avsløre, er rommet som skapes av forbindelsen mellom språk og menneskeliv generelt (Verschueren 1999: 6).

Historien til begrepet "pragmatikk" (gresk "pragma" - virksomhet, handling) spores vanligvis tilbake til Charles Morris, som identifiserte i semiotikk, teorien om tegnsystemer, området pragmatikk sammen med områdene semantikk og Syntaktikk Som enhver vitenskap har pragmatikk sitt eget objekt, emne, emne og metode for forskning. Studieobjektet for pragmatikk kan være en talehandling, et ord, en tekst eller et sett med tekster. Senere begynte begrepet "pragmatikk" å bli brukt i lingvistikk, men fikk ikke en entydig tolkning blant lingvister.

Pragmatikk ble forstått som vitenskapen om språkbruk, vitenskapen om språk i kontekst, eller vitenskapen om kontekstualiteten til språk som et fenomen, studiet av språk (eller et hvilket som helst annet kommunikasjonssystem) fra synspunktet om målene som forfølges, de ulike måtene å oppnå dem på og betingelsene disse målene oppnås under. teori om talehandlingsfortolkning, studiet av språklige virkemidler som tjener til å indikere ulike aspekter ved den interaksjonelle konteksten et påstand uttrykkes i. I russisk lingvistikk forstås pragmatikk også som en teori som studerer de pragmatiske parametrene for litterær kommunikasjon [Arutyunova 1981], så vel som teksten i dens dynamikk, korrelert med "jeget" til personen som lager teksten [Stepanov 1981, 1985 ].

Pragmatikk blir sett på som "mening minus sannhetsbetingelser"; det er studiet av de aspektene av mening som ikke dekkes av semantisk teori. Pragmatikk forstås som teorien om talepåvirkning [Kiseleva 1978]. Hensikten med pragmatikk sees i studiet av språk som et instrument for menneskelig sosial praksis [Susov 1974].

T. van Dijk mener at kompetansen til pragmatikk inkluderer å identifisere systemer som kjennetegner språklig form, mening og aktivitet. I følge T. van Dijk, i den mest teoretiserte og abstraherte forståelsen, er pragmatikk pålagt å utføre spesifikasjonen av (teoretisk tillatte) betingelser for (teoretisk tillatte) egnethet til (teoretisk tillatte) ytringsstrukturer. De empiriske oppgavene til teorien om pragmatikk inkluderer utvikling av en kognitiv modell for produksjon, forståelse og memorering av talehandlinger, samt en modell for kommunikativ interaksjon og språkbruk i spesifikke sosiokulturelle situasjoner.

Alvorlig vanskelighet ligger i den gjensidige definisjonen av begrepene pragmatikk og semantikk. I følge G.V. Kolshansky: «... Enhver taledannelse er et resultat av konseptuell bearbeiding av enhver kognitiv handling, som uunngåelig gir enhver meningsfull ytring en kognitiv karakter, vanligvis tilskrevet semantikk i ordets vide betydning. I denne forbindelse ønsker lingvister å ikke skille faktoren for den pragmatiske funksjonen til språket som helhet fra dets meningsfulle natur, og dermed å inkludere pragmatikk bare som en komponent i den enhetlige semantikken til språklige kommunikative enheter" [Kolshansky 1985 : 175] er ganske forståelig.

Uansett hvor forskjellige alternativene for å definere pragmatikk er, kan det viktigste i dem betraktes som at de er basert på ordningen til Charles Morris. En av egenskapene til et tegn er forholdet mellom tegnet og dets bruker - en person. Den menneskelige faktoren er anerkjent som det ledende konseptet for pragmalingvistikk [Arutyunova 1981; Bulygina 1981; Gak 1982; Stepanov 1981, 1985 og andre]. Pragmatikk studerer alle forholdene som en person bruker språklige tegn under. Samtidig betyr bruksvilkårene forutsetningene for adekvat utvalg og bruk av språkenheter for å nå det endelige målet om kommunikasjon – å påvirke partneren.

I moderne studier av pragmatikk blir aktivitetsfaget stadig viktigere, som i pragmatikk forstås som «et abstrakt individ (virtuell formidler) som er bærer av et kompleks av egenskaper: psykologisk, sosialt, geografisk, nasjonalt-kulturelt, etc. ." [Bagaturia 2004: 4]. Denne økende rollen til faget bestemmer valget av metoder for å studere faget pragmatikk. Hvis vi betrakter pragmatikk som en vitenskap som studerer språk fra synspunktet om "personen som bruker det i aspektet ved valg av språklige enheter, begrensninger på deres bruk i sosial kommunikasjon og effekten av påvirkning på deltakere i kommunikasjon," dette vitenskap bør klassifiseres som praktisk, basert på induktive metoder for erkjennelse av virkeligheten.

Aktiviteten med å overføre en tegnmelding av en person studeres først og fremst som en prosess kommunikasjon- Hele syklusen av vitenskapelige disipliner som studerer kommunikasjon, og de første vanskelighetene med å identifisere det faktiske emnet pragmatikk oppstår nettopp i denne forbindelse. I følge V.G. Kolshansky: " Pragmatikk som en gren som studerer en persons holdning til et språklig tegn mister generelt sin mening av den grunn at holdningen til et tegn ikke kan avsløres i språket bortsett fra bruken av selve språket, som per definisjon er kommunikasjon.» (uthevelse lagt til av oss - A.Sh.)[Kolshansky 1985: 131].

Ofte defineres pragmatikk ved å fokusere på et eget aspekt av kommunikasjonsprosessen, nemlig på virkningen eller kommunikativ effekt: "...Uavhengig av definisjonen av det pragmatiske aspektet ved språket, forblir ledemotivet som regel ideen om å påvirke menneskelig atferd ved hjelp av verbale virkemidler for talehandlinger" [ibid: 139]. kommunikativ effekt forstås ganske bredt. For eksempel trekker Yu.K. Pirogova frem «... Påvirkning på bevissthet ved å bygge rasjonell argumentasjon (overtalelse), eller påvirkning på bevissthet gjennom den emosjonelle sfæren, eller påvirkning på underbevisstheten (forslag), påvirkning ved bruk av verbal (tale) eller ikke-verbale midler» [Pirogova 2001: 541]. Talepåvirkning i lingvistikk studeres det i forbindelse med den sosiale siden av talekommunikasjon [Fedorova 1991: 46-50]. I teorien om talekommunikasjon presenteres talekommunikasjon som en to-nivå formasjon, inkludert sosiologiske og kommunikative nivåer. Innholdet på det kommunikative nivået refererer til utveksling av informasjon mellom samtalepartnere, og innholdet på det sosiologiske nivået involverer den sosiale interaksjonen mellom kommunikasjonsdeltakere, det vil si deres innflytelse på hverandres oppførsel, tenkemåte og følelser. Talepåvirkning er definert som en taleform for sosial påvirkning av taleren på lytteren i kommunikasjonsprosessen [ibid: 46].

Det ser ut til at det å fremheve emnet pragmatikk i QMS-teksten ikke kan være helt basert på konseptet "påvirkning". En rekke QMS-materiell har faktisk som mål å påvirke mottakerens kunnskaper, holdninger og intensjoner, målet om å oppnå ønsket vurdering av et bestemt objekt for adressaten – for eksempel i reklame eller i en appell om å stemme ved valg. Imidlertid kan andre mål finnes i QMS-tekster, for eksempel er det ledende målet å "underholde" eller fengsle mottakeren (tiltrekke hans oppmerksomhet). I dette tilfellet tilfredsstiller publikasjonen emnets mentale behov for underholdning, og stimulerer den potensielle kjøperen til å kjøpe flere og flere nye utgaver av publikasjonens underholdningsmateriell. I materialet til den "gule" pressen blir de tilstandene initiert i mottakersubjektet som han er villig til å betale for: frykt, overraskelse, indignasjon, ømhet og andre. På lignende måte appellerer kunstneriske og journalistiske tekster til «skjønnhetssansen», hvis forståelse, med en tilstrekkelig grad av sannsynlighet, er i besittelse av publikum til disse tekstene. I slike tilfeller er det omtrent like mange grunner til å snakke om «påvirkningen på mottakerens kunnskap, holdninger og intensjoner...» som ved sending av fotballkamp på SMK-kanalen. Er det mulig å finne tegn på kommunikativ påvirkning i underholdning eller kunstnerisk og journalistisk materiale? I vid forstand er det absolutt mulig. Samtidig risikerer vi å gå tilbake til omfattende definisjoner (i dette tilfellet begrepet effekt) og miste forskningsemnet som vi må implementere i utgangspunktet metodiske oppgaver. For eksempel, ifølge G.G. Matveeva: «...Influence, or behavior management, is the goal alle mulige ting (uthevelse lagt til av oss - A.Sh.) kommunikasjon. Kommunikasjon er en sosial orientering der den adaptive funksjonen til en person blir realisert. Det kommer ned til funksjonelle regulatoriske mål. Disse målene har direkte og indirekte effekter. Med sistnevnte oppstår også kontroll, for eksempel ved informering, ved uttrykk for vurderinger, relasjoner, som det også kan tas beslutning om å regulere atferd på grunnlag av» [Matveeva 1984: 44].

Etter vår mening er det uakseptabelt å forveksle begrepene innvirkning og patos i QMS. Som Yu.V. Rozhdestvensky bemerker: "... Massemedienes patos er å gjøre meldinger om hendelser (i prinsippet ikke relatert til mottakeren) interessante for ham, slik at han blir åndelig involvert i disse hendelsene. Derfor velger masseinformasjon meldinger om hendelser og kommenterer dem slik at materialet vekker interesse. Dette oppnås ved å fremkalle følelser, nysgjerrighet, frykt og medfølelse. Hensikten med å danne en slik følelse er å inkludere mottakeren av informasjon i masseaksjoner» [Rozhdestvensky 1997: 593].

På sin side, ved påvirkning "i den retning som er nødvendig for adressaten" er det mer riktig å forstå slik påvirkning, som er bygget rundt et spesifikt objekt av virkeligheten. I dette tilfellet oppnår adressaten en veldig spesifikk tanke, følelse eller oppførsel hos adressaten i forhold til dette virkelighetsobjektet.

I praksis er begrepet kommunikativ innflytelse mer effektivt assosiert med de QMS-tekstene, hvis innhold er ment å danne mottakerens bilde av verden, hans forståelse av virkeligheten i forhold til et utvalgt objekt eller gruppe av objekter. Som vi skal vise senere kan disse tekstene grupperes etter felles mål: De kan være rettet mot overtalelse, oppmuntring eller reklame. I disse tilfellene (tekstene) er pragmatikken i QMS-teksten assosiert med innvirkning, men som begrep har den sin egen objektive virkelighet. Et bevis på dette kan for eksempel være pragmatikken i QMS-tekster med de ledende mål om å informere eller underholde publikum, som ikke har et klart effektpotensial.

La oss vurdere en annen mulighet for å definere emnet pragmatikk. La oss si forskning pragmatisk kjennetegn ved språklige tegn kanskje i det meste språksystem. En naturlig utvikling av slik logikk er utvelgelsen som gjenstand for forskning av bestemt språklig materiale, språkenheter som har et snevert pragmatisk fokus.

Slike enheter er identifisert av L.A. Kiseleva: “...Pragmemes are units ulike nivåer språk som har et pragmatisk formål: de er ment å regulere menneskelig atferd. Disse inkluderer for det første de språklige enhetene som reflekterer fenomenene i den emosjonelle-viljemessige sfæren til mottakerens psyke og, gjennom den, hans intellektuelle sfære (gjennom emosjonelle forslag, infeksjoner, overtalelse) for å regulere hans oppførsel. Dette er de enhetene som tilhører kjernen av det pragmatiske feltet (for eksempel emosjonelle, emosjonelle-evaluerende og insentive interjeksjoner, så vel som emosjonelt-evaluerende ord som ekkelt, fantastisk, kjære, nydelig, etc.)" [Kiseleva 1978: 106].

Denne forskningslinjen kritiseres hovedsakelig for isolasjonen av hensynet til språklige enheter, for manglende uttrykk for sammenhengen mellom tegnet og mottakeren. Som V.N. Komissarov bemerker: "...Ingen bevis kan gis for at de såkalte emosjonelle ordene (som de som er gitt i slike verk - stygge, herlige, etc.) er direkte adressert til den rene psyke, og omgår den normale intellektuelle oppfatningen av slike enheter, med åpenbart konseptuelt innhold, som tilhører kategorien såkalte evaluerende som et produkt av menneskelig mental aktivitet» [Komissarov 1990: 140–141].

Etter å ha identifisert et eget område i språkets sfære (tross alt har språk, i motsetning til tale, en abstrakt og systemisk essens), mottar forskeren den nødvendige konsistensen, logikken og forutsigbarheten til funksjonene til visse tegn og relasjonene mellom dem, direkte som følge av konsistensen og logikken til språket som fenomen. Men innenfor rammen av denne tilnærmingen er forskeren tvunget til å avsløre forhold mellom tegn(innenfor rammen av språksystemet), og ikke forholdet mellom tegnet og mottakeren, som er det definisjonen av pragmatikk kommer av. Dermed fremheve emnet pragmatikk i selve språksystemet, ved å fremheve spesielle språklige tegn, etter vår mening, er feil.

Så la oss definere vår egen posisjon i studien faget pragmatikk: Det er ikke det pragmatiske aspektet ved språket som er gjenstand for forskning, men det pragmatiske aspektet ved en spesifikk tekst som inngår i et sett med tekster, i vårt tilfelle QMS. I helheten av QMS-tekster er det nødvendig å fremheve forfatterens intensjoner som har en bærekraftig natur, gjentatte nivåer av innvirkning og, selvfølgelig, språk betyr vellykket implementering av det etablerte settet med mål og mål. Suksessfaktoren til et språklig tegn i sammenheng med implementeringen av et sett med mål og mål for en spesifikk tekst lar en holde seg innenfor rammen av "tegn-mottaker"-forholdet, og ikke begrenses til rent abstrakte tegnforhold. i språksystemet.

Selve logikken med å fremheve emnet pragmatikk avhengig av tekstens brukssfære (i sosial praksis) er ikke ny. Som G.V. Kolshansky skriver: "...Hvis vi ved pragmatikken til verbal kommunikasjon forstår oppnåelsen av ethvert mål - praktisk, teoretisk, fysisk, intellektuell, etc., så kan vi til en viss grad snakke om egenskapene til en persons bruk av et språklig tegn, men bare, tilsynelatende, i betydningen "vellykket" eller "mislykket" ble det kommunikative målet oppnådd. Slik suksess med verbal kommunikasjon kan bestemmes både for en individuell talehandling og som helhet for en viss sosial gruppe. Spørsmålet om det er tilrådelig å utvikle kriterier for "pragmatisk suksess" til en talehandling kan bare løses i rent anvendt forstand og i forhold til spesifikke områder av menneskelig språklig kommunikasjon » (uthevelse lagt til av oss - A.Sh.)[Kolshansky 1985: 149].

Kognitiv lingvistikk er nært knyttet til kommunikativ pragmatikk og diskursteorier. I forhold til disse temaene skiller den seg sterkt fra strukturell lingvistikk. Hvis det for strukturell lingvistikk var nok å postulere eksistensen av språk som et visst abstrakt nettverk av gjensidige avhengigheter, så er fokus for kognitiv lingvistikk ikke bare på språket i den uløselige enheten av dets form og substans, men også på en høyere enhet - enhet av språk og mennesket som handler i virkelige verden, tenker og erkjenner, kommuniserer med sin egen type.

Strukturell lingvistikk, statisk i sin essens, i kunnskapen om språk kom fra slike lingvistiske objekter som ordet og dets grammatisk form, setning, tekst; lingvistisk pragmatikk, basert på kognitiv lingvistikk, tar utgangspunkt i en person, hans behov, motiver, mål, intensjoner og forventninger, fra hans praktiske og kommunikative handlinger, fra kommunikative situasjoner der han deltar enten som initiativtaker og leder, eller som en "andre ” utøverroller.

Disipliner som diskursanalyse og analyse av samtale (dvs. spontan muntlig tale) styres av innstillingene til aktivitetsparadigmet. For representanter for dette paradigmet er ikke språket verdifullt i seg selv og studeres ikke i seg selv og for seg selv. Det er ontologisk og epistemisk inkludert i menneskelig aktivitet, som både er et av dets viktigste verktøy og et av dets mest verdifulle produkter. Dermed, kommunikativ tilnærming til språk kan defineres som en antropologisk tilnærming.

Innføringen av en antropologisk tilnærming til språk i lingvistikk har økt interessen for de personlige og sosiale aspektene ved foredragsholderens aktivitet. Det ble klart at implementering og tolkning av visse strategier for verbal kommunikasjon ikke kan gjennomføres uten å ta hensyn til de ulike personlige og sosiokulturelle aspektene ved den kommunikative prosessen. Fra perspektivet moderne tilnærminger Diskurs er et komplekst kommunikativt fenomen som i tillegg til tekster også inkluderer utenomspråklige faktorer (kunnskap om verden, meninger, holdninger, mål til adressaten) som er nødvendige for å forstå teksten.

Hvordan tas kognitive prosesser i betraktning i kommunikativ pragmatikk? I naturlig språklig kommunikasjon– med et stort og uendelig utvalg av faktorer som bestemmer det – antall mulige "trekk" kan ganske enkelt ikke beregnes. Den vanskeligste oppgaven med å beregne dem forenkles bare ved å identifisere noen tilbakevendende, mest typiske strukturer som forårsaker visse kognitive reaksjoner. Mange forskere fremhever to hovedaspekter i kognitiv diskursanalyse: strukturen til kunnskapsrepresentasjon og metodene for dens konseptuelle organisering.


For kommunikativ pragmatikk, som for kognitiv psykologi og kunstig intelligens, er altså temaet kunnskapsrepresentasjon like viktig. Enhver kommunikativ handling innenfor rammen av spontan eller organisert diskurs representerer implementeringen av visse kommunikative-kognitive strukturer. Slike kognitive strukturer er rammemodeller som inneholder informasjon av sosiokulturell karakter, eller kunnskap om det Wittgenstein kalte «språkspill».

For å forstå tekster – både skriftlige og muntlige – er det viktig hvordan «forfatteren» av budskapet og mottakeren «modellerer» kunnskap om verden. Kommunikasjon viser seg å være mulig bare hvis det er visse semantiske, informative "kondensasjoner" ("rammer", "mentale modeller", "scenarier", "situasjonsmodeller") i bevisstheten til hver taler, i hans bilde av verden) . Tilbake på 30-tallet av XX-tallet. F. Bartlett definerte begrepet "informasjonsskjema", et skjema representert i minnet. Dette konseptet har også gått inn i kognitiv psykologi. Som allerede nevnt, i datalingvistikk brukes begrepene "scenario" og "ramme"; i lingvistikk og sosiologi brukes også rammebegrepet. Rammer bidrar til adekvat kognitiv bearbeiding av typiske situasjoner, tekstkoherens, gir kontekstuelle forventninger, og gjør det mulig å forutsi kommende hendelser basert på tidligere støtt. Kommunikativ-kognitiv pragmatikk tilbyr dermed noen måter å studere hva som gjør tekster sammenhengende og sammenhengende for den som oppfatter.

Når en enkelt talehandling beskrives, tas ikke bare de generelle typiske mønstrene for praktisk og kommunikativ aktivitet i betraktning, men også de typiske organisasjonsmønstrene. indre verden foredragsholder, med andre ord, et sett med kognitive strukturer presentert i hans bilde av verden (sosialt og etnokulturelt bestemt, men individuell i sin måte å eksistere på). Produksjonen og forståelsen av tale er ikke bare basert på abstrakt kunnskap om stereotype hendelser og situasjoner - som i mentale modeller, manus og rammer - men også på den personlige kunnskapen til morsmålsbrukere, akkumulere deres tidligere individuelle erfaring, holdninger og intensjoner, følelser og følelser. T. van Dyck formulerer dette på en slik måte at folk ikke handler så mye i den virkelige verden og snakker ikke så mye om det, men om subjektive modeller av fenomener og situasjoner i virkeligheten. I denne forbindelse kan vi sitere fra boken til den berømte russiske lingvisten og filologen B. Gasparov: "Det unike med den livsspråklige opplevelsen til hver enkelt av oss skiller oss konstant fra hverandre" (B. Gasparov. Språk, minne, bilde: Linguistics of linguistic existence. M., 1996. S. 16).

Likevel forstår vi alltid på en eller annen måte hverandre – rett eller galt; fokus på forståelse er en grunnleggende betingelse for menneskelig kommunikasjon. Samtidig oppstår vellykket forståelse ikke bare når folk prøver å forstå betydningen av ord og uttrykk i en uttalelse, men også først og fremst når de er fokusert på intensjonen til samtalepartneren, på hva han ønsker å uttrykke, hva talehandling produserer.

Det første forsøket på å se på tale gjennom prismet til handlingene til en morsmålstaler kommer til uttrykk i teorien om talehandlinger, i dannelsen som synspunktene til slike forskere som J. Austin, J. Searle og P. Grice spilte en stor rolle.

I teorien om talehandlinger, først formulert av J. Austin, er hovedenheten "talehandlingen" - et kvantum av tale som forbinder en enkelt intensjon ("illokusjon"), et fullført minimalt segment av tale og det oppnådde resultatet. Grunnlaget for denne oppgaven er ideen om at minimumsenheten for menneskelig kommunikasjon ikke er en setning eller annet uttrykk, men en handling - utførelsen av visse handlinger, for eksempel en uttalelse, et spørsmål, en ordre, en beskrivelse, en forklaring, en unnskyldning, takknemlighet, gratulasjoner.

Ideene til J. Austin ble utviklet i arbeidet til J. Searle "Speech Acts", der det å snakke anses som å utføre visse handlinger. Tale, ifølge Searle, har en performativ natur, målet er enten å endre seg miljø høyttaler, eller i måten å tenke på til samtalepartneren. Den "illokusjonære intensjonen" til taleren er det sistnevnte prøver å formidle ved bruk av språk, og følgelig ligger essensen av kommunikasjonsprosessen i å avdekke denne intensjonen. For å forklare forståelse/misforståelse i kommunikasjonsprosessen, ble begrepet "vellykket illokusjonær handling" foreslått, hvis essens er å oppnå et visst resultat som det ble unnfanget og implementert for.

En kommunikasjonsforsker trenger å vite nøyaktig hva som bidrar til lytterens korrekte oppfatning av talerens intensjon – og dette er stort sett alt som forblir utenfor verbale uttrykk og likevel viser seg å være en integrert del av ytringen. Dette gjenværende "behind the scenes"-innholdet refererer både til den individuelle opplevelsen til individene som deltar i kommunikasjonen, og til kunnskaps-"bakgrunnen" som forener dem eller omvendt skiller dem.

Det er et allment akseptert faktum at ulike typer språklige fellesskap og sosiokulturelle lag i samfunnet er preget av språkbrukens originalitet. I prosessen med å mestre konteksten til en taleproduksjon, må deltakere i et talearrangement ha generell bakgrunnskunnskap av både språklig og historisk, kulturell og sosial karakter. I.V. Hübbenet definerer bakgrunnskunnskap som den sosiokulturelle bakgrunnen som kjennetegner opplevd tale. V.S. Vinogradov fremhever det nasjonale aspektet av bakgrunnskunnskap, uten å studere som det er umulig å oppnå en fullstendig og korrekt forståelse når du utveksler informasjon. For å lykkes med kommunikasjon er likheten i mentalitet viktig, noe som gir mulighet for minimale endringer i kunnskap i kommunikasjonsprosessen. Kommunikasjonsforskeren må derfor ta hensyn til «bakgrunnskunnskap», som er den gjensidige kunnskapen om realiteter mellom taleren og lytteren, som er grunnlaget for språklig kommunikasjon.

For tiden er det seks hovedretninger i studiet av diskurs: teorien om talehandlinger, interaksjonell sosiolingvistikk, etnografi av kommunikasjon, pragmatikk, samtaleanalyse og variasjonsanalyse. Kildene for dannelsen av forståelsesmodeller og metoder for diskursanalyse i de listede tilnærmingene (med alle de mange forskjellene mellom dem) var prestasjonene til slike disipliner som lingvistikk, antropologi, sosiologi, filosofi, kommunikasjonsteori, sosialpsykologi og kunstig intelligens .

Til tross for forskjellene i disse tilnærmingene er det noe felles og samlende i dem, som samtidig er vanlig i all kognitivt orientert språkforskning. Dette er språkets antroposentrisitet, eller mer presist, den praktiske, teoretiske og kulturelle kunnskapen og erfaringen som er innebygd i språket, mestret, meningsfull og direkte eller indirekte verbalisert av morsmål, og til slutt gjenopprettet - som et resultat av semantisk og konseptuell analyse - i form av et språklig verdensbilde.