Kunskapsbanken
Artiklar, guider, tips och trix tillsammans med exempelprogram inom webbprogrammering och webbutveckling. Inläggen är listade i den ordning som de senast uppdaterats.
Artiklar, guider, tips och trix tillsammans med exempelprogram inom webbprogrammering och webbutveckling. Inläggen är listade i den ordning som de senast uppdaterats.
De flesta programmeringsspråk har inbyggda sorteringsfunktioner. De använder antingen en specifik eller en kombination av flera sorteringsalgoritmer. Pythons sort()-metod använder till exempel Timsort som är en blandning av “merge sort” och “insertion sort”. Vi ska titta närmare på de vanligaste sorteringsalgoritmerna och se hur de är implementerade och vad som kan dölja sig bakom exempelvis array.sort()
.
Vi skall titta på index och hur de hjälper dig att optimera din databas. Vi ser hur olika index påverkar antalet rader som måste besökas för att producera resultatet och vi lär oss innebörden av frågeoptimerarens jobb och vad termen full table scan innebär.
Träd är en vanlig abstrakt datatyp eller datastruktur som lagrar element i en hierarkisk träd struktur, som liknar ett arvsträd.
I denna artikel går vi igenom hur vi anpassar typsnitt och typografin för våra mobila enheter. Fokus kommer ligga på att skapa användbara, men framför allt tillgängliga och lättlästa gränssnitt för textintensiva hemsidor. Vi kommer ta utgångspunkt i att göra en redovisningssida och kommer formatera den för läsbarhet.
Ibland vill man att en händelse skall trigga en annan. Säg att man flyttar pengar mellan konton (i en bank) och man vill att varje sådan flytt skall loggas i en loggtabell.
En flytt av pengarna, eller en UPDATE av kontotabellen, skall trigga igång en händelse som loggar information till loggtabellen.
Till vår hjälp kommer triggers.
Vi skall jobba igenom begreppet CRUD som handlar om att göra operationer för Create, Read, Update och Delete mot databasen. Vi skall göra det via ett webbgränssnitt med HTML formulär och en applikation baserad på JavaScript i Node.js med Express och kopplat mot databasen MySQL.
Vi skall använda oss av lagrade procedurer i databasen för att skapa ett API mot databasen. Alla potentiella klienter kan sedan använda samma gränssnitt. Det ger oss ett exempel på hur vi kan kapsla in SQL-koden och förenkla för klienterna.
Vi skall bygga en applikations- och webbserver med hjälp av Node.js och modulen Express.js.
Servern skall servera statiska filer som bilder, CSS och JavaScript (klientsidan) tillsammans med dynamiska routes som hanteras av JavaScript på serversidan tillsammans med Express.js och Node.js.
Som templatemotor använder vi Embedded JavaScript templating (EJS) vilken hjälper oss att rendera HTML-sidor med dynamisk information från JavaScript. Med en templatemotor kan vi generera delar av HTML-koden och skriva ut innehåll från variabler i JavaScript, så att sidornas innehåll blir dynamiskt.
Vi tar databasen MongoDB och ser hur vi kan integrera den i ett Nodejs projekt. Det tar det som en introduktion till databaser som inte kategoriseras som relationsdatabaser och saknar frågespråket SQL. De databastyperna går under samlingsbeteckningen NoSQL.
Vi skall se hur JavaScript och Websockets kan kombineras till något som motsvarar realtidsprogrammering i webbsammanhanget.
Vi ser koden som krävs för att sätta upp en klient och en server som utför echo och broadcast. Det ger oss en grund att stå på. Som server använder vi en inbyggd HTTP-server, en standalone websocket server och applikationsservern Express.
Vi skall skapa ett menybaserat terminalprogram, ett command line interface (CLI), med JavaScript i Node.js. I terminalprogrammet läser vi in instruktioner från användaren via tangentbordet och i en kommandoloop låter vi programmet utföra olika funktioner utifrån vad användaren ber om.
Tanken är att ge dig grunden till ett menybaserat terminalprogram med en hyffsat god kodstruktur, en struktur som du kan bygga vidare på och integrera i din specifika miljö för dina egna applikationer.
Ett terminalprogram kan vara en användbar klient, både vid utveckling och när du levererar produkter till kunder.