Савремени програмски језик на високом нивоу: примери и поређења

21. 4. 2019.

Већина модерних компјутерских програма је написана на језицима високог нивоа. Важно је напоменути да су многи од њих развијени још у шездесетим и седамдесетим годинама, али су и даље релевантни. Које друге чињенице о језицима високог нивоа можемо истакнути? Које су најчешће врсте одговарајућих решења?

Програмски језик високог нивоа

Суштина програмских језика на високом нивоу

Програмски језик високог нивоа је алат који се односи на машину. Шта то значи? Чињеница је да су програмски језици подијељени у неколико категорија.

Постоји машински код: скуп алгоритама који су дизајнирани да директно контролишу кориснике хардверских елемената рачунара. Њихова суштина ће бити потпуно зависна од машине: само одређени алгоритми су погодни за одређене типове рачунара.

Први програмски језик на високом нивоу створен за

Постоје скупни језици. У ствари, они су надградња изнад оних намењених за контролу ниског нивоа хардверских компоненти рачунара помоћу машинског кода. Али на много начина, језици за склапање се такође обично називају зависни од машине. По правилу, они су прилагођени специфичном типу ПЦ хардверске компоненте. Њихов главни задатак је да поједноставе управљање рачуналом за корисника кроз одговарајуће комуникације ниског нивоа.

Заузврат, програмски језик високог нивоа омогућава кориснику интеракцију са рачунаром, без обзира на то који је хардвер инсталиран на рачунару. Према томе, треба га приписати машински независном. Приликом писања оперативних система, најчешће је укључен програмски језик високог нивоа. Али постоји ОС који је написан у асемблеру. Програмски језици ниског и високог нивоа могу се користити истовремено. Особа која даје команде на високом нивоу ПЦ-ју мора, на овај или онај начин, да их саопшти одређеним хардверским компонентама, а ова функција се може реализовати употребом асемблерских језика истовремено са високим нивоима који су укључени у структуру оперативног система.

Преводиоци високог нивоа програмског језика

Транслаторс

Најважнији елементи програмских језика високог нивоа су преводиоци. Њихова функција може бити другачија. Међу кључним областима примене преводилаца је “превођење” команди генерисаних у програмском језику на високом нивоу у машински код који је разумљив одређеној хардверској компоненти рачунара, на пример, процесору. Преводиоци који обављају ову функцију се такође називају компајлери. Постоји још једна врста релевантних компоненти - тумача. Намјера им је, с друге стране, да "преведу" команде на високом нивоу у оне које су разумљиве оперативном систему или било којем програму.

Класификација језика високог нивоа

Програмски језици на високом нивоу могу се класификовати из разних разлога. Шема се дистрибуира према којој се дијеле на сљедеће главне сорте:

- процедурално оријентисан (користи се као алат за обрада информација у било којој фази обрачуна);

- проблемски оријентисано (користи се као средство за решавање индустријских и примењених проблема који се формирају приликом ширења поља примене ПЦ-а);

- објектно оријентисани (могу бити посебни случајеви језика првих двају типова, међутим, они су прилагођени за употребу широком кругу програмера са различитим нивоима обуке, на примјер, у облику рјешења са визуалним интерфејсом).

Погледајмо сада неке од историјских и модерних програмских језика високог нивоа који одговарају овој класификацији.

Модерни програмски језици високог нивоа

Процедурални језици

То укључује ФОРТРАН. Сматра се првим програмским језиком на високом нивоу који је дизајниран за широку употребу. Карактерише га једноставна структура. Процедурални језици укључују и БАСИЦ. Сматра се једним од најчешће коришћених при учењу програмирања. Пример другог процедуралног језика је СИ. Изворно је креиран за УНИКС ОС. На његовој основи, касније је креиран Ц ++ језик, допуњен алаткама за објектно оријентисано програмирање. Други језик у овој категорији је Пасцал. Често су такође укључени у учење програма. Могућности овог језика омогућавају да се он користи као веома моћно средство за развој професионалних типова софтвера.

Проблемски оријентисани језици

