6 ting, som ikke-tekniske mennesker altid spørger API-udviklere

Hvis du, som jeg, er en "ikke-udvikler", der navigerer i et team med udviklere, kan du nogle gange sætte din fod i det, selvom du er fuld af gode intentioner. Men der er måder at undgå almindelige fejl, hvis du vil trække af en anstændig samtale med en API-udvikler. Sådan gør du.

"Hvad er det bedste sprog til at udvikle en web-API?"

Jeg lærte hurtigt, at dette spørgsmål bogstaveligt talt giver ingen mening. Det er som at spørge en mekaniker, hvilken type reservedele han har brug for for at fikse en bil. Han vil fortælle dig, at det afhænger af, hvad der er galt med køretøjet. Det samme gælder udviklingssprog. Nogle er beregnet til at opbygge dynamiske sider, andre er lavet til at integrere systemer mere effektivt og andre er objektorienterede. Det handler ikke om at finde det "bedste sprog" men bruge det "rigtige sprog" til at nå deres mål.

"Hvilken er den bedste, REST eller GraphQL API?"

Endnu en gang er det som at blive bedt om at vælge mellem en bil og et fly ... det afhænger af den tur, du planlægger. Dailymotion's offentlige API er et REST API beregnet til at give folk mulighed for at oprette fantastiske videoapplikationer. Vi bruger også en GraphQL API internt til at organisere vores nye globale arkitektur. REST er en standard, som mange udviklere bruger, når GraphQL er mere kompleks. Det er også mere fleksibelt og effektivt. Kort sagt er det ikke rentabelt at bruge et fly til at køre 5 km (flyet ville være GraphQL her), men det er ikke som du kan flyve med din bil (REST her).

“Er vores API RESTful?”

Jeg stillede først dette spørgsmål, fordi jeg så denne tegneserie og ikke fik vittigheden.

Sjove… eller er det?

Det viser sig, et REST-kompatibelt API eller "RESTful API", er en applikationsprogrammeringsgrænseflade, der bruger HTTP-anmodninger til at få (GET), placere (PUT), udgive (POST) og slette (Slet) data. Denne form for API giver udviklere fleksibilitet, men det kan også være en udfordring, når det kommer til at starte fra bunden. Nu forstår du, at det at spørge en udvikler, om hans API er RESTful, er som at spørge ham, om hans API er et API af bogen.

"Hvad er forskellen mellem en API og en mikroservice?"

Af en eller anden underlig grund har ordet ”mikroservice” magten til at forårsage skæbne i udviklerfællesskabet. Ingen ser ud til at være 100% sikker på, hvad en mikroservice er eller ikke, men hvad udviklere ved, er, at API'er ikke er mikroservices. Selvom de to forestillinger er ganske tæt, er API'er dataopskrifter, der antages at specificere interaktioner mellem forskellige softwarekomponenter, mens mikroservices har en mere arkitektonisk tilgang og hjælper udviklere med at skabe og skalere tjenester. Jeg ved, det er subtilt.

"Hvordan koder du, fordi jeg er skrald i matematik?"

Som mange ikke-udviklere troede jeg, kodning handlede om matematik. På grund af denne forudfattelse mister mange mennesker interessen for udviklingssprog. Du behøver ikke at være matematiker for at være en god udvikler (selvom det at være logisk er afgørende), hvad du virkelig har brug for er nysgerrighed og evnen til at lære nye syntakser. Jeg troede også, at udviklere skulle huske alle formlerne for hvert sprog, når der faktisk er en enorm mængde samfund, der er dedikeret til specifikke sprog eller discipliner. At finde og slutte dem giver dig adgang til masser af kodeeksempler og software-værktøjer. Så virkelig er en udvikler mere som en antropolog, der bruger fremmedsprog til at kommunikere med verden end en genial matematiker.

"Hvad betyder din T-shirt?"

Desværre har jeg ikke svaret på dette spørgsmål, mine kollegers valg af tøj forbliver et mysterium for mig ...

Udviklere arbejder på mystiske måder