Öppna APIer

 Filosofi, Nyheter, Webbutveckling  Kommentarer inaktiverade för Öppna APIer
Feb 072016
 

openapiDu har kanske hört talas om begreppet API. Med ett API kan du fråga saker, lagra data och utföra saker.
Till exempel om du vill veta vilka Bring uthämtningsställen som är närmast postnummer 12345 kan du ställa en fråga och få ren data tillbaka.
Ett annat exempel är att hitta radiosändningar från Sveriges radio där ett speciellt lag förekommer.

Ett API kan också vara skyddat av ett loginkonto för att skydda dina data.
Till exempel har Twitter ett API som du kan använda för att skapa inlägg mm.
Alla stora webbsiter har ett API för att sedan bygga ett gränssnitt ovanpå det.
En del tillhandahåller sitt API helt gratis men av praktiska skäl begränsar hur många frågor du får ställa per tidsenhet.
Med ett API som är gratis att använda kan alla programmerare skapa tilläggstjänster som gör att ursprungstjänsten blir mer populär.

Continue reading »

Vad är Delicious och hur funkar versionsnummer

 Filosofi, Nyheter, Webbutveckling  Kommentarer inaktiverade för Vad är Delicious och hur funkar versionsnummer
Sep 192015
 

Delicious

När jag ändå vandrar runt i studier så kan jag lika gärna undersöka vad Delicious är. Har hört namnet i evigheter men vet inte vad det är.

Det hela går ut på att samla länkar till bra artiklar på nätet, de kategoriseras och bedöms sedan av andra användare.
Då ska du kunna hitta bra saker att läsa. Läs mer på deras sida och på Wikipedia.

Versionsnummer

Jag håller på mycket med versionshantering av programkod, men har inte använt någon strategi vad gäller versionsnummer.
Det är en hel vetenskap hur man betecknar versionsnummer, se här på Wikipedia.

Jag gillar Ubuntus versioner som har året.månaden till exempel Ubuntu 15.04 som kom i april 2015.
Det känns relevant med datum som versionsnummer, till exempel Windows 95 som släpptes 1995.

Datum är inte så användbart när man ska jämföra versioner hur olika de är.
Version 3.0.0 och 3.0.1 betyder att en liten bugg har fixats men att de två versionerna i övrigt har samma förutsättningar.
Version 3.0.1 och 3.1.0 betyder att nya funktioner har lagts till, nu handlar det inte on buggfixar längre.
Version 4.0.0 och 3.8.0 betyder att programmet kan vara helt omskrivet och det är inte ens säkert att det är bakåtkompatibelt.

x.y.z
x = versionsfamilj
y = nya funktioner
z = buggfixar på befintliga funktioner
Varje siffra kan vara hur stor som helst.

Det finns ingen regel som säger att du måste välja mellan datum eller versionsnummer, du kan ha båda eller något helt annat.

Designmönster

 Filosofi, PHP, Webbutveckling  Kommentarer inaktiverade för Designmönster
Apr 092015
 

catdoor

[Designmönster] [Skapandemönster] [Strukturmönster] [Beteendemönster]

Det finns en bok som heter ”Design patterns”, skriven av fyra författare redan 1994. Boken kallas ”gang of four”. Den handlar om återanvändbara designmönster i objektorienterad programmering.

Har du funderat på varför dörrar som människor använder oftast har gångjärn på höger eller vänster sida, medan kattluckor oftast har gångjärnen högst upp, och smala garageportar åker upp medan breda garageportar åker åt sidan. Alla de här dörrdesignerna har visat sig ge mest fördelar och minst nackdelar av alla de designmönster man skulle kunna ha.

När det handlar om objektorienterad programmering är saker än mer komplicerade. En bra idé kan till slut bli en börda och man kan till och med få förkasta kod och börja om. Då är det bättre att använda beprövade designmönster för att undvika de värsta problemen redan från början.

Det finns massor av designmönster i objektorienterad programmering. Tänk på att en del objektorienterade språk inte behöver vissa designmönster, språkets design har gjort dem onödiga. Tänk också på att dessa designmönster är för objektorienterad programmering. Det finns andra kraftfulla sätt att programmera och de har sina egna designmönster (beprövade lösningar).

Det jag saknar på Wikipedia och i boken är exempel i PHP och en enkel förklarande text med när och varför man ska använda detta mönster. Därför samlar jag PHP exempel här.

Continue reading »