То укључује Лисп, Пролог. Први језик развијен је 1962. - неколико година након стварања Фортрана. Сматра се, дакле, као друга у историји. Активно укључен као алат за програмирање за рад са низовима знакова. У пракси, Лисп је коришћен у системима који су класификовани као стручни, као и они који су намењени аналитичким прорачунима. Прологуе се широко користи у логичком програмирању. У пракси се најчешће користи у управљању алгоритмима вештачке интелигенције у одговарајућим системима.

Објецт ориентед лангуагес

Сада проучавамо примере програмских језика високог нивоа који су објектно оријентисани. Ово укључује Висуал Басиц, Делпхи, Висуал Фортран, Ц ++ горе наведено и Пролог ++. Практично сви од њих су засновани на процедурално оријентисаним језицима. Међутим, од њих се очекује да буду значајно допуњени визуелним контролама у сврху накнадног овладавања потребним алгоритмима од стране програмера који су навикли на друге алате. Тако, први високи ниво програмског језика, Фортран, ИТ стручњаци могу брзо проучити кроз могућности Висуал Фортрана. Користећи сличан начин, можете брзо савладати Басиц или Пролог.

Програмски језици високог нивоа Пасцал

Делпхи програмирање на високом нивоу Објецт Пасцал, заузврат, је имплементирано. Постоји велики број других окружења за развој софтвера класификованих као објектно оријентисани језик. Ова област технологија развоја софтвера се активно развија.

Фортран и Лисп - први и други језик високог нивоа

Да сазнамо више о томе како се појавио први програмски језик на високом нивоу - Фортран, као и Лисп, који се сматра другим. Године 1954, ИБМ-ови програмери, предвођени Јохном Бацкусом, креирали су језик кроз који су програмери имали прилику да увелико олакшају интеракцију са ПЦ-има, који су до тада били имплементирани кроз машинске инструкције или асемблер. Име је добио Фортран и ускоро је постао познат у СССР-у под русификованим именом. Фортран је постао популаран алат за научно рачунарство.

Главни револуционарни елемент који је заједница заједнице предложила заједници је, у ствари, исти компајлер, дизајниран да буде алтернатива асемблеру. У првим годинама праксе писања програма када се користи Фортран, многи програмери су сматрали да преводилац није потпуно успешно решење, пре свега у смислу трошкова рада. Многе шифре машина су заиста компликоване него када се користи преводилац. Међутим, са брзим повећањем перформанси рачунара, програмери су почели да схватају да би без употребе компајлера ефикасан софтвер који би у потпуности искористио рачунарску снагу ПЦ-ја био изузетно проблематичан. Дакле, ИБМ-ове иницијативе за развојне инжењере су даље развијене. Основни синтактички конструкти програмског језика на високом нивоу Фортран у многим случајевима почели су да делују као основни при креирању нових решења.

Примјер постизања практичних резултата у развоју концепата уграђених у Фортран може се сматрати стварањем Лиспа. Овај језик је развијен 1958. године, међутим, постао је широко познат мало касније - 1960. године. Лисп је развио Јохн МцЦартхи и објављен у једном од популарних часописа за ИТ стручњаке. Главна сврха језика је обрада листе. Лисп је постао популаран међу програмерима система вештачке интелигенције. На основу тога, створени су језици као што су Планер, Сцхеме и Цоммон Лисп. Лисп је такође имао значајан утицај на многе модерне алате за развој софтвера. Структура програмских језика високог нивоа који су данас популарни углавном се заснива на Фортрановим и Лисп алгоритмима.

Било би занимљиво, међутим, размотрити друге приступе класификацији разматраних алата за развој софтвера.

Универзални језици високог нивоа

Тако модерни стручњаци истичу универзалне језике високог нивоа. То се посебно односи на оне који су развијени 60-их година. Њихове кључне карактеристике:

- фокусирање на широк спектар задатака (првенствено везаних за рачунарство);

- Велики број језичких конструкција и алгоритама;

- значај не само за своје време, већ и за савремену фазу развоја рачунарске опреме;

- подршка у релевантним језицима императивном методологијом.

Делпхи програмирање на језику високог нивоа

