Забони тафсиршуда як забони барномасозӣ мебошад, ки барои иҷрои барномаҳо тарҷумонро истифода мебарад. Баръакси забонҳои барномасозии тартибдодашуда, ки дар он рамзи ибтидоии барнома як маротиба пеш аз иҷро ба коди мошинӣ тарҷума мешавад, забонҳои тафсиршуда ҳангоми иҷрои барнома зина ба зина аз ҷониби тарҷумон иҷро карда мешаванд.

Намунаҳои забонҳои тафсиршуда Python, JavaScript, Ruby ва PHP мебошанд. Дар ин забонхо коди программа пешакй ба коди мошинй мураттаб карда намешавад, вале интерпретатор дар вакти ичрои программа бевосита фармонхоро ичро мекунад. Ин чандирро таъмин мекунад, аммо метавонад иҷрои онро нисбат ба забонҳои тартибдодашуда коҳиш диҳад.

Агар шумо ягон бор барномарезӣ карда бошед, эҳтимол шумо медонед, ки ду намуди забонҳои барномасозӣ мавҷуданд: забонҳои тартибдодашуда ва тафсиршуда. Ҳангоми истифодаи забони тартибдодашуда, код пеш аз захира шудан ҳамчун файли иҷрошаванда ба маҷмӯи дастурҳои мушаххаси мошин кам карда мешавад. Дар забонҳои тафсиршуда, код дар ҳамон формате, ки дар он ворид шуда буд, нигоҳ дошта мешавад ва дар вақти корӣ ба дастурҳои мошин табдил дода мешавад. Баъзе забонҳо, ба монанди Basic, дар версияҳои тартибдодашуда ва тафсиршуда дастрасанд.

PostScript забон аст, который интерпретируется. Нет компиляторов PostScript.

Тарҳрезӣ барои кори бе мушкилот

Забонҳои тартибдодашуда.

Забонҳои барномасозии тартибдодашуда забонҳое мебошанд, ки дар онҳо коди ибтидоии барнома пеш аз иҷрои барнома ба коди мошин ё коди байткод табдил дода мешавад. Ин дар давоми раванди компиляция рӯй медиҳад, ки дар он компилятор тамоми коди сарчашмаро таҳлил мекунад ва файли иҷрошавандаеро месозад, ки онро мустақиман дар платформаи мақсаднок иҷро кардан мумкин аст.

Инҳоянд чанд намунаи забонҳои барномасозӣ:

  • C ва C++:

Забонҳои C ва C++ ба коди мошинӣ мураттаб шудаанд, ки барномаҳоро дар ин забонҳо самаранок мегардонанд. Онҳо аксар вақт барои барномасозии системаҳо, таҳияи системаи амалиётӣ ва системаҳои дохилӣ истифода мешаванд.

  • Забони тафсиршуда. Java:

Гарчанде ки Java дар аввал ба байт-коди фосилавӣ тартиб дода мешавад, пас ин байт-код тавассути мошини виртуалии Java (JVM) тафсир карда мешавад ё ҳангоми иҷрои барнома ба рамзи мошини Just-In-Time (JIT) тартиб дода мешавад.

  • C# (C-Sharp):

Рамзи C# ба байткоди мобайнӣ (IL - Забони миёнаравӣ) тартиб дода мешавад, ки баъдан дар мошини виртуалии Common Language Runtime (CLR) иҷро карда мешавад. Маҷмӯаи Just-in-time (JIT) метавонад дар вақти корӣ IL-ро ба рамзи мошин табдил диҳад.

  • Фортран:

Fortran як забони барномасозии классикӣ мебошад, ки аксар вақт дар барномаҳои илмии ҳисоббарор истифода мешавад.

  • Забони тафсиршуда. Бирав (Голанг):

Рамзи Go ба рамзи мошин тартиб дода мешавад ва барои кор кардани мошини виртуалӣ талаб намекунад.

Манфиатҳои забонҳои тартибдодашуда иҷрои баландтарро дар бар мегиранд, зеро рамзи мошин одатан нисбат ба рамзи тафсиршуда самараноктар аст. Бо вуҷуди ин, раванди тартибдиҳӣ пеш аз иҷрои барнома вақти иловагӣ талаб мекунад ва файлҳои иҷрошаванда метавонанд аз меъморӣ ва системаи амалиётӣ вобаста бошанд.

Таърифҳо ва шартҳои тарроҳии веб

Забони тафсиршуда.Рамзи PostScript тафсир карда мешавад

PostScript забони тафсиршаванда аст: вақте ки шумо дар QuarkXpress саҳифа эҷод мекунед ва онро чоп мекунед, QuarkXPress барномаи PostScript эҷод мекунад, ки мундариҷаи шоҳасари шуморо тавсиф мекунад ва онро ба дастгоҳи баромади интихобкардаатон мефиристад. Ин дастгоҳи баромад, масалан принтери лазерӣ, дорои компютери худ мебошад, ки барномаи RIP ном дорад. Ин барномаи RIP дастурҳои PostScript-ро мехонад ва сипас онҳоро ба чизе тарҷума мекунад, ки протсессори RIP метавонад коркард кунад. Забони тафсиршуда

Далели он, ки рамзи PostScript ҳамеша тафсир мешавад, якчанд бартариҳои хос дорад:

Рамзи PostScript тафсир карда мешавад ва ин якчанд бартариҳои хос дорад:

  • Истиқлолияти платформа:

Азбаски рамзи PostScript тафсир карда мешавад, на ба коди мошинсозӣ, он метавонад дар платформаҳои гуногун бидуни ниёз ба такрор кор кунад.

  • Забони тафсиршуда. Эҷоди ҳуҷҷати динамикӣ:

