Vad är skillnaden mellan ett programmeringsspråk och ett skriptspråk?

Bästa svaret

Python är ett skriptspråk, även om det också är ett fullblåst, objektorienterat programmeringsspråk. Skillnaden mellan ett skriptspråk och ett ”program” är om koden körs av en tolk eller inte. Det är förmodligen det enklaste sättet att tänka på.

Så om du skriver ett python-skript skulle du ha en .py-fil. När du vill köra den filen skulle du faktiskt köra python och skicka din .py-fil som ett argument till den. Något som:

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

Python skulle sedan köra skriptet. Som andra har nämnt kan du sätta en shebang-rad i ditt skript, men det berättar bara för din maskin var du hittar tolk som ska användas för att köra skriptet. Det finns fördelar och nackdelar med tolkmetoden. En viktig fördel skulle vara användarvänligheten. Du kan sätta raden nedan i en .py-fil och du kan köra den genom python:

print("Hello world!")

Med ett språk som Swift , C ++, C # eller Java, till exempel, skulle du faktiskt kompilera ditt program till maskinkod, och filen som resulterade från den sammanställningen skulle vara ditt program eller en del av ditt program. Den skulle vara redo att distribueras som den är och behöver inte ha några andra program som krävs för att köra den. Tolkade språk brukar inte vara lika snabba av olika skäl. Det är nog värt att nämna.

Du har rätt i att Python egentligen inte är så jämförbar med Bash. Även om du kan åstadkomma mycket i Bash är själva språket inte särskilt kraftfullt och det är inte utformat för att skriva fullt om program eller lösningar med. Python är ett fullfjädrat, objektorienterat programmeringsspråk, och du kan skriva nästan vad som helst med det. Så det är sant att båda är skriptspråk, men de är inte i samma liga. För det första är Bash inte objektorienterat. Med Bash åberopar du i första hand bara konsolappar som var skrivna på ett annat språk. Då analyserar du bara resultaten med Bash eller skickar dem till nästa konsolverktyg via röret.

Här är några exempel på tolkade skriptspråk:

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

Här är några sammanställda, starkt skrivna språk:

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

Förhoppningsvis hjälper det att rensa det.

Svara

Skriptspråk som Python, Ruby, JavaScript, PHP är också programmeringsspråk. De skiljer sig från de traditionella kompilerade språken genom att de tolkas och har dynamisk typning – datatyp för ett objekt kan ändras när som helst. Det är med andra ord inte nödvändigt att definiera datatypen för ett objekt eller returvärdet för en funktion i förväg, och du kan växla omedelbart.

Traditionellt används skriptspråk för enkla och snabba uppgifter. Men detta är inte längre sant. Nu finns det stora program och kodbaser i Python, Ruby, JavaScript och PHP. Några av dessa språk har långsam prestanda jämfört med sammanställda språk. Men även det är inte längre sant. Med JIT-tekniker har JavaScript och PyPy visat stora förbättringar i prestanda, och det gör PHP 7.

I slutändan är det bara en terminologi som behöver omformuleras.

Webbteknik på Det enklaste är en uppsättning statiska dokument som serveras av webbservern till webbläsaren och webbläsaren som gör den enligt HTML och CSS. HTML är ett markeringsspråk och CSS lägger till stilar, vilket gör det enkelt att skriva konsekventa och anpassade webbsidor. Men innehållet är statiskt och för att ändra något av innehållet måste du ändra befintligt eller skriva nytt HTML-innehåll.

För att göra webbinnehållet dynamiskt kan du ta ett av två tillvägagångssätt: i) CGI eller ii) inbäddning kod inom HTML-sidor. Tidigare teknik gör att webbservern anropar en körbar (skriven på ett programmeringsspråk som C, Perl eller andra, inklusive skriptspråk) som genererar en hel webbsida (med lämpliga HTML-rubriker etc.) dynamiskt, ta resultatet som genereras av körbar och returnera den till webbläsaren. Detta kräver användning av bibliotek som förstår hur man interagerar med en webbserver (HTTP). Tråkig, men den tidigaste formen av dynamiskt webbinnehåll skrevs på detta sätt. Det senare tar ett annat tillvägagångssätt. Webbservern känner igen sidor med inbäddad kod (vanligtvis innehåller HTML inbäddad med kod skriven på ett skriptspråk som PHP, JSP, Python) skickar den till en skriptmotor som bara kör den inbäddade koden och ersätter den med resultatet av kodkörningen ( lämnar resten av HTML, CSS, JavaScript oförändrat) och returnerar den modifierade HTML-sidan till servern som i sin tur returnerar den till webbläsaren. Python, Ruby använder också en liknande men en liten variation av detta tillvägagångssätt. Detta är skriptservrar på serversidan

JavaScript startade som ett dynamiskt kodningsspråk för klientsidan.Varje webbläsare har en inbäddad JavaScript-tolk. JavaScript-kod kan inbäddas i en webbsida och skickas till webbläsaren som sedan kör den här koden på klientsidan för uppgifter som formulärvalidering, och dynamiskt ändrar DOM. Men med tillkomsten av Node.js kan JavaScript göra det som skriptspråken på serversidan gör.

Sedan kom AJAX, en teknik som gör det möjligt för JavaScript-koden på klientsidan att köra skripter på serversidan, dra resultatet från servern och fyll i DOM. På så sätt kan du fylla i listrutor i webbläsaren dynamiskt utan att uppdatera webbsidan. JavaScript-bibliotek som jQuery gjorde skriptsystemet på klientsidan modulärt och enkelt. HTML / CSS-ramverk som Bootstrap gjorde detsamma för HTML5 och CSS3.

Webbapplikationsramar modulerar och förenklar skrivning av webbapplikationer. Varje skriptspråk har sin samling webbappramar. Ruby har Ruby on Rails. Python har Django, Flask. PHP har Laravel. JavaScript har AngularJS och andra.

Webbapplikationer är beroende av databaser som beständig datalagring. Att känna till SQL- och databasteknologier som Database Abstraction Layer och Object Relational Mapping är därför viktigt. Tillkomsten av NoSQL-databaser lägger till nya saker som en webbutvecklare måste lära sig.

Lämna ett svar

Din e-postadress kommer inte publiceras. Obligatoriska fält är märkta *