Hva er forskjellen mellom et programmeringsspråk og et skriptspråk?

Beste svaret

Python er et skriptspråk, selv om det også er et fullverdig, objektorientert programmeringsspråk. Forskjellen mellom et skriptspråk og et program er om koden drives av en tolk eller ikke. Det er sannsynligvis den enkleste måten å tenke på.

Så hvis du skriver et python-skript, vil du ha en .py-fil. Når du vil kjøre den filen, vil du faktisk kjøre python og sende .py-filen som et argument til den. Noe som:

/usr/bin/python /Path/To/MyScript.py

Python vil da kjøre skriptet. Som andre har nevnt, kan du sette en shebang-linje i skriptet, men det forteller bare maskinen din hvor du skal finne tolk som skal brukes til å kjøre skriptet. Det er fordeler og ulemper ved tolkemetoden. En hovedfordel er brukervennligheten. Du kan sette linjen nedenfor i en .py-fil, og du kan kjøre den gjennom python:

print("Hello world!")

Med et språk som Swift , C ++, C # eller Java, for eksempel, vil du faktisk kompilere programmet ditt til maskinkode, og filen som resulterte fra den samlingen ville være programmet ditt, eller en del av programmet ditt. Den ville være klar til å distribueres som den er, og trenger ikke ha noen andre programmer som kreves for å kjøre den. Tolkte språk pleier ikke å være like raske av forskjellige årsaker. Det er sannsynligvis verdt å nevne.

Du har rett i at Python egentlig ikke er så sammenlignbar med Bash. Selv om du kan oppnå mye i Bash, er ikke språket veldig kraftig, og det er ikke designet for å skrive fullt ut på programmer eller løsninger med. Python er et fullverdig, objektorientert programmeringsspråk, og du kan skrive omtrent hva som helst med det. Så det er sant at begge er skriptspråk, men de er ikke i samme liga. For det første er Bash ikke objektorientert. Med Bash bruker du først og fremst bare konsollapper som er skrevet på et annet språk. Så bare analyserer du resultatene med Bash, eller sender dem videre til neste konsollverktøy via røret.

Her er noen eksempler på tolket skriptspråk:

Python, Ruby, Node JS, Powershell, vbScript, Javascript, Appescript, Bash, Perl etc.

Her er noen kompilert, sterkt skrevet språk:

Swift, Objective C, C, C ++, C # , Java

Forhåpentligvis hjelper det å fjerne det.

Svar

Skriptspråk som Python, Ruby, JavaScript, PHP er også programmeringsspråk. De er forskjellige i forhold til de tradisjonelle kompilerte språkene ved at de tolkes og har dynamisk skriving – datatypen til et objekt kan endres når som helst. Det er med andre ord ikke nødvendig å definere datatypen til et objekt eller returverdien til en funksjon på forhånd, og du kan slå den på farten.

Tradisjonelt brukes skriptspråk for enkle og raske oppgaver. Men dette stemmer ikke lenger. Nå er det store programmer og kodebaser i Python, Ruby, JavaScript og PHP. Noen av disse språkene har langsom ytelse sammenlignet med kompilerte språk. Men selv det er ikke lenger sant. Med JIT-teknologier har JavaScript og PyPy vist stor forbedring i ytelse, og det samme gjør PHP 7.

Til slutt er det bare en terminologi som trenger omformulering.

Nettteknologi på det enkleste er et sett med statiske dokumenter som serveren serverer til nettleseren og nettleseren som gjengir den i henhold til HTML og CSS. HTML er et markeringsspråk og CSS legger til stiler, noe som gjør det enkelt å skrive konsistente og tilpassede websider. Men innholdet er statisk, og for å endre noe av innholdet, må du endre eksisterende eller skrive nytt HTML-innhold.

For å gjøre webinnhold dynamisk, kan du ta en av to tilnærminger: i) CGI eller ii) innebygging kode innenfor HTML-sider. Tidligere teknikk gjør at webserveren kaller en kjørbar (skrevet på et programmeringsspråk som C, Perl eller andre, inkludert skriptspråk) som genererer en hel webside (med passende HTML-overskrifter osv.) Dynamisk, ta resultatet generert av kjørbar og returner den til nettleseren. Dette krever bruk av biblioteker som forstår hvordan du kan samhandle med en webserver (HTTP). Kjedelig, men den tidligste formen for dynamisk nettinnhold ble skrevet på denne måten. Sistnevnte tar en annen tilnærming. Webserveren gjenkjenner sider med innebygd kode (vanligvis inneholder HTML innebygd med kode skrevet på et skriptspråk som PHP, JSP, Python) sender den til en skriptmotor som bare utfører den innebygde koden og erstatter den med resultatet av kodeutførelsen ( forlater resten av HTML, CSS, JavaScript uendret) og returnerer den modifiserte HTML-siden til serveren som igjen returnerer den til nettleseren. Python, Ruby bruker også en lignende, men en liten variasjon av denne tilnærmingen. Dette er skripter på serversiden

JavaScript startet som et dynamisk kodings- / skriptspråk for klientsiden.Hver nettleser har en innebygd JavaScript-tolk. JavaScript-kode kan legges inn på en webside og sendes til nettleseren som deretter kjører denne koden på klientsiden for oppgaver som skjemavalidering, og endrer DOM dynamisk. Men med fremveksten av Node.js kan JavaScript gjøre hva serverspråkskriptspråk gjør.

Så kom AJAX, en teknologi som gjør at JavaScript-kode på klientsiden kan utføre skripter på serversiden, og trekker resultatet fra serveren og fyll DOM. På denne måten kan du fylle ut rullegardinfelt i nettleseren dynamisk uten å oppdatere websiden. JavaScript-biblioteker som jQuery gjorde skripter på klientsiden modulær og enkel. HTML / CSS-rammer som Bootstrap gjorde det samme for HTML5 og CSS3.

Webapplikasjonsrammer modulerer og forenkler skriving av webapplikasjoner. Hvert skriptspråk har sin samling av webapp-rammer. Ruby har Ruby on Rails. Python har Django, Flask. PHP har Laravel. JavaScript har AngularJS og andre.

Nettapplikasjoner er avhengige av databaser som vedvarende datalagring. Så det er viktig å kjenne til SQL og databaseteknologier som Database Abstraction Layer og Object Relational Mapping. Fremkomst av NoSQL-databaser legger til nye ting som en webutvikler må lære seg.

Legg igjen en kommentar

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket med *