Sveiki,
Ilgai dirbu su 3d grafika ir siuo metu pasirodzius UE4 sugalvojau pradeti mokintis programavimo. Tiksliau c++, nes na UE4. Neturiu svajones sukurti super buper zaidimuka, na bet nesakyk niekada ne. Bet man svarbiausia rasti darba per atstuma. Kadangi nelabai ismanau ta programavimo rinka, tai net nezinau, ar gerai padariau, kad pradejau ta c++ mokintis. Dar aplink visi aiskina, kad geriau rinktis Java. Prisisiunciau tos Javos pamoku, bet vel pradejau metytis, nes tiksliai nezinau, ka as apskritai noriu programuoti, ypac turint omenyje, kad man reikalingas darbas per atstuma. Juk zaidimu firmos kurimui jauciu nelabai priima freelancerius, ar as klystu? Ka ismokus c++ dar reiketu mokintis, t.y. opengl, diretx, kad tuos zaidimus kurti? Cia sunku, ilgai trunka? Ju ant mobiliaku kaip suprantu neis paleisti? Dar kodel susizavejau c++, nes paskui c, c# ir ta pati java lengviau mokosi. Galvojau vienu suviu nusausiu kelis zuikius. Bet vel man aiskina, jeigu nezinai, ko nori, tai imk ta java, darbu pilna, o kai apsispresi, ismoksi ir ta c++. Bet dabar su ta java neaisku, nes vakar perskaiciau, kad java android biski kita opera nei java core. Nes vienas yra google gaminys, kitas - oracle. Ismokus Java, ka dar reiks papildomai mokintis? Dar man sako mokintis java ir .net. Bet vel pasimeciau, nes .net yra kaip ir c++ ar ko ten is c apvalkalas, tai prie ko java? Ir ar tie .net developeriai gerai uzdirba, sunku ismokti, kaip galimybes gauti darbus per atstuma? Tiksliai zinau, kad nenoriu kurti draiveriu, dar kitu windowsu, photoshopu, nenoriu mokintis php, pythonu. Tai pagrindinis demesys kaip ir c++ bei java. Nes ar protinga mokintis c#, gal tuomet geriau su ta c++ pavargti ir taska padeti? Zodziu padekit savo patarimais. Kiek ziuriu tu topu, tai su java kaip ir netureciau tikrai prasauti, o su c++ tokia abejone giliai tupi. Gal man taip tik atrodo. Na nezinau. Sunku apsispresti, nes tiksliai nezinau, ka dar prie kiekvienos reiks mokintis, kiek laiko uzims, nes tikrai neturiu laiko ir c++, ir javai. Aisku, pinigu klausimas man labai svarbus. Kadangi c++ pravariau klases, paveldejima, tai tikrai programavimas manes neerzina. Tik reikia apsispresti ir gilintis i viena kazka.
mandras prieš 8 metus
Kai tekstas be jokio formatavimo tai atrodo kaip ilga greitakalbė vienu įkvėpimu :D
Jei nori greitai pradėti dirbti nuotoliniu būdu, tada eik į web full stack developinimą pradžia ganėtinai lengva, praplės akiratį kas kaip turi veikti iš backend ir frontend pusės, būsi priversta dirbti su duombazėm bei įvairiausiais API. Šioje srityje žymiai paprasčiau bus rasti paprastesnių ir lengvesnių darbų ir kartu su jais tobulėti, o tobulėjant imti sudėtingesnius darbus.
Turėdama tokį pagrindą nebus sudėtinga persiorientuot į kitas žemesnio lygio programavimo kalbas - java ar .net/C#. Tačiau su jomis smulkių darbelių greičiausiai nepavyks lengvai rasti.
Kad ir ką pasirinksi - nesuklysi, vis tiek svarbiausia loginis mąstymas, o ir išmėginti kelias programavimo kalbas tiesiog būtina.
Tiesa, žvilgtelėk į Unity3D, nors techniškai ir nusileidžia Unreal varikliukui, bet mano nuomone, tai yra praktiškesnis varikliukas pradžiai.
nendre prieš 8 metus
Dejau tu enteriu, bet atrodo, kaip nedeta :D
ka reiksia full stack developinimą? kiek cia jam reikia moketi ko?
Dar prie to paties gal galima placiau apie java ir c#, kas geriau, ju perspektyva ir pan.
Bebras prieš 8 metus
Pirmiausia, apie pinigus ir uždarbį stengsiuosi daug nekalbėti nes to nelabai išmanau.
Labai daug dėmesio skiri kurią kalbą mokytis. Išmokus vieną - kitą išmokt bus ženkliai lengviau. Nors pats ir pradėjau nuo Java, nesu patenkintas tuo "visi aplinkinia sako mokytis java". Pats jo didelių privalumų matau vos porą: Android dev(nors yra daug kitų alternatyvų) ir tai kad ji veikia visose OS, kuriose yra JVM. Rinka Java developerių yra didelė tik tarp ilgą patirtį turinčių Java EE(Enterprise edition, daugiausiai skirtas svetainėms) programuotojų. Bet vėlgi, tai nėra pats įdomiausias darbas, kadangi rašysi tik back-end,... Java ir Android'uose yra Java, skiriasi tik naudojamos bibliotekos.
C++ sena, bet vis dar(ir manau ilgai bus) patikima kalba. Jei neklystu, ji klasifikuojama žemesnio lygio(žemiausias=vienetai ir nuliai). Asmeniškai manau kad dėl to jos vertė nekris.
C# manau yra ne pati iš naudingiausių kalbų. Taip, ji giriama patogiu grafinės sąsajos(GUI) kūrimu, lyginant su C++ ar Java. Bet ji skirta Windows OS ir niekam kitam, o už tai jai dedu didelį minusą. (Žinoma kadangi internetas yra internetas, įmanoma rašyti C# programas ir Linux(Mono compiler)).
Bendrai manau kad per daug giliniesi ką veiksi tu tom kalbom. Juk ne rytoj į darbą! Išmok vieną kalbą, betkurią, o tada žiūrėk ką nori daryti.
P.S. Norint perkelti tekstą į kitą eilutę reikia dviejų Enter
.
nendre prieš 8 metus
O Java kam labiausiai naudojama? Android, desktop, web? Pats ka daugiau darai?
Beje, su kuo sis forumas sukurtas?
Bebras prieš 8 metus
Na naudoti Java galima teoriškai naudoti betkam, bet populiariausi panaudojimai Android ir Svetainių back-end. Nežinau kada paskutinį kartą mačiau desktop programą parašyta su Java.
Šis forumas sukurtas su PHP+JS naudojant Laravel framework. Maze yra atviro kodo svetainė, visą jos kodą gali pamatyti čia.
nendre prieš 8 metus
O kokie reikalai su python? lyginant su php ir siaip placiau ka nors apie ta python. Skaiciau, kad nuo jo dauguma pradeda svetaines kurti, apskritai mokintis programavimo. Galima koki eshopa sukurt? Jis front end?
nendre prieš 8 metus
Ir dar, o jeigu nori kazkokia programele sukurti windows'ams, tai jau c#/.net naudot? Jeigu c++ per sunku ir siaip nekuri kazko tokio vau.
mandras prieš 8 metus
Full-stack - visų galų meistras, nuo frontend iki backend web technologijose, į tai gali įeiti ne viena aukštesnio lygio programavimo kalb, pvz: php, python, javaScript ar tie patys java/.net. Net neverta pradėt gilintis kas geriausia, nes nuo konkretaus darbo priklausys vienos ar kitos kalbos privalumas.
O populiarumą lengva sužinoti Google Trends - kaip matai **python **mažiausiai populiariausia, o **java **populiariausia, **php **per vidurį. Tai taip pat reiškia kiek daug rasi paaiškinimų kaip išspręsti vieną ar kitą problema - šiais laikais google neatskiriamas programuotojo draugas.
Windows programėlę gali parašyti su visom kalbom (ir su php ir javascript net), klausimas ką norėtum kurti? Jei esi visiškai pradedančioji, tai tada turbūt įdomiausia būtų kurti žaidimą, su grafika nebūtina mokėti dirbti, nes didžiąją dalį assets galima gauti nemokamai.
SkepticalHippo prieš 8 metus
Labai padrikai išmėtytos mintys, tai sunku atrasti nuo kur čia tiksliai pradėti atsakinėti į tavo klausimus. Pabandysiu į viską atsakyti bendrai.
Jeigu tavo pagrindinis motyvatorius yra pinigai, truputį liūdnas reikalas gali būti. Jeigu tavęs "neveža" problemų sprendimas ir kažko kūrimas, gali būti, kad ilgainiui tiesiog pritrūksi motyvacijos ir viską mesi.
Rinka, vienokia ar kitokia, yra visoms programavimo kalboms. Darbą per atstumą įmanoma rasti programuojant betkuria kalba. Aišku, paklausa kalboms skiriasi, tai atitinkamai vienoms rasti darbą sunkiau, kitoms lengviau.
Apie žaidimų rinką beveik nieko nenutuokiu, tai galiu pasidalinti tik asmenine freelance ir darbo paieškų patirtimi:
C#
Darbą per atstumą rasti gana sudėtinga. Kalba dominuoja senai įsikūrusiose įmonėse (draudimo ir finansų rinkos), kurios mėgsta turėti programerių komandą po stogu, o ne kažkur kitąpus Atlanto. Darbo užmokestis neblogas, bet neblogas užmokestis reikalauja ir atitinkamų žinių.
C# galima pritaikyti ir cross-platform mobiliųjų programėlių kūrimui (su Xamarin ar pan.). T.y. sukuri programėlę visoms nešiojamų prietaisų operacinėms sistemoms iš karto. Čia paklauta šiek tiek didesnė, nes galiausiai svarbu produktas, o ne įrankis, tai atitinkamai ir darbą per atstumą rasti daug, daug lengviau.
Java
Situacija labai panaši kaip ir C#. Dominuoja pagrinde senesnėse įmonėse, kurios mėgsta turėti savo komandą. Dažniausiai dirbsi prie internetinių puslapių arba programų skirtų pinigams skaičiuoti.
Lengviausiai randamas darbas per atstumą - Android programėlių kūrimas.
Kitais atvejais, lengviausia rasti būtų darbą, kur svarbu galutinis produktas, o ne pasirinkta technologija (kaip ir C#).
Piniginiu atžvilgiu - neblogas pasirinkimas, bet gali tekti pavargti norint susikurti sau vietą po saule.
C++
Per savo trejus freelancinimo metus, mačiau tik gal 4 darbo skelbimus susijusius su C++. Visi 4 reikalavo labai specifinių žinių.
Kadangi kalba yra ganėtinai žemo lygmens, dažniausiai ji naudojama tais atvejais, kai programa turi būti greita ir išnaudoti kompiuterio resursus išnaudoti kaip įmanoma efektyviau. Į šituos dalykus įeitų įvairūs žaidimai, draiveriai, darbas su garso/vaizdo technologijomis (veido atpažinimas, garso apdorojimas ir pan.), kriptokrafija, kompresija ir t.t.
Dar pamiršau paminėti, kad C/C++ yra populiarus pasirinkimas programuoti įvairiems chipams ir embedded sistemoms.
Python/Ruby/PHP
Visos trys kalbos naudojamos internetinių puslapių kūrimo erdvėje (ir netik). Mano akimis - visos 3 kalbos apylygės, tai kurią mokytis - skonio reikalas. Kiekviena kalba turi savo framework'ų (karkasų/varikliukų) ir nemažas bendruomenes.
Python ir Ruby daugiausiai renkasi jaunesnės įmonės. Abi kalbos ganėtinai lengvos ir paklausios. Python ne tik naudoja puslapiams kurti, bet ir įvairioms mažesnėms programėlėms/scriptams (norint automatizuoti tam tikrus dalykus sistemoje).
Python/Ruby rasti darbą per atstumą ganėtinai lengva ir tikriausiai dirbsi normaliose, greitai judančiose, įmonėse.
Su PHP darbą per atstumą tikriausiai rasti bene lengviausia. PHP ekosistemoje vyrauja visokios internetinės parduotuvės, blog'ai, asmeniniai puslapiai, įmonių "brošiūriniai" puslapiai ir panašiai.
JavaScript
JavaScript šiuo metu yra tikriausiai pati paklausiausia. Po truputį, su JavaScript rašoma viskas - programėlės mobiliesiems telefonams, programos kompiuteriams, internetiniai puslapiai, serveriai ir t.t. Žinoma, kas liečia pilnas programas mobiliems ir kompiuteriams - JavaScript šiek tiek nusileidžia prieš tai minėtoms gigantėms (C++, C#, Java), bet nieko nėra neįmanomo ;)
Dėl darbų, tikriausiai net jeigu ir neieškosi - vis tiek rasi. Užmokestis ganėtinai neblogas. Ne toks didelis, kaip gigančių, bet patenkinamas.
Pati kalba gana lengva ir smagi. Daug įvairių bibliotekų, frameworkų ir turi ganėtinai malonią bendruomenę.
Mačiau turėjai klausimų apie internetinių puslapių kūrimą bendrai. Esu parašęs temą - nuo ko pradėti kurti internetinį puslapį. Gal būt bus naudinga..
Manau dar verta paminėti, kad didžiosios įmonės neapsistoja ties kažkuria viena kalba. Visada renkasi tą kalbą, kuri geriausiai išsprendžia turimą problemą. Visada atsivželgiama į reikalavimus - programos greitį, patogumą ir pan.
Mano rekomendacija - rinkis kalbą, kuri tau atrodo smagiausiai ir labiausiai prie širdies. Išmoksi vieną, su laiku išmoksi ir kitas.
nendre prieš 8 metus
Na va, padrikos mintys svieseja :)
Apie weba kaip ir aisku. Jau ko tikrai nenoriu, tai kurti sabloninius puslapius.
Dabar desktop. Su kuo dar be c++ galima sukurti kazka panasaus i anglonas, supermemo? c# taip? negi tai iveikiama ir su php, javascript?
Dar matot, kas labai lengva ismokti, tas turi ir minusu, daug konkurentu ir kaina krenta :) tikrai nenoriu dirbt uz vyno buteli :) jau geriau ideti daugiau pastangu pradzioje.
SkepticalHippo prieš 8 metus
@nendre Desktop:
- Lengviausia/Protinga - C#, Java, JavaScript
- Sunku/Protinga - C++
- Sunku/Neprotinga - PHP, Ruby
Keletas su JavaScript parašytų programų.
Apie Python desktop programas mažai žinau, bet berods gana populiarus variantas tarp Linux vartotojų, tai manau neblogas dalykas.
Už vyno butelį nedirbsi su nei viena kalba, nebent rinksiesi klientus iš Azijos ;) Verta dar ir prisiminti, kad jeigu tu klientui sakysi, kad gali puslapį padaryti su C++ už 30 tūkst. eurų, nes C++ gi darai, o ne "kažkokiu šūdu", jis tave pasiųs toli, toli ir susiras kas padarys pigiau ir greičiau su kita programavimo kalba :)
nendre prieš 8 metus
as is vis pirma karta girdziu, kad c++ dar ir su webu draugauja. konkretaus taikinio neturiu, bet man deliojasi paveikslas, kur kas protinga naudoti, kam nenaudojama ir pan.
SkepticalHippo prieš 8 metus
@nendre C++ galima naudot web, bet nepopuliaru, nes tiesiog persudėtinga kalba ir jos pagrindiniai pliusai beveik neišnaudojami.
Gerai pasistengus, su bet kuria kalba gali padaryt bet ką, tik vėl, klausimas ar tai bus naudinga/efektyvu/protinga.
nendre prieš 8 metus
Kiek laiko uzimtu ismokti Java, Javascript, C#, python, jeigu zinai, kas yra funkcija, visus ciklus, masyvus? ne visas kalbas bendrai, o po viena?
Bebras prieš 8 metus
Neįmanoma nustatyti, viskas priklauso nuo tavo motyvacijos. Bet negalvok kad šiandien ar rytoj ar net arimiausias kelias savaites jau mokėsi laisvai koduot.
nendre prieš 8 metus
Pasirinkau phyton. O kiek reikia moketi programuoti, kad jau galetum gauti darba?
Ir dar idomus klausimas iskilo. Kas yra architektas? Ka jis daro? Nes dabar pradejau mokytis apie klasiu paveldejima. Tai architektas ir sugalvoja kiek tu klasiu bus ir kas ka paveldes ar jo kita funkcija?
nendre prieš 8 metus
na skaiciau, kad yra it architektai. tai ir idomu, ka jie daro. nezinau, kur tu gyvenime, bet mano pasaulyje viskas matuojama pinigais ir niekas nieko man uz dyka neduoda :D
nendre prieš 8 metus
ir kodel man nuolat dega, kad yra naujas pranesimas, jeigu jis perskaitytas, atsakytas, ir siaip viskas isklinkinta ir perklinkinta?
nendre prieš 8 metus
yra front-end, back end developeriai, full stack ir web developeriai. Del pirmuju triju aisku, o kuo skiriasi web developeris nuo likusiu?