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.
En svensk bok i Databasteknik och täcker det man behöver veta om grunderna, databasmodellering och SQL. Passar bra både för den som är nybörjare och lite erfaren. Går bra att läsa från pärm till pärm för den intresserade. Man bör ju ha minst en bok i Databasteknik i sin bokhylla och denna kvalificerar sig dit.
Vi skall bygga ett simpelt API med hjälp av Node.js och modulen Express.
API:t är tänkt användas som ett me-api där vi skickar information i JSON format.
Vi ska titta på hur vi kan organisera våra routes och hur vi strukturerar koden på ett bra sätt.
Jag tänker visa hur jag installerar operativsystemet Debian på VirtualBox. Dels är det för att visa hur man installerar ett godtyckligt operativsystem på VirtualBox och dels är det för att visa hur man installerar Debian på en godtycklig hårdvara.
VirtualBox är en virtualiseringsmiljö som du kan installera på din egna maskin och därefter installera godtyckligt operativsystem i applikationen VirtualBox.
Jag visar hur du kommer igång och installerar Virtualbox först. Nästa steg blir att installera ett annat operativsystem inuti VirtualBox.
Vi bygger vidare på ett exempel med formulärhantering i Anax och integrerar med en extern modul för databashantering.
Vi använder en del av databasmodulen som heter query builder där man bygger SQL-frågan utifrån metodanrop. Den blir basen i vår databasdrivna modell, som är en implementation av designmönstret Active Record.
Vårt mål är att skapa en kodbas som är enkel att återanvända för databasdrivna modeller som använder formulärhantering. Att använda Active Record är en del i att uppfylla målet.
Vi bygger vidare på hanteringen med formulär och databasdrivna modeller genom att presentera ett exempel som implementerar CRUD med givna tekniker.
Det blir ett komplett kodexempel som visar hur man kan skriva koden i modellagret med stöd av de moduler som presenteras, inklusive formulärhantering, databas med query builder och designmönstret Active Record.
Via detta kodexempel får vi en kodbas att utgå ifrån, en kodbas som visar på ett mer komplext sammanhang där flera delar av ramverkets kod samverkar.
Vi har redan kollat på enhetstester i Javascript med Mocha, nu ska vi gå ett steg vidare i testfasen och kolla på funktionalitetstester med Selenium, och även Mocha.
Vi ska i denna artikel titta på ett antal koncept, som används för att bygga webbapplikationer med hjälp av JavaScript. I artikeln går vi igenom koncepten med hjälp av tre exempel program, som är implementerad i JavaScript ramverken Angular, Mithril, React och Vue, samt i vanilla JavaScript ES5.
Vi utgår från den modul vi tidigare publicerade på GitHub och Packagist. Modulen innehåller rutiner för enhetstester och kodvalidering. Vi skall nu integrera modulen med externa tjänster som utför dessa tester varje gång vi committar ändringar eller gör pull requests mot repot.
Vi integrerar med en handfull tjänster såsom Travis, CircleCI, Scrutinizer och SensioLab samt knyter in några av dem till en Gitter-kanal för utvecklare av modulen. Vi får ett flöde för automatiserade tester som skapar grunden för begreppet CI, Continuous Integration. Varje commit kickar igång ett flöde där vår modul integreras och testas mot beroenden i ett antal miljöer och system.
Vi skall se hur vi kan lyfta ut en kodbas som är integrerad i en Anax installation. Vi tar den kodbasen och lägger i ett eget Git-repo som vi publicerar på GitHub. Vi gör en modul av repot och publicerar det på Packagist.
Därefter kan vi åter installera samma kodbas, nu med verktyget composer, in i en installation av Anax.
För att ha en kodbas att jobba på så använder jag mig av remservern och visar hur man skapar en fristående modul som blir enkel att integrera i en godtycklig Anax installation.