КАТЕГОРИИ:


Астрономия- (809) Биология- (7483) Биотехнологии- (1457) Военное дело- (14632) Высокие технологии- (1363) География- (913) Геология- (1438) Государство- (451) Демография- (1065) Дом- (47672) Журналистика и СМИ- (912) Изобретательство- (14524) Иностранные языки- (4268) Информатика- (17799) Искусство- (1338) История- (13644) Компьютеры- (11121) Косметика- (55) Кулинария- (373) Культура- (8427) Лингвистика- (374) Литература- (1642) Маркетинг- (23702) Математика- (16968) Машиностроение- (1700) Медицина- (12668) Менеджмент- (24684) Механика- (15423) Науковедение- (506) Образование- (11852) Охрана труда- (3308) Педагогика- (5571) П Arhitektura- (3434) Astronomiya- (809) Biologiya- (7483) Biotehnologii- (1457) Военно дело (14632) Висока технологиите (1363) Geografiya- (913) Geologiya- (1438) на държавата (451) Demografiya- ( 1065) Къщи- (47672) журналистика и SMI- (912) Izobretatelstvo- (14524) на външните >(4268) Informatika- (17799) Iskusstvo- (1338) История- (13644) Компютри- (11121) Kosmetika- (55) Kulinariya- (373) култура (8427) Lingvistika- (374) Literatura- (1642) маркетинг-(23,702) Matematika- (16,968) инженерно (1700) медицина-(12,668) Management- (24,684) Mehanika- (15423) Naukovedenie- (506) образование-(11,852) защита truda- (3308) Pedagogika- (5571) п Политика- (7869) Право- (5454) Приборостроение- (1369) Программирование- (2801) Производство- (97182) Промышленность- (8706) Психология- (18388) Религия- (3217) Связь- (10668) Сельское хозяйство- (299) Социология- (6455) Спорт- (42831) Строительство- (4793) Торговля- (5050) Транспорт- (2929) Туризм- (1568) Физика- (3942) Философия- (17015) Финансы- (26596) Химия- (22929) Экология- (12095) Экономика- (9961) Электроника- (8441) Электротехника- (4623) Энергетика- (12629) Юриспруденция- (1492) Ядерная техника- (1748) oligrafiya- (1312) Politika- (7869) Лево- (5454) Priborostroenie- (1369) Programmirovanie- (2801) производствено (97182) от промишлеността (8706) Psihologiya- (18,388) Religiya- (3217) с комуникацията (10668) Agriculture- (299) Sotsiologiya- (6455) спортно-(42,831) Изграждане, (4793) Torgovlya- (5050) превозът (2929) Turizm- (1568) физик (3942) Filosofiya- (17015) Finansy- (26596 ) химия (22929) Ekologiya- (12095) Ekonomika- (9961) Telephones- (8441) Elektrotehnika- (4623) Мощност инженерно (12629) Yurisprudentsiya- (1492) ядрена technics- (1748)

Развитието на езици за програмиране




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

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

3. През 1954 г. започва третото поколение на PL: в дълбините на екипа за развитие на IBM, водена от Джон Бакъс (Йоан Бакъс) е създаден Fortran език за програмиране. Значимостта на това събитие не може да се надценява. Това е първият език за програмиране на високо ниво. За първи път на програмиста наистина може да се игнорира характеристиките на машината архитектура. Ключовата идея, която разграничава новия език на събранието, е концепцията за съчетания. Не забравяйте, че този модерен съчетания компютри подкрепа на хардуерно ниво, като предоставя необходимите команди и структури от данни (стек) директно на ниво сглобяване, през 1954 г., същата година, че е напълно погрешно. Затова процес Fortran компилация никакъв случай не е тривиален. В допълнение, синтактичната структура на езика е доста трудно за обработка на първо място се дължи на факта, че пространствата като синтактични единици не се използват изобщо.
използва Fortran език (и все още се използва днес) за научни изчисления. Той страда от липсата на много запознат езикови конструкции и атрибути, компилаторът на практика няма проверки синтактично правилно програмата от гледна точка на семантична коректност (видове линия, и така нататък.). Няма поддръжка за съвременните начини на структуриране на кода и данните.

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

През 1960 г. екип под ръководството на Петър Naur (Peter Naur) Алгол език за програмиране е създаден. Този език е довела до цяло семейство на Алгол подобни езици (най-важните представители - Паскал). През 1968 г., нова версия на езика. Тя не се намери такъв широк практическото използване на, като първата версия, но тя е много популярна в теоретичните кръгове. Езикът е доста интересен, защото той има много уникални характеристики във времето, тъй като.



През 1963 Дартмур колеж (Dartmouth College) е създадена език за програмиране BASIC (за начинаещи от символи от Инструкция кодекс - многоцелеви език символична инструкция за начинаещи). Език бе замислен преди всичко като средство за познание и като първи език за програмиране да бъдат проучени. Той е трябвало да се тълкува лесно и компилиран. Аз трябва да кажа, че BASIC наистина се превърна в езика на програмата за изследване (поне това беше преди няколко години, а сега тази роля отива на Pascal). Тя е създадена на няколко мощни ОСНОВНИ приложения, които поддържат усъвършенствани програмни концепции (най-яркият пример - Microsoft Visual Basic).

