Vinnaren i pepparkakshustävlingen!
2023-11-09, 07:54
  #1
Medlem
Xer0s avatar
Vi är ju tvungna att använda detta verktyg på jobbet. Min uppfattning om det är att det är ganska komplicerat, segt och skrivs i ett programmeringsspråk (groovy) som typ ingen verkar ha koll på.

Att uppgradera från en version till en nyare är ofta svårt då det är breaking changes mellan varje version.

Felmeddelanden är kryptiska.

När det funkar så funkar det, man vill helst inte röra det.
Citera
2023-11-09, 08:44
  #2
Medlem
GrillTeknikers avatar
Citat:
Ursprungligen postat av Xer0
Vi är ju tvungna att använda detta verktyg på jobbet. Min uppfattning om det är att det är ganska komplicerat, segt och skrivs i ett programmeringsspråk (groovy) som typ ingen verkar ha koll på.

Att uppgradera från en version till en nyare är ofta svårt då det är breaking changes mellan varje version.

Felmeddelanden är kryptiska.

När det funkar så funkar det, man vill helst inte röra det.

Är det inom Android ni använder det, eller för något helt annat?

Råkar själv ut för det när man pillar med Androidappar, brukar alltid vara någon versionskonflikt eller annat kryptiskt felmeddelande som dyker upp. Oftast är det inkompatibla versioner av Gradle, Kotlin, Java, Android, bibliotek, plugins, etc. etc.

Å andra sidan är det ju så med all programmering idag, alltid en massa versionsproblem. De få korta stunder man inte har det får man passa på att njuta, för nästa dag har någon, någonstans i kedjan, uppdaterat något som får något annat att sluta fungera... man skulle levt på 80-talet, känns som att saker uppdaterades max 1 gång om året då, istället för en gång i veckan som nu...
Citera
2023-11-10, 07:36
  #3
Moderator
Protons avatar
Citat:
Ursprungligen postat av Xer0
Vi är ju tvungna att använda detta verktyg på jobbet. Min uppfattning om det är att det är ganska komplicerat, segt och skrivs i ett programmeringsspråk (groovy) som typ ingen verkar ha koll på.

Att uppgradera från en version till en nyare är ofta svårt då det är breaking changes mellan varje version.

Felmeddelanden är kryptiska.

När det funkar så funkar det, man vill helst inte röra det.
Finns det nån anledning att ni inte använder Maven, vad var orsaken bakom valet av Gradle?
Citera
2023-11-10, 12:49
  #4
Medlem
Citat:
Ursprungligen postat av Proton
Finns det nån anledning att ni inte använder Maven, vad var orsaken bakom valet av Gradle?

Gradle är bland annat den uttryckligt stödda tekniken för alla Google-plattformar, främst Android.

Jag själv har kört Maven sen iaf 2005-2006, men blev då "tvungen" att köra Gradle för vår Androidapp.
Håller med om att Gradle kan vara komplicerat, men Maven är då inte direkt nån större skillnad IMO.

Jag har nu gått över till att föredra Gradle, av några olika skäl:

1. Gradle är ju byggt på ett språk (Groovy som du nämner), och det gör det möjligt att göra mycket mer - bygga ut, anpassa, lägga till - än i en XML-baserad struktur som Maven. Visst, man kan skriva egna plugins, men det är ju minst några steg extra.

2. *Mycket* snabbare. Byggtiden går ner markant. För mitt projekt var det åtminstone 50% och det stämmer överens med andra artiklar och benchmarks jag sett. Gör stor skillnad när man har ett halvstort projekt och bygger ofta.

3. Tydlighet. Jag tycker att strukturen för att deklarera dependencies är mycket bättre än i Maven. Dependency hell är ett större helvete i Maven IMO


Till sist, lite touchy-feely: Upplever att fler och fler projekt går över till Gradle, känns som om momentum är i Gradles favör. Gradle känns klart modernare, helt enkelt.


Fördelen med Maven har för mej historiskt varit att det är äldre och därmed finns mer plugins och ja, att det ändras i en hejdundrande fart, ibland svårt hänga med i nya förändringar. Men detta har satt sig ordentligt sista 1-2 åren.
__________________
Senast redigerad av RoyBatty 2023-11-10 kl. 12:51.
Citera
2023-11-11, 09:31
  #5
Medlem
Har bara suttit i Maven fram till för några månader sedan när jag fick ett Flutter projekt som genererar gradle filer.

Är inte alls van med det och IntelliJ gillar inte mixen av Flutter/Kotlin/Groovy så får ingen hjälp av den.

Är väldigt förvirrande att det är två gradle filer?

Fattar inte så mycket av det och orkar inte lära mig det. Är en sån grej som bara borde funka när man inte har speciella önskningar men tycker att det genererar onödigt mycket jobb.
Citera
2023-11-12, 10:16
  #6
Medlem
Xer0s avatar
Citat:
Ursprungligen postat av GrillTekniker
Är det inom Android ni använder det, eller för något helt annat?

Råkar själv ut för det när man pillar med Androidappar, brukar alltid vara någon versionskonflikt eller annat kryptiskt felmeddelande som dyker upp. Oftast är det inkompatibla versioner av Gradle, Kotlin, Java, Android, bibliotek, plugins, etc. etc.

Å andra sidan är det ju så med all programmering idag, alltid en massa versionsproblem. De få korta stunder man inte har det får man passa på att njuta, för nästa dag har någon, någonstans i kedjan, uppdaterat något som får något annat att sluta fungera... man skulle levt på 80-talet, känns som att saker uppdaterades max 1 gång om året då, istället för en gång i veckan som nu...

Man slapp det där lite i dotnet tyckte jag. Om man inte använde cake eller liknande utan bara körde på dotnet kommandot för att bygga. Då har du också stöd för moduler som du har i gradle, men i dotnet är det en solution i stället som har flera projects.

Däremot de legacy projekt som använde cake och fake gick ofta sönder.

Däremot gillar jag byggvertyg där det går att hacka lite om man behöver, så där har de en fördel.
__________________
Senast redigerad av Xer0 2023-11-12 kl. 10:20.
Citera
2023-11-12, 10:41
  #7
Medlem
inneskos avatar
Jag har både använt Maven och Gradle under längre tid. Om det var jag som fick välja så skulle jag göra en grav och placera gradle i den. Det försöker vara ett generellt byggverktyg, något man inte riktigt behöver om kör Java. Maven är betydligt mer on the point med det som behövs för Java och det är betydligt snabbare.

Personligen så tycker jag även att Mavens lösning för att anpassa är byggen bra. Det är alltså med hjälp av mojos, ger bra stöd för att accessa information om själva projektet som man sedan kan göra trevliga plugins med. Gradle har ju också stöd för plugins, och jag tycker att det oftast räcker, aldrig riktigt haft behovet av att skriva groovy scripts för att fixa byggen.

Projekt med flera moduler är en fröjd med Maven, medan med Gradle så är det inte alls lika trevligt.

Aldrig haft problem med olika versioner av Maven osv, medan med Gradle känns det nästan som en regel än ett undantag att det krånglar.
__________________
Senast redigerad av innesko 2023-11-12 kl. 10:46.
Citera

Stöd Flashback

Flashback finansieras genom donationer från våra medlemmar och besökare. Det är med hjälp av dig vi kan fortsätta erbjuda en fri samhällsdebatt. Tack för ditt stöd!

Stöd Flashback