Ново

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

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

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

Прочитајте више о Шта је програмски језик?

Упоређивање програмских језика

Постоји неколико начина за поређење рачунарских језика, али ради једноставности, упоредићемо их методом компилације и нивоом апстракције.

Склапање са шифром машине

Неки језици захтевају да се програми директно трансформишу у Мацхине Цоде - упутства која ЦПУ разуме директно. Овај процес трансформације назива се компилација. Језик састављања, Ц, Ц ++ и Пасцал су компилирани језици.

Тумачени језици

Остали језици се тумаче као Басиц, Ацтионсцрипт и Јавасцрипт или су комбинација оба компајлирана у средњи језик - то укључује Јава и Ц #.

Тумачени језик се обрађује током извођења. Свака линија се чита, анализира и извршава. Потребно је да сваки пут у петљи поново обрађујете линију оно што тумачи језике чини тако спорим. Овај режијски рачун значи да интерпретирани код ради између 5 и 10 пута спорије од компајлираног кода. Тумачени језици као што су Басиц или ЈаваСцрипт су најспорији. Њихова предност је што не морају да се прекомпонују након промена, а то је прикладно када учите да програмирате.

Будући да састављени програми готово увек раде брже од интерпретираних, језици попут Ц и Ц ++ најчешће су најпопуларнији за писање игара. Јава и Ц # се састављају на тумачен језик који је врло ефикасан. Пошто је виртуелни строј који тумачи Јава и .НЕТ оквир који изводи Ц # увелико оптимизовани, тврди се да су апликације на тим језицима брже, али не и брже од компајлираног Ц ++.

Ниво апстракције

Други начин упоређивања језика је ниво апстракције. Ово указује колико је одређени језик близак хардверу. Машински код је најнижи ниво, а језик монтаже је тик изнад њега. Ц ++ је виши од Ц јер Ц ++ нуди већу апстракцију. Јава и Ц # виши су од Ц ++ јер се преводе на средњи језик који се зове бајт код.

Како се језици упоређују

  • Брзи састављени језици

  • Језик скупштине
  • Ц
  • Ц ++
  • Пасцал
  • Ц #
  • Јава
  • Разумно брзо тумачи

  • Перл
  • ПХП
  • Слов Интерпретед

  • ЈаваСцрипт
  • АцтионСцрипт
  • Основни

Машински код су упутства која извршава ЦПУ. То је једино што ЦПУ може да разуме и изврши. Тумачени језици требају апликацију која се зове анПреводилац који чита сваки ред изворног кода програма и затим га „покреће“.

Тумачење је лакше

Врло је лако зауставити, променити и поново покренути апликације написане на тумаченом језику и зато су популарне за учење програмирања. Није потребна фаза компилације. Компилација може бити прилично спор процес. Великој Висуал Ц ++ апликацији може бити потребно од минута до сата да се компилирају, у зависности од броја кода који се мора обновити и брзине меморије и ЦПУ-а.

Када су се рачунари први пут појавили

Када су рачунари први пут постали популарни 1950-их, програми су се писали у машинском коду јер није било другог начина. Програмери су морали уносити вредности физички да укључе прекидаче. Ово је тако мучан и спор начин креирања апликације да су морали да се створе рачунарски језици вишег нивоа.

Ассемблер: Брзо трчање - споро писање!

Језик монтаже је читљива верзија Машинског кода и изгледа овако

Мов А, 45 УСД

Будући да је везан за одређени ЦПУ или породицу повезаних ЦПУ-а, језик монтаже није баш преносив и захтева много времена за учење и писање. Језици попут Ц смањили су потребу за програмирањем језика скупштине осим ако је РАМ ограничен или је потребан временски критичан код. То је обично у коду кернела у срцу оперативног система или у управљачком програму за видео картице.

Језик монтаже је најнижи ниво кода

Језик монтаже је веома низак ниво; већина кода само помера вредности између регистра ЦПУ-а и меморије. Ако пишете пакет за платне листе који желите да размислите о платама и пореским олакшицама, а не да региструјете локацију А на меморију КСИЗ. Због тога су језици вишег нивоа попут Ц ++, Ц # или Јава продуктивнији. Програмер може размишљати у смислу проблематичне домене (плате, одбитци и обрачуна), а не хардверске домене (регистри, меморија и упутства).

Програмирање система са Ц

