Hvorfor Linux er min IDE

Indeks
  1. Én Vinduet til Ét Job
  2. Min Arbejdsflow Er Bedre Egnet til Separate Apps
  3. Jeg Kan Skifte Apps, Når Jeg Vil
  4. Jeg Kan Vælge Mine Egen Værktøjer
  5. Jeg Foretrækker at Multitask Med Flere Programmer

Denne tekst udforsker fordelene ved at bruge Linux som et fleksibelt udviklingsmiljø, hvor separate programmer giver en mere effektiv og tilpasset programmeringsoplevelse end traditionelle IDE'er.

Du kan programmere uden programmeringsværktøjer, og integrerede udviklingsmiljøer (IDE'er) er populære blandt udviklere. Jeg har en anden tilgang. Jeg betragter mit Linux-system, med dets udvalg af programmeringsværktøjer, som et IDE i sig selv.

Én Vinduet til Ét Job

IDE'er er populære blandt udviklere, fordi de giver adgang til alle deres værktøjer, herunder en editor, en tolker eller compiler, en debugger og endda dokumentation. Jeg kan forstå, hvorfor de fleste udviklere ønsker, at deres værktøjer er samlet ét sted. Jeg tror, jeg kan opnå en lignende oplevelse ved at have separate apps i Linux-miljøet.

Jeg kan lide idéen om Unix-filosofien, hvor et lille værktøj udfører ét job godt. Det er måske ikke let at opnå i praksis, men jeg mener, det er værd at stræbe efter.

Det er sigende, at IDE'er har haft størst succes på platforme, der ikke er Linux eller Unix, især Windows. Windows har gjort mindre brug af kommandolinjeværktøjer, og lancering af processer er ressourcekrævende, så der er en incitament til at favorisere større programmer, der gør mere, inklusive større udviklingssystemer.

Den traditionelle Unix-tilgang med separate programmer fungerer godt for mig. Jeg kan have ét shell-vindue, der kører Vim, et andet til at teste programmet, og det tredje til at køre filmanipulationsprogrammer. Jeg kan opnå effekten af et IDE med hurtigere, mindre programmer i stedet for ét stort.

Hvis jeg skal køre en anden opgave, kan jeg bare åbne et andet terminalvindue og køre det uden at miste rytmen.

Min Arbejdsflow Er Bedre Egnet til Separate Apps

Jeg vil være den første til at indrømme, at jeg ikke er en professionel programmør. Programmering er ikke mit erhverv, men det er en sjov og stimulerende hobby. Mens IDE'er er velegnede til professionelle udviklere, er min brug anderledes end mange andre "rigtige" programmører.

Python er mit foretrukne sprog, og jeg skriver gerne mindre scripts eller bruger interaktiv Python. Dette betyder, at jeg enten bruger den normale interaktive tolk eller IPython. Jeg er en af dem, der bruger Python som deres lommeregner. Jeg behøver ikke at åbne et helt IDE bare for at udføre nogle beregninger.

En af mine primære anvendelser af Python er statistik og dataanalyse. Jeg bruger primært interaktiv Python, især IPython, som jeg har sat op med mit Mamba-miljø. Jeg kigger også på dokumentation, enten inden for IPython eller på internettet. Hvis jeg ønsker en registrering af, hvad jeg laver, som jeg kan dele senere, åbner jeg en Jupyter-notebook. Da jeg primært arbejder interaktivt, har jeg ikke meget brug for debuggere. Jeg kan som regel fejlfinde eventuelle fejlmeddelelser med det samme.

At bruge et IDE ville betyde at installere komponenter, som jeg ikke brugte. En debugger ville for det meste være spildt til det, jeg laver. Og det samme gælder for et fuldt IDE.

Jeg Kan Skifte Apps, Når Jeg Vil

Mange udviklere fremhæver, at integrerede udviklingsmiljøer er, tja, integrerede, inklusive essentielle værktøjer som editorer, compile-re, debuggere og andre ting som linters og fejlcheckere. I Linux kan jeg installere editorer, compile-re, debuggere, linters og fejlcheckere gennem min pakkehåndterer.

Jeg er ikke begrænset til, hvad IDE-udvikleren har tænkt at inkludere. Hvis jeg ikke kan lide editoren, kan jeg bare skifte til en anden. Jeg er blevet ret komfortabel med Vim. Tastetrykkene føles bedre, i det mindste på de chiclet-tastaturer, som laptopproducenterne ser ud til at favorisere i dag.

Et værktøj, som jeg har skiftet ud, var Python-tolken. Python-tolken er nyttig i sig selv, da jeg kan teste kodeideer (og bruge den som lommeregner), men IPython er endnu bedre, da den har syntaksfremhævelse og nem genkaldelse samt muligheden for at køre systemkommandoer direkte fra IPython.

Jeg kunne også skifte pakkehåndtereren ud til Mamba. Mamba er optimeret til dataanalyse og datavidenskab, tilbyder nyere pakker i mange tilfælde end systemets pakkehåndterer og lader mig holde system-Python for sig selv.

Et standard IDE ville sandsynligvis ikke give mig denne slags fleksibilitet.

Jeg Kan Vælge Mine Egen Værktøjer

Hvis du bruger Linux eller programmerer længe nok, begynder du at danne meninger om, hvordan tingene bør fungere. En af de ting, som mange mennesker, inklusive mig, bliver meningsdannende omkring, er teksteditoren. Jeg har en tendens til at favorisere Vim, selvom jeg har været igennem en Emacs-fase i et stykke tid, så jeg har erfaring med begge hovededitorer.

IDE-tilgangen er stadig populær, selv blandt miljøer, der ikke betragtes som IDE'er.

Emacs-fans nævner ofte, hvordan de kan køre værktøjer som terminaler eller filbrowser uden at forlade editoren. Jeg har aldrig været særlig imponeret over den funktion. Det kan skyldes, at jeg næsten altid har haft adgang til vinduesmiljøer og har udført det meste af mit programmeringsarbejde på platforme, hvor det er nemt at starte processer.

Emacs blev oprindeligt designet til tegnbaserede terminaler. Det var ikke nemt at starte nye opgaver på disse terminaler, hvilket er grunden til, at der var incitament til at bygge et program, hvor man havde alt, hvad man havde brug for, ét sted.

Hvis du bruger et IDE, er du ofte låst fast i, hvad udviklerne tænkte, du ville have. Linux IDE'er er populære, så jeg formoder, at der er mange, der ønsker det, de tilbyder. Måske er mine behov bare anderledes end andres. Andre udviklere kan beholde deres IDE'er, men jeg vil hellere bruge flere programmer.

Jeg har udviklet en komfort med de værktøjer, jeg bruger. Når jeg skifter til et nyt system, kan jeg hurtigt sætte det op og være i et velkendt miljø.

Jeg Foretrækker at Multitask Med Flere Programmer

Jeg tror, jeg muligvis foretrækker "Unix-filosofien", når det kommer til udvikling. Dette skyldes designet af Unix-lignende styresystemer, der gør det lettere at starte nye processer. Det er lettere i den forstand, at jeg kan starte en ny terminal og køre en kommando nemt. Hvis jeg vil have en editor, kører jeg bare Vim. Hvis jeg vil starte en interaktiv Python-session, åbner jeg mit Mamba-miljø og starter IPython.

Dette er en konsekvens af designet af Linux og andre Unix-lignende systemer, som jeg nævnte tidligere. Linux starter processer nemt, mens det typisk har været en mere ressourcekrævende proces på Windows. Når du har startet dit program i et sådant system, er tråde mindre dyre i forhold til ydeevne. Dette er grunden til, at der er en drivkraft til at proppe mere funktionalitet ind i et større program end den traditionelle Unix-tilgang med ét program, der udfører én opgave.

Det eneste problem var brugergrænsefladen. Selv om Unix blev designet til at være multitasking, var det besværligt at skifte mellem opgaver. Jobkontrol og virtuelle konsoller hjalp med at løse dette problem, men det var med tilgængeligheden af vindussystemer på arbejdsstationer og grafiske terminaler, at det blev muligt at køre flere programmer i individuelle vinduer. Alternativt kan terminalmultiplexere gøre et rimeligt godt stykke arbejde, især ved fjerndatakontakter.

Med tilgængeligheden af flere terminalvinduer, faneblade terminaler og terminalmultiplexere kan jeg fuldt ud udnytte denne letvægtsstil af udvikling. Jeg kan køre min interaktive Python-session i et vindue til eksperimentering, et Jupyter-notebook i min browser og en editor i et andet vindue.

At bruge flere apps på Linux kan være mindre "integreret", men denne tilgang fungerer for mig uden omkostningerne ved et fuldt IDE. Jeg mener, at min indsats betaler sig i et letvægts programmeringsmiljø, jeg kan stole på.

Skriv et svar

Din e-mailadresse vil ikke blive publiceret. Krævede felter er markeret med *

Go up