През 1964 г., все едно, IBM е създала език PL / 1, който трябваше да замени Cobol и Fortran в повечето приложения. Език оказва изключително богатство от синтактични конструкции. Той за първи път дойде обработка на изключения и конкурентност. Трябва да се отбележи, че синтактичната структура на езика е изключително трудно. Благодарение на тези характеристики на развитието на компилатор за PL / 1, че е изключително трудно. Език не е станала популярна извън IBM по света.

През 1970 г. Никлаус Вирт е създаден Паскал език за програмиране. Езикът е забележителен с това, че е първият широко разпространен език за структурирани програмиране (първият, строго погледнато, е Алгол, но това не е толкова широко разпространена). За първи път безусловно прехвърляне на оператор престанали да играят основна роля в управлението на реда на изпълнение на операторите. Този език се въвежда строг вид проверка, което позволява откриване на много грешки по време на компилация. Недостатъкът на езика е липсата на това означава да се раздели на програмата на модули. Вирт реализира това и развива Modula-2 (1978), в който идеята за модул е един от ключовите концепции на езика.

През 1972 г. Kernighan и Ричи е създаден на C език за програмиране. Той е създаден за развитието на операционната система на езика на UNIX. С често се нарича "преносим асемблер", което означава, че тя позволява да се работи с данните, почти толкова ефективно, колкото асемблер, като същевременно осигурява структуриран контролна структура на високо ниво и абстракции (структури и решетки). Това обяснява огромната си популярност и до днес. И това е, което е неговата ахилесова пета. C компилатор е много малко контрол върху видовете, така че е много лесно да се напише външно абсолютно правилно, но логично погрешна програма.

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

1. лексикално анализ - идентифицирани различни символи и са класифицирани от ключовите думи на базата на оригиналния модул, числените стойности, и т.н.

2. Разбор - определено съотношение синтаксис на ключови думи и структурната основата на програмата е изградена.

3. Генериране на модула на обект, което съответства на структурата на разбор от програмата компилатор.

4. Оптимизиране на модула за обект с цел повишаване на ефективността.

Еволюция на HLL постепенно доведе до така наречения модулен тип и структурна programmiroraniya, когато програмата е проектирана като независими модула, всеки от които се комбинират логическа организация, структури за контрол и неговата цена е практически без етикети и безусловни скокове.

Структуриран програмиране означава такъв стил и подход към писането на програми, които основно са подчинени на логиката на решаването на проблема. Нейните основни принципи: о Проектиране програми от горе до долу о модул (процедури и функции) о структурно кодиране (запис на ПЗ)
  1. езици от четвърто поколение са не по-процесуален характер, т.е. програми в тези езици описват само какво да правя, но не и как да го направя. Типични примери са езиците на изкуствения интелект и логика програмиране. Предшественикът на следните езици стана Prolog език, който се появи през 1971 година.

Второто направление на развитието на HLL е появата на обектно-ориентирани езици за програмиране.

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

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

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

Следващата посоката на развитие на четвъртото поколение са езици за заявки, които позволяват на потребителя да получи необходимата информация от базата данни въз основа на заявката, в близост до естествен език и построен върху синтактично прости правила. Сред тях най-често срещаните езици стана SQL език, разработен от IBM. Въз основа на този език са повечето от модерна система за управление на бази данни (СУБД).

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

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

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

Паралелната изчислителна модел Линда бе предложена през 1985 година. Неговата основна задача е да организира взаимодействието между паралелни текущите процеси.

5. Петото поколение на езици за програмиране.

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

о JavaScript език е създаден в компанията Netscape Communications като език за описване на комплекс поведението на уеб страниците. Тълкува от браузъра при отварянето на уеб страници. Синтаксис подобен на Java, и (разстояние) с C / C ++. Той има способността да използвате вградената функционалност на браузъра обект, но истински обектно-ориентиран език не е така.

о VBScript е създаден в Microsoft по много начини, като алтернатива на JavaScript. Той разполага с подобен спектър от приложения. Синтактично подобен на езика на Visual Basic (и съкратена версия на последния). Точно като JavaScript, се изпълнява от браузъра при показване на уеб страници и има същата степен на обектно-ориентиране.

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

о Python - интерпретиран обектно-ориентиран език за програмиране. Структурата и прилагането близо до Perl, но е по-рядко срещан и по-тежко и логична. Има приложения за повечето съществуващи платформи.

С петото поколение на езици за програмиране и включва езика на изкуствен интелект, експертни системи и бази от знания, както и естествените езици.

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

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

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

От всички езици, с енергично семантика спомена ML и две модерни диалекти - Standard ML (ГСМ) и CAML. Последният има обектно-ориентирана потомък - Цел CAML (O'CaML). Сред езиците с мързеливи семантика на двата най-разпространени: Haskell и по-просто диалект Clean.