Универзални језици су фундаментални за релевантну ИТ индустрију. Може се примијетити да до сада немају директне аналогије у дијелу унутарње структуре. У ствари, ово у великој мери објашњава релевантност употребе релевантних језика у модерним објектно оријентисаним интерфејсима. Такође, у одабраним језицима је уобичајен тип података. Овај фактор у великој мјери одређује њихову универзалност. Међу најзначајнијим особинама језика који припадају категорији универзалног је континуитет. Дакле, хисторијски касније језици, по правилу, били су засновани на концептима претходника.

Јединствени језици

Неки ИТ стручњаци разликују „јединствене језике“ као независну категорију. То су: АПЛ, Цобол, Фортх, СЕТЛ и ЦЛУ. Која је њихова специфичност?

Најважнији аспект АПЛ-а је употреба низова (вектора и матрица) као кључног структурног типа. Специфичност коболског језика је у фокусу комерцијалне сфере. Стога је препоручљиво користити га у рјешавању проблема везаних за стандардизирани формат за презентирање резултата. Фортх језик карактерише употреба постфиксног писања програма, као и употреба стацк нотације. У СЕТЛ-у, скупови вредности се користе као један од кључних типова података. Програмски језик високог нивоа је и ЦЛУ. Његова главна карактеристика је употреба концепта рада са апстрактним типовима података. Многи ИТ стручњаци виде логично појављивање нових решења заснованих на јединственим језицима - као што је, на пример, објектно оријентисани кобол.

Основне синтактичке конструкције програмског језика високог нивоа

Алати за паралелно програмирање

Ова категорија може укључивати велики број рјешења. Заузврат, паралелни програмски језици могу имати велики број разлога за класификацију. На пример, метод организације организације. Ова основа сугерише класификацију алата за паралелно програмирање засновано на присуству:

- цороутинес;

- виљушке;

- удружења;

- паралелне конзоле;

- алгоритми за рад са процесима.

Друга основа за класификацију језика овог типа су методе синхронизације процеса. Релевантна рјешења стога могу укључивати:

- семафори;

- монитори;

- “Рендезвоус”;

- критична подручја;

- позив на даљинску процедуру;

- трансакције везане за категорију атомских.

Језици овог типа су Модула-2, БЛИСС, Цонцуррент Пасцал, ДП, Аргус.

Ц језик породице

Изнад, ми смо сматрали решење као што је Ц као пример програмског језика на високом нивоу. Језици који му припадају су посебни Ц-конструкти, тако да је додавање различитих објектно-оријентисаних компоненти довело до развоја Ц ++-а. Након значајног филтрирања низа Ц конструкција, појавио се Јава језик. Може се примијетити да је Јава настала углавном под утјецајем концепата Оберон пројекта, који води Никлаус Виртх, творац Пасцал језика. Да ли се односи на ЈаваСцрипт на високом нивоу? Наравно, да, упркос својој уској примјени, као алат за развој веб страница. Међутим, програмски језици на високом нивоу не укључују, посебно, ХТМЛ, КСМЛ и СГМЛ. Они су класификовани као алати за хипертекстуално означавање.

Пасцал лангуаге фамили

Програмски језици високог нивоа Пасцал такође чине одвојену породицу. На основу Паскала, Оберон је заправо створен, класификован као објектно оријентисани језик. Кључна карактеристика Оберона је његова способност сигурности. Уз Оберон, језици породице Пасцал укључују Модула-2, као и Цомпонент Пасцал.

Ада језична породица

Оснивање у одговарајућој категорији језика - уређено према потребама америчког Министарства одбране Ада. Настао је крајем 70-их - почетком 80-их. Карактерише га велики број функција, карактеристика, свестраност. Ада језична породица укључује решења као што су Цедар, Модула 3.

Симула Лангуаге Фамили

Симула језик је уобичајен у програмским индустријама које се односе на симулацију. Специфичност релевантних одлука је у употреби одређеног језгра. Његова употреба омогућава употребу разних проширења, прилагођених различитим апликацијама. На основу Симуле, створен је објектно-оријентисани језик Смаллталк, као и БЕТА, карактеризиран способношћу комбиновања, унутар једне апстракције, алгоритама који одражавају рад са подацима, процедурама и контролом. БЕТА објекти могу се посматрати у различитим контекстима, на пример, као варијабле, функције или паралелни системи.