Ц је осмислио почетком 1970-их Деннис Ритцхие. То се може сматрати алатом опште намене - врло користан и моћан, али врло једноставан пропуст грешака који могу учинити системе несигурним. Ц је језик ниског нивоа и описан је као преносни скупштински језик. Синтакса многих скриптних језика заснива се на Ц, на пример, ЈаваСцрипт, ПХП и АцтионСцрипт.

Перл: Веб странице и услужни програми

Веома популаран у свету Линука, Перл је био један од првих веб језика и данас је веома популаран. За брзо и прљаво програмирање на вебу остаје без премца и покреће многе веб странице. ПХП је то донекле помрачио као језик веб скрипта.

Кодирање веб локација помоћу ПХП-а

ПХП дизајниран је као језик за Веб сервере и веома је популаран у комбинацији са Линуком, Апацхеом, МиСкл-ом, а укратко и ПХП-ом или ЛАМП-ом. Тумачи се, али је унапред састављен тако да се код извршава брзо. Може се изводити на десктоп рачунарима, али се не користи тако широко за развој десктоп апликација. На основу Ц синтаксе, обухвата објекте и класе.

Пасцал је замишљен као наставни језик неколико година пре Ц, али био је веома ограничен са лошим руковањем стринговима и датотекама. Неколико произвођача је продужило језик, али свеукупног лидера није било све док се нису појавили Борландов Турбо Пасцал (за Дос) и Делпхи (за Виндовс). То су биле снажне имплементације које су додале довољно функционалности да би биле погодне за комерцијални развој. Међутим, Борланд је био против много већег Мицрософта и изгубио битку.

Ц ++: Одличан језик!

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

Ц #: Мицрософтова велика понуда

Ц # је креирао архитект Делпхи Андерс Хејлсберг након што је прешао на Мицрософт, а програмери Делпхи ће се осећати као код куће са функцијама као што су Виндовс обрасци.

Ц # синтакса је врло слична Јави, што и не чуди јер је Хејлсберг такође радио на Ј ++ након што је прешао у Мицрософт. Научите Ц # и добро сте на путу ка познавању Јаве. Оба језика су полу-компајлирана, тако да уместо компилације за машински код, они се компајлирају у бајт код (Ц # компајлира у ЦИЛ, али су и Битецоде слични), а затим се интерпретирају.

Јавасцрипт: Програми у вашем прегледачу

Јавасцрипт није ништа као Јава, уместо тога, његов скриптни језик заснован на Ц синтакси, али уз додавање објеката и користи се углавном у прегледачима. ЈаваСцрипт се тумачи и много је спорији од компајлираног кода, али добро функционише у прегледачу.

Нетсцапе је измислио да се показао врло успешним и након неколико година проведених у искушењу ужива у новом закупу живота збогАЈАКС; Асинхрони Јавасцрипт и КСМЛ. Ово омогућава да се делови веб страница ажурирају са сервера без поновног цртања целе странице.

АцтионСцрипт: Фласхи Лангуаге!

АцтионСцрипт је имплементација ЈаваСцрипта, али постоји искључиво у Мацромедиа Фласх апликацијама. Користећи векторску графику, користи се углавном за игре, репродукцију видео записа и друге визуелне ефекте и за развој софистицираних корисничких интерфејса, а све раде у прегледачу.

Основно за почетнике

Основни је скраћеница за почетни вишенаменски курс симболичког упутства и створен је да подучава програмирање у 1960-има. Мицрософт је направио језик свој са много различитих верзија, укључујући ВБСцрипт за веб локације и веома успешан Висуал Басиц. Најновија верзија тога је ВБ.НЕТ и ради на истој платформи .НЕТ као Ц # и производи исти ЦИЛ бајт код.

Луа је бесплатни скриптни језик написан на Ц који укључује одвоз смећа и кораке. Добро се повезује са Ц / Ц ++ и користи се у индустрији игара (и не-играма) за скрипту логике игара, покретаче догађаја и контролу игре.

Закључак

Иако свако има свој омиљени језик и уложио је време и ресурсе у учење како га програмирати, постоје неки проблеми који су најбоље решити правим језиком.

Е.Г не бисте користили Ц за писање веб апликација и не бисте написали оперативни систем у Јавасцрипт-у. Али који год језик да одаберете, ако је то Ц, Ц ++ или Ц #, барем знате да сте на правом месту да то научите.


Погледајте видео: Srpski za 5: Stilske figure (Јули 2021).