Før vi går i gang, vil jeg gerne minde dig om en vigtig ting. Java er ikke kun et programmeringssprog.
Dette er hele miljøet omkring Java Virtual Machine (JVM), og i dag skal vi kun tale om en lille del af den. Husk, at din projekt kan være sagsspecifik og ikke matche alle de elementer, vi vil gennemgå i denne artikel.
Lang historie kort
Java blev introduceret i 1995 af Sun Microsystem. Hovedmålene for udviklerne var at skabe et sprog, der var nemt, sikkert og uafhængigt af arkitekturen. Dengang var objektorienteret programmering (OOP) et af de hotte buzzwords inden for IT.
For bedre at forstå, hvad det betyder, vil jeg kort uddybe det:
-
Let - Java blev designet som et sprog med en enkel og venlig syntaks. Desuden skal dette sprog være let at udvide i fremtiden på det syntaktiske niveau og på operationelle måder;
-
Sikker - I dette tilfælde bør sproget undgå "magi". Alt skal være eksplicit og indlysende. Alle operationer, der sker i CPU'en, skal afspejles i kilden. Kode;
-
Uafhængighed af arkitektur - Software bør ikke være afhængig af CPU- og OS-arkitektur. Alle konstruktioner i koden skal være arkitektur-agnostiske, og sproget skal ikke indeholde konstruktioner, der opfører sig forskelligt på forskellige maskiner.
Disse antagelser indebærer, at sproget skal køre på en slags virtuel maskine (VM), der adskiller Java-programmer fra runtime-miljøet. Det betyder, at VM'en selv skal være højtydende. Endelig betyder det, at VM'en skal understøtte en eller anden form for multithreading og arbejde i dynamisk og fortolket tilstand. Husk, at det var i 1995.
Efter 27 år ved vi, at Java og JVM nåede disse mål, men på den anden side er vi nødt til at bære omkostningerne ved visse beslutninger og gøre nogle indrømmelser. I denne artikel vil jeg gerne diskutere, hvordan Java kan understøtte din virksomhed, og hvornår du bør vælge en anden teknologi, som Ruby.
Javas stabile vej til en stabil forretning
Når vi starter en ny virksomhed, har vi mange muligheder for at støtte vores udvikling inden for IT-relaterede aspekter, f.eks. ved at købe software fra en eksisterende virksomhed. Disse pakkeløsninger er designet til generisk brug inden for deres anvendelsesområde. Tekstredigeringsprogrammer, regneark og operativsystemer er de bedste eksempler på den slags software. Vores beslutninger afhænger af vores økonomi, personlige præferencer og/eller softwarekompatibilitet. Nogle gange er vi tvunget til at købe et bestemt stykke software, fordi det er en professionel standard, eller fordi det har de nødvendige certifikater.
En anden måde er at outsource udarbejdelsen af software, som er baseret på eksisterende løsninger. Et meget godt eksempel på dette er opbygning af en hjemmeside, e-handel eller mailingliste. Din leverandør tilpasser den eksisterende software og giver dig en løsning, der matcher dine behov.
Men der er en anden måde. Vi kan udvikle software fra bunden. Der er selvfølgelig ingen, der forventer, at du vil skabe en softwareudvikling afdeling i din virksomhed.
I dag er der mange måder at finde løsninger, der matcher dine behov, f.eks.
outsourcing java-udviklere eller vælge samarbejde med en softwareudviklingsfirma.
Hvor kommer Java ind i billedet her?
Når du vælger den sidste mulighed, er en af de vigtigste beslutninger, du skal træffe, din teknologistak. Selv om du ikke er teknisk anlagt, er det godt at vide, hvordan teknologien påvirker din virksomheds fremtid.
Java ser gammelt ud, men hvis du sammenligner det med andre populære sprog, som f.eks. Python (1991), JavaScript (1995), C# (2000), C++ (1983) eller PHP (1995), så vil du opdage, at de fleste af dem mere eller mindre er Javas 'søskende' eller, for at bruge et bedre ord, 'fætre'. Desuden er alle disse sprog mere eller mindre baseret på C-sprogets syntaks, alle er OOP-sprog, og bortset fra C++ kører de alle i fortolkede miljøer.
Det betyder noget mere. I løbet af alle de år, Java indført eller vedtaget mange standarder, som har udviklet sig til professionelle standarder. Så hvis du gerne vil skabe en professionel virksomhed, der er fokuseret på samarbejde med mange andre virksomheder, Java tilbyder færdige løsninger til disse integrationer.
Modenhed er ikke det eneste værktøj i værktøjskassen, der skal være fuld af brugbare, færdige løsninger. Det indebærer også stabilitet og veldefinerede processer. Af gode grunde har forfattere til mange bøger om god praksis, moderne softwareudviklingog softwaredesignmønstre bruger Java som hovedsprog for deres eksempler. Den stærke teoretiske baggrund for softwareudvikling i Java verden er en af de største fordele. Selv udviklere i begyndelsen af deres karriere har en solid baggrund og mange kilder til viden om Java. Et væld af uddannelsesmateriale, vejledninger, kurser og et generelt højt niveau af Java-relateret dokumentation giver dig et solidt grundlag for at bygge stabile løsninger. Leverandører og vedligeholdere kan næsten altid finde løsninger og hjælpe dig.
Sidst, men ikke mindst, betyder modenhed ikke, at biblioteker og løsninger stort set er opgivet. Mange projekter udvikles og vedligeholdes aktivt. Det har to store fordele. For det første er alle disse projekter opdaterede, når det gælder sikkerhed. Det bedste eksempel her er de seneste log4j-problemer. Mange uafhængige Java-udviklere og OSS-organisationer opdaterede hurtigt deres software. Desuden er log4j hold har udgivet patches i løbet af få dage. Og vi taler her om et bibliotek, der er blevet aktivt vedligeholdt i løbet af 20 år. Den anden ting er at være opdateret med moderne løsninger. For eksempel har Spring Framework understøttet GraphQL, siden den teknologi havde en officiel specifikation.
Javas COBOL i det 21. århundrede
Men alt er ikke guld og grønne skove Java verden. Stabilitet og modenhed i Java har en pris. Når vi gør forretninger, er en af de vigtigste parametre tid til at marked. Processer giver os mulighed for hurtigt at levere en ny softwareversion til vores kunder, men Java som sprog har nogle begrænsninger i forhold til at foretage meget dybe ændringer i vores forretningsidé.
At dreje, at levere POC (Bevis for konceptet) eller genopbygning software fra bunden i hver iteration er ikke noget, der Java er god til. Der er bedre løsninger, der kører på JVM, som Kotlin eller Clojure-sprog, der fungerer fint i disse tilfælde. Men hvorfor? Vi er nødt til at huske begyndelsen af denne artikel. Java er 27 år gammel. Nogle af begreberne softwareudvikling der var gyldige i midten af 90'erne, matcher ikke nutidens behov. Nogle af dem eksisterede endda ikke dengang. Hvem kendte til mobilspil med geopositionering (Pokémon GO)? Men til sådanne tilfælde har vi moderne sprog, som jeg nævnte før.
Et sprogs modenhed betyder, at applikationerne er modne. En trussel mod virksomheden er alle omkostningerne omkring HR og ansættelse af medarbejdere. Det er sværere at finde folk, der arbejder med ældre kode, især fordi dette arbejde kræver større involvering på det kognitive niveau. Som udvikler er jeg nødt til at forstå forretningsprocessen, og hvordan koden beskriver den. Desuden skal jeg genskabe tankegangen hos forfatteren af koden. Det er svært, og det er ikke alle, der kan lide det. Yderligere omkostninger her er en direkte beskæftigelsesomkostning.
Endelig er der en ret stor gruppe udviklere, som ikke ønsker at lære "gammel teknologi". Det betyder, at dine planer om intern medarbejderuddannelse i initiativer som f.eks. professionelle udviklingsprogrammer for begyndere kan være svære at gennemføre. Men der er mange Java-udvikling virksomheder der vil give dig den bedste støtte eller hjælpe dig outsource Java-udviklere.
Hvis du har svært ved at finde Java-udviklere, så tjek vores artikel om det emne. her.
Sammenfatning
Java er en moden og stabil løsning, der hjælper med at udvikle en virksomhed. Det er ikke en sølvkugle, der kan løse alle dine problemer, men takket være hele det økosystem, der er blevet dannet gennem årene, kan vi levere Software af høj kvalitet. Det er et levende og vitalt miljø, som bringer folk sammen.
Den Java Advanced Management Console og den Java SE-abonnement er nøglekomponenter i dette økosystem, især for virksomhed projekter. Den Platformsuafhængighed at gør Java til et alsidigt valg til både personlig brug og professionelle applikationer giver udviklere mulighed for at Kør applikationer på tværs af forskellige miljøer uden problemer. Den Java Runtime er central for dette og giver det nødvendige miljø til at Kør applikationer effektivt og sikkert.
Derudover, Java som en programmeringssprog fortsætter med at udvikle sig og understøtter en bred vifte af Udviklingsværktøjer der forbedrer udviklernes produktivitet og evner. Disse Udviklingsværktøjer er en integreret del af Java-økosystemet og tilbyder avancerede funktioner til at skabe, teste og implementere applikationer. Med Java Runtime Det er en kritisk komponent i denne opsætning, som sikrer, at applikationer fungerer optimalt på tværs af forskellige platforme.
For at opsummere, Java og dens tilknyttede teknologier, herunder Java Runtime, Java SE-abonnementog et væld af Udviklingsværktøjergiver et robust fundament for virksomhedsprojekter og personlige bestræbelser. Den skiller sig ud som en programmeringssprog kendt for sin pålidelighed, alsidighed og mange funktioner, hvilket gør det til et holdbart valg inden for softwareudvikling.