Kezdőoldal » Számítástechnika » Programozás » Jó választás Javáról Gora...

Jó választás Javáról Gora váltani?

Figyelt kérdés

Eddig Java (Spring boot) tapasztalatom van, de szembe jött velem egy jó munkalehetőség, ahol Goval kéne dolgozni.


Én az az ember vagyok, aki 1 dologban nagyon ki akarja maxolni a tudását és utána lehet kicsit kikacsintgatni jobbra, balra, de még csak junior vagyok, így nem tudom, hogy jó döntés lenne nekem kb 1,5 év munkatapasztalat után rögtön egy teljesen más világba bele dobnom magam.


Ha 20 év tapasztalatom lenne, akkor nyílván nem érdekelne, de így picit nehéz kérdés számomra.


Meg persze nem tudom, hogy mennyire külön világ és a későbbiekben mennyire befolyásolná a munkalehetőségeimet, ha ismét 2-4 év mulva javás pozit keresnék.



2023. aug. 4. 18:35
 1/6 anonim ***** válasza:

Sosem fogod "kimaxolni" enyik nyelvet sem, minden ma használt nyelvet aktívan fejlesztenek - és nem is kell, bármilyen nyelvvel is dolgozz csak a töredékét használod a lehetőségeinek, területtől függetlenül(hacsak nem valami nagyon specifikus nyelvről van szó persze).

Egyik nyelvről átállni egy másikra nem katasztrófa, amennyire nézem nem nagyon van átfedés java és go között, de azt írják a go épp az egyszerűség miatt jött létre, gyanítom nagyon könnyen tanulható. Ha maga a meló érdekel, nem ragaszkodsz a jelenlegi munkahelyedhez, és a pénz oké, akkor hajrá. A nyelv egy eszköz, nem kell feleségül venni.

2023. aug. 4. 18:59
Hasznos számodra ez a válasz?
 2/6 A kérdező kommentje:

Nem is feltétlenül nyelvekben gondolkodom, inkább a vele járó dolgokkal.


Pl.: Ha javáról beszélünk, akkor maga a Spring, Spring boot, Jakarta EE világban nagyon el lehet veszni. Ott is a framework alapos ismerete nem egy egyszerű dolog, de mégis ha ismered, akkor ha meglátsz 1-1 problémát, akkor rögtön rávágod a megoldást.


Szóval például egy Java => Kotlin váltáson nem is gondolkoznék, de egy mondjuk Java => C# váltáson már erősen, hiszen teljesen más világ a kettő még akkor is ha 1-1 új nyelvet megtanulni nem nehéz, de minden körítés ami vele jár azt igen.


Vagy most picit nyomás alatt én gondolok túl sokat bele?

2023. aug. 4. 19:08
 3/6 anonim ***** válasza:

Java-nak nagyon jó kiegészítése a Kotlin. Sőt, ha SpringBoot projektet indítok, azonnal Kotlin nyelvet választok mellé. Ez számomra nem kérdés.


Go nyelv én is tanulom. A fő motivációm, hogy az általam írt microservice ne 20-40mp alatt startoljon el (ahogy a spring boot szokott), hanem a töredéke alatt. Igaz, van már GaalVM is, de sok komponens nem támogatja sajnos...


Go nyelvről azt kell tudnod mielőtt belevágsz, hogy nincs benne objektum orientáltság, hanem inkább hasonló viselkedést tudsz benne csinálni. Eleve az adat struktúrákat "struct"-okba rendezi és ezekhez tudsz külön funkciókat adni, ha akarsz.


Pl. a Gitea Go nyelvben íródott.

[link]


Van benne interface is, de Java-hoz képest úgy működik, hogy nem kell "implemented" vagy hasonló. Minden struct-ot áttudsz adni bármilyen interface-nek, amennyiben az adott struct rendelkezik minden olyan funkcióval, ami az interface-ben benne van.


pl.: (...-al jelzem a behúzást)


package main


import (

... "fmt"

)


// definiálok egy interface-t

type I interface {

... MyFunc() int

}


// definiálok egy struct-ot

type A struct {

... value int

}


// Az A struct-hoz hozzárendelek egy függvényt, hogy illeszkedjen az interface-re

func (x *A) MyFunc() int {

... return x.value

}


// egy mezei függvény, ami minden olyan struct-ot elfogad ami implementálja az interface összes függvényét

func aMethod(obj I) int {

... return obj.MyFunc()

}


func main() {

... // Létrehozom az A struct-ot 5-s értékkel (ami a value), majd referenciaként "&" átadom az aMethod-nak

... fmt.Println(aMethod(&A{5})) // print: 5

}

2023. aug. 5. 12:53
Hasznos számodra ez a válasz?
 4/6 anonim ***** válasza:

Ha ezeket is hozzáadom és a main-t lecserélem erre az is rendben van:


// definiálok egy másik interface-t

type I2 interface {

... MyFunc() int

}


func aMethod2(obj I2) int {

... return obj.MyFunc()

}


func main() {

... fmt.Println(aMethod(&A{5})) // print: 5

... fmt.Println(aMethod2(&A{5})) // print: 5

}

2023. aug. 5. 12:58
Hasznos számodra ez a válasz?
 5/6 A kérdező kommentje:

Köszi, a részleteket majd online megtudom nézni.


Inkább karrier szempontjából volt számomra érdekes a kérdés.


Nem akarok abba a kategóriába esni, hogy "Jack of all trades master of none", mert úgy érzem ha ilyen éles váltást teszek, akkor hiába adnak elém alap Java és alap Go feladatokat, de soha sem leszek én a szakértő, aki megoldja az igazán durba problémákat, amiért a legjobbat fizetnet.


Tehát nem akarok egy teljes IT deparment lenni, ami mindent alap szinten megold.

2023. aug. 5. 13:06
 6/6 anonim ***** válasza:

Figyu. Hogy kontextusban helyezzük a beszélgetést Én Java-ban Senior-nak számítok lassan 3 éve (de kinek mi a senior..). Én nem terveztem a Java-t elhagyni, mint munkahelyi környezetet, mert eleve rengeteg rendszer van Java-ban amit karban kell tartani és/vagy fejleszteni kell. Mindezek mellet itthon Java-ban elehet a legtöbbet keresni a salary guid-ok szerint. (Persze ez nem azt jelenti, hogy másban nem.)


Én a Go-t nem karrier váltás miatt tanulom, hanem házi projekt keretében, mert most ehhez kaptam kedvet és játszok vele. Gondoltam én. :)

Meg az sose hátrány, hogy több nyelvet tudsz és használsz, mint amiben dolgozol.

Ugyanilyen szándékom van majd a Python-al (AI toolok miatt főleg) meg a Rush-al is, hogy majd azokat is tanulmányozom szabadidőmben.

2023. aug. 5. 13:15
Hasznos számodra ez a válasz?

Kapcsolódó kérdések:





Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!