Тафсири коди PostScript имкон медиҳад, ки ҳуҷҷатҳо ба таври динамикӣ эҷод карда шаванд. Ин маънои онро дорад, ки шумо метавонед ба ҳуҷҷат ҳангоми таҳия ё баровардани он тағйирот ворид кунед.

  • Ба осонӣ ислоҳ кардан ва санҷиш:

Рамзи тафсиршуда ислоҳи ислоҳро осонтар мекунад, зеро тағиротро мустақиман ба коди сарчашма бидуни зарурати дубора тартиб додан мумкин аст.

  • чандирӣ ва динамизм:

Тарҷума ба шумо имкон медиҳад, ки графика ва ҳуҷҷатҳои мураккаб ва динамикӣ эҷод кунед, ки махсусан дар соҳаи графикаи компютерӣ ва нашрия муҳим аст.

  • Забони тафсиршуда. Коркарди ҷараён:

Рамзи PostScript-ро метавон ҳамчун ҷараёни фармонҳое муаррифӣ кард, ки аз ҷониби тарҷумон дар як вақт иҷро мешавад. Ин коркарди ҷараёнии маълумотро дастгирӣ мекунад ва коркарди миқдори зиёди иттилоотро осон мекунад.

  • Осонии васеъшавӣ:

Азбаски PostScript ба эҷоди динамикии ҳуҷҷатҳо имкон медиҳад, рамзи он метавонад ба осонӣ васеъ карда шавад ва мувофиқи эҳтиёҷот тағир дода шавад.

Бо вуҷуди ин, бояд қайд кард, ки тафсири рамзи PostScript дар муқоиса бо пеш аз тартиб додани он ба коди мошин метавонад таъсир расонад. Вобаста ба талаботи мушаххас ва ҳолати истифода, ин метавонад бартарӣ ё нуқсон бошад.

Албатта, тафсир низ камбудиҳои худро дорад:

Интерпретация кода также имеет свои недостатки, и они могут включать в себя инҳоянд:

  • Иҷро:

Интерпретация обычно менее эффективна с нуқтаи назар производительности по сравнению с компиляцией в машинный код. Интерпретатор должен выполнять код пошагово, что может замедлить выполнение программы.

  • Забони тафсиршуда. Талабот ба захираҳо:

Тафсир метавонад захираҳои бештарро талаб кунад, ба монанди вақти CPU ва хотира, назар ба тартиб додан. Ин хусусан хангоми ичрои амалиёти мураккаб ва ресурсталаб хеле мухим аст.

  • Оптимизатсияи маҳдуд:

Тарҷумонҳо аксар вақт наметавонанд ҳамон оптимизатсияи пурқувватро ҳамчун компиляторҳо иҷро кунанд, зеро оптимизатсияро танҳо дар вақти корӣ иҷро кардан мумкин аст.

  • Забони тафсиршуда. Тафтиши статикӣ нест:

Баръакси забонҳои тартибдодашуда, ки хатогиҳо аксар вақт дар марҳилаи тартибдиҳӣ ошкор карда мешаванд, дар забонҳои тафсиршуда хатогиҳоро танҳо ҳангоми иҷрои код ошкор кардан мумкин аст.

  • Вобастагии тарҷумон:

Забонҳои тарҷумашуда барои иҷро кардани код тарҷумонро талаб мекунанд. Ин метавонад паҳн кардани барномаҳоро дар платформаҳои гуногун душвор созад.

  • Мушкилоти муҳандисии баръакс:

Рамзи тафсиршуда одатан ба муҳандисии баръакс мувофиқтар аст, зеро онро нисбатан осон хондан ва таҳлил кардан мумкин аст.

  • Забони тафсиршуда. Рамзи бештар:

Рамзи тафсиршуда метавонад нисбат ба коди муодили дар коди мошинӣ тартибдодашуда васеътар ва ҳаҷмтар бошад.

Ҳарчанд тафсир маҳдудиятҳои худро дорад, он як усули муфид ва тавоно дар соҳаҳои муайяни барномасозӣ боқӣ мемонад, ба монанди забонҳои скрипт, ки дар он ҷо чандирӣ ва динамизм бештар аз иҷроиш муҳимтар аст.

хулоса

Забонҳои тафсиршудаи барномасозӣ дар таҳияи барнома чандирӣ ва роҳатиро фароҳам меоранд ва имкон медиҳанд, ки код қадам ба қадам ҳангоми иҷро кардани он иҷро шавад. Ин равиш ислоҳи ислоҳро осонтар мекунад, вокуниши динамикии барномаро беҳтар мекунад ва забонҳоро ба монанди Python, JavaScript ва Ruby дар байни таҳиягарон маъмул мекунад.

Бо вуҷуди ин, камбудиҳои забонҳои тарҷумашуда низ мавҷуданд. Аз сабаби вақти иловагӣ барои тафсири код, иҷроиш метавонад дар муқоиса бо забонҳои тартибдодашуда камтар бошад. Инчунин, ошкор кардани хатогиҳо дар вақти кор рух медиҳад, ки метавонад муайян кардани мушкилотро барвақт душвор созад. Сарфи назар аз ин маҳдудиятҳо, забонҳои тафсиршуда як василаи пурқувват дар таҳияи веб, илми маълумот ва дигар соҳаҳое боқӣ мемонанд, ки қобили истифода ва чандирӣ афзалият доранд.

PostScript

ABC

Забони тафсиршуда