Najpoužívanejší programovací jazyk?

Programovacie jazyky, rady, poradňa...
curta
Light Professional
Light Professional
Príspevky: 924
Registrovaný: 29 apr 2013, 14:04

Najpoužívanejší programovací jazyk?

Príspevok od používateľa curta »

1. Javascript
2. PHP
3. Java

Alebo je to inak?
V jednej diskusii na youtube pod prednáškou o Pythone presviedčali, že najpoužívanejší jazyk je Python. Dostal som sa tam do sporu.
Paradoxne, javascript je asi najškaredší jazyk, a PHP je hneď za ním. A sú to zrejme dva najpoužívanejšie jazyky. PHP je na väčšine webov a javascript skoro na každom.
416703184_10163257273962892_4260185706036806987_n.jpg
94jakub
Guru wannabe
Guru wannabe
Používateľov profilový obrázok
Príspevky: 2038
Registrovaný: 15 dec 2006, 13:18
Bydlisko: Martin/BA
Kontaktovať používateľa:

Re: Najpoužívanejší programovací jazyk?

Príspevok od používateľa 94jakub »

My bez emócií v diskusii, si nájdeme objektívne a relevantné zdroje na takúto štatistiku aby sme nemuseli hádať. Tak trebárs

TIOBE index - https://www.tiobe.com/tiobe-index/
Stackoverflow survey - https://survey.stackoverflow.co/2023/#s ... -languages
IEEE ranking - https://spectrum.ieee.org/the-top-progr ... uages-2023

Aj keď tieto rebríčky treba brať s istou rezervou a neviesť kvôli nim žabomyšie vojny. Každý má (mal) svoje výhody.
aacid
Hardcore addict
Hardcore addict
Príspevky: 8160
Registrovaný: 22 nov 2006, 21:55
Bydlisko: BA

Re: Najpoužívanejší programovací jazyk?

Príspevok od používateľa aacid »

https://survey.stackoverflow.co/2023/#t ... chnologies

ja som bol odchovany na C#, python mam celkom rad ale na javascript mam slabost. moderny javascript je velmi vyspely jazyk ale vzdy je tu alternativa typescript. v poslednom case robim hlavne v tom, hlavne aby som ziskal prax.
ked sa clovek nauci ze nema kazdu druhu vec typovat ako "any" a zaroven ze existuju pripady kedy je "any" ok, tak sa v tom celkom prijemne programuje. hlavne teda ziadne switchovania sa medzi backendom a frontendom.
node_modules peklo je stale peklo aspon ta to nuti nepouzivat na kazdu blbost kniznicu. (inak to je zaujimava tema, u nas v korporate sme sa za posledne roky otocili o 180 stupnov kedy to bolo "radsej pouzi kniznicu, na co znova vymyslat koleso a aj tak to asi nespravis tak ako komunita" a teraz vsetci placu ze preco mame tolko 3rd party kniznic v kode lebo ak chces vyhovies korporatnym security policies tak dookola updatujes kniznice ako blby.

a najmenej sympaticka mi je java, mozno sa vela zmenilo odkedy som nieco robil v jave ale kombinacia blbeho IDE (eclipse aspon v minulosti), ukecanosti kodu a nutnosti bezat na JVM ma proste vzdy odradzala...
curta
Light Professional
Light Professional
Príspevky: 924
Registrovaný: 29 apr 2013, 14:04

Re: Najpoužívanejší programovací jazyk?

Príspevok od používateľa curta »

@94jakub
Ajaj. Vidím, že tam zase vyhráva Python.
Ale treba pritom používať aj sedliacky rozum.
Najpopulárnejší nie je najpoužívanejší. Tam ľudia hlasujú napr. podľa toho, čo ich učili v škole, kedysi Pascal, teraz Python.
Posledný ranking podobne - trebárs ak je najviac "jobov" v Pythone, neznamená, že je najpoužívanejší. Vačšina webov, aj trebárs tento, je nekomerčná aktivita. Stále mi vychádza najpoužívanejší Javascript a potom PHP.
Obľubenosť môže byť iná, firmy môžu hľadať iných, ale aj tak pomaly všetko beží na Javascripte a PHP.

@aacid
Java je moja najobľúbenejšia, dnes má na webe (servlety) super rýchlosť.
harrison314
Hardcore addict
Hardcore addict
Používateľov profilový obrázok
Príspevky: 8306
Registrovaný: 27 máj 2009, 20:42
Bydlisko: Bratislava
Kontaktovať používateľa:

Re: Najpoužívanejší programovací jazyk?

Príspevok od používateľa harrison314 »

Hlavne ludom bez emocii je uplne jedno, aky jazyk je teraz puplarny, lebo si zvolia taky, co sa im na dani pracu hodi.
Prílohy
GFB0bnMagAAEPR0.jpg
curta
Light Professional
Light Professional
Príspevky: 924
Registrovaný: 29 apr 2013, 14:04

Re: Najpoužívanejší programovací jazyk?

Príspevok od používateľa curta »

1. Diskusie bez emócií sú nudné, vidno to aj na tomto fóre
2. Popularita a rozšírenie jazyka rozhoduje aj o tom, či ho použiť v práci - menej bugov, rýchlejšie odstránenie bezpečnostných chýb, viac tutoriálov, živšia komunita, viac rozšírení a knižníc na všetko
3. Nejde len o prácu, ale ak je trebárs najrozšírenejší Javascript a PHP, niečo to vypovedá o ľudoch, je to filozofická otázka alebo širšie pochopenie, ako veci okolo fungujú. Vzdelanie vôbec by malo byť aj pre pochopenie sveta okolo nás, nie len pre prácu.
harrison314
Hardcore addict
Hardcore addict
Používateľov profilový obrázok
Príspevky: 8306
Registrovaný: 27 máj 2009, 20:42
Bydlisko: Bratislava
Kontaktovať používateľa:

Re: Najpoužívanejší programovací jazyk?

Príspevok od používateľa harrison314 »

curta napísal: 11 feb 2024, 14:52 1. Diskusie bez emócií sú nudné, vidno to aj na tomto fóre
Ked hladas emocie tak skus indicke telenovely.
curta napísal: 11 feb 2024, 14:52 2. Popularita a rozšírenie jazyka rozhoduje aj o tom, či ho použiť v práci - menej bugov, rýchlejšie odstránenie bezpečnostných chýb, viac tutoriálov, živšia komunita, viac rozšírení a knižníc na všetko
V tej top 20 to uz je jedno. A ked v nej si: Prave tie novo najpoplarnejsie jazyky mali juniornejsu komunitu, ako tie stabilizovane. Odstranenie bezpenostnych chyb s tym tiez nesuvisi. Viac kniznic != lepsie kniznice, menej zabgovane alebo pouzitelnejsie (vid. npm).
curta napísal: 11 feb 2024, 14:52 3. Nejde len o prácu, ale ak je trebárs najrozšírenejší Javascript a PHP, niečo to vypovedá o ľudoch, je to filozofická otázka alebo širšie pochopenie, ako veci okolo fungujú. Vzdelanie vôbec by malo byť aj pre pochopenie sveta okolo nás, nie len pre prácu.
Ver, ze to s programovacim jazykom nesuvisi.
starysomar
Hardcore addict
Hardcore addict
Používateľov profilový obrázok
Príspevky: 7947
Registrovaný: 01 máj 2011, 20:26

Re: Najpoužívanejší programovací jazyk?

Príspevok od používateľa starysomar »

Emócie... Mal som "na jazyku" aby poslal SMS so slovkom K*k*ti na 159, ak mu chýbajú emócie...
Spixy
Professional
Professional
Používateľov profilový obrázok
Príspevky: 1334
Registrovaný: 24 okt 2010, 12:52

Re: Najpoužívanejší programovací jazyk?

Príspevok od používateľa Spixy »

Logicky musí byť najpoužívanejší jazyk Javascript - weby sú asi najväčšie odvetvie v IT a pri programovaní webu si nútený písať Javascript, keďže iné jazyky browseri natívne nepodporujú. (nerátam Blazor, Flutter Web, atď, ktorými sa tiež dá písať frontend ale skoro nikto to nepoužíva)

Javascript je škaredý, ale nikto kto neni masochista v ňom dobrovoľne nepíše. Väčšinou sa programuje sa v Typescripte - ktorý má mimochodom asi najlepší typový systém zo všetkých jazykov a za mňa je to jeden z top jazykov.
aacid
Hardcore addict
Hardcore addict
Príspevky: 8160
Registrovaný: 22 nov 2006, 21:55
Bydlisko: BA

Re: Najpoužívanejší programovací jazyk?

Príspevok od používateľa aacid »

co je na javascripte skarede? samozrejme myslim moderny javascript, nie to co tu bolo 10 rokov dozadu?
dokonca ani to ze javascript nie je typovany uz nie je uplne pravda, lebo ak chces mozes pouzivat JSDoc.

ono hlavne na mensie veci (a to je vacsinou prave ten frontend) je javascript uplne idealny. pretoze na to aby si pouzil fetch na ziskanie nejakej struktury a tu zobrazil je typescript totalny overkill a zbytocne zabijes viac casu definovanim interfacov ako pisanim samotnej funkcionality.
realne pokial nemas komplikovanu web appku s tisicami riadkov kodu tak typescript vobec netreba.

http://vanilla-js.com/
Spixy
Professional
Professional
Používateľov profilový obrázok
Príspevky: 1334
Registrovaný: 24 okt 2010, 12:52

Re: Najpoužívanejší programovací jazyk?

Príspevok od používateľa Spixy »

JSDoc neni typovanie, len dokumentuje typy - nemá to compile-time ani runtime typovú kontrolu

Čo je na JS škaredé?
- nemá to typovú kontrolu, takže musel vzniknúť Typescript, ktorý musí transpilovať do JS, čo je zbytočný krok (toolchain) navyše
- správanie this
- správanie == ktoré odporuje logike (a implicitné pretypovanie)
- null vs undefined
- by default to nič nevie, takže na každú blbosť si musíš inštalovať npm balíček (narozdiel od C# alebo Javy s bohatou funkcionalitou už v základe), veľa balíčkov = viac potenciálnych zraniteľností, dependency hell, nutnosť ich všetky updatovať... - nodejs to na backend našťastie trochu zachraňuje
- nepodporuje function overloading (resp. implementácia je taká škaredá, že sa to v praxi často nepoužíva)
- všetky čísla sú double, nemá typ Decimal
Prílohy
js.png
harrison314
Hardcore addict
Hardcore addict
Používateľov profilový obrázok
Príspevky: 8306
Registrovaný: 27 máj 2009, 20:42
Bydlisko: Bratislava
Kontaktovať používateľa:

Re: Najpoužívanejší programovací jazyk?

Príspevok od používateľa harrison314 »

Tam by sa dalo pokracovat, ako to, ze standardny sort usporiadava len stringy, peklo s datumom, mesiace zacinaju nulou, celkovo ta kultura je velmi zla. No vdaka prehliadacom sa velmi rozsiril a dnes hu musi vediet takmer kazdy programator.
aacid
Hardcore addict
Hardcore addict
Príspevky: 8160
Registrovaný: 22 nov 2006, 21:55
Bydlisko: BA

Re: Najpoužívanejší programovací jazyk?

Príspevok od používateľa aacid »

Spixy napísal: 12 feb 2024, 19:47 - nemá to typovú kontrolu, takže musel vzniknúť Typescript, ktorý musí transpilovať do JS, čo je zbytočný krok (toolchain) navyše
pokial mas zadokumentovane typy pomocou jsdoc tak vacsina editorov ti bude vypisovat errory. mozno to nie je idealne, ale je to daleko od "nema typovu kontrolu"
Spixy napísal: 12 feb 2024, 19:47 - správanie this
to uz x rokov nikto nepouziva odkedy su v javascripte closures a promises
Spixy napísal: 12 feb 2024, 19:47 - správanie == ktoré odporuje logike (a implicitné pretypovanie)
ano, ten obrazkovy vtip koluje po internete neustale, faktom ale je ze nikto dnes v javascripte nepouziva "==" na porovnavanie, pouziva sa "===".
Spixy napísal: 12 feb 2024, 19:47 - null vs undefined
to ma podla mna svoj realny vyznam, null reprezentuje prazdnu hodnotu, undefined nedefinovanu, to je dost rozdiel.
Spixy napísal: 12 feb 2024, 19:47 - by default to nič nevie, takže na každú blbosť si musíš inštalovať npm balíček (narozdiel od C# alebo Javy s bohatou funkcionalitou už v základe), veľa balíčkov = viac potenciálnych zraniteľností, dependency hell, nutnosť ich všetky updatovať... - nodejs to na backend našťastie trochu zachraňuje
ano, dependency hell je asi najhorsia vec na javascripte, ale zase to nie je problem iba javascriptu, s javou si uzivame v robote rovnaky dependency hell a kym neboli virtual environmenty v pythone tak to bol tiez celkom horror.
Spixy napísal: 12 feb 2024, 19:47 - nepodporuje function overloading (resp. implementácia je taká škaredá, že sa to v praxi často nepoužíva)
toto je tiez iba o zvyku, neni lepsie pokial dve funkciu beru rozne parametre aby mali aj 2 rozne mena? nevzikaju z toho potom problemy ked ma funkcia 20 overloadov a vlastne si si zrusil typovanie, pretoze sa ti moze lahko stat ze funkcii posles inu variablu ako si chcel a tvoj kod sa bude spravat inak ako predpokladas ze sa bude spravat.
Spixy napísal: 12 feb 2024, 19:47 - všetky čísla sú double, nemá typ Decimal
to som zistil az teraz :D zatial to viditelne nebol problem.

ale uz som to pisal vyssie, tiez pouzivam viac typescript ako javascript, len sa vzdy pozastavim ako su ludia na internete schopni dookola opakovat rovnake vtipy ktore uz davno neplatia. javascript sa neustale vyvija a tak skoro sa ho nezbavime. nie je na skodu ho ovladat. typescript je super ale pride mi to neustale divne ze pisem kod v jednom jazyku a ten je nasledne prekladany do ineho jazyka ktory nasledne bezi v produkcii. vlastne nemas poriadnu kontrolu nad tym co za kod tam realne je.
harrison314
Hardcore addict
Hardcore addict
Používateľov profilový obrázok
Príspevky: 8306
Registrovaný: 27 máj 2009, 20:42
Bydlisko: Bratislava
Kontaktovať používateľa:

Re: Najpoužívanejší programovací jazyk?

Príspevok od používateľa harrison314 »

Ano modreny javascript je iny, ale stale stavia na tych prehnitych zakladoch. A typove anotacie naozaj nie su typy, za mna je to ekvivalent ako ked si typ napises do komentaru (mozes tam napisat zly, niekto si to nevsimne pri refaktoringu atd...). Prave pre to vznikol typescript.
aacid napísal: 13 feb 2024, 5:23 to som zistil az teraz zatial to viditelne nebol problem.
Ja uz hej, v JSON-och. Ono totiz to cislo nie je double, ale je to taky divny mackopes medzi int32 a double. A ked clovek zrazu potrebuje long, tak smola. Dalsi priklad, ked to robi problem je to, ze na to aby si zistil, ci v premnej je parne cislo tak potrebujes externu kniznicu.
aacid
Hardcore addict
Hardcore addict
Príspevky: 8160
Registrovaný: 22 nov 2006, 21:55
Bydlisko: BA

Re: Najpoužívanejší programovací jazyk?

Príspevok od používateľa aacid »

toto je asi jeden z problemov preco sa v javascripte kazdy stazuje na obrovske node_modules, lebo na kazdu kravinu stahuju kniznicu.
preco by si potreboval na zistenie parneho cisla externu kniznicu?

Kód: Vybrať všetko

const isEven = (num) => {
	return num % 2 === 0 ? true : false;
}
komplikovanejsie je ak chces zistit ci je neparne:

Kód: Vybrať všetko

const isOdd = (num) => {
    if (Number.isInteger(num)) {
        return num % 2 === 0 ? false : true;
    }
    return undefined;
}
stale je to funkcia na par riadkov ktoru dokaze napisat hadam kazdy stredoskolak, preco na to treba externu kniznicu?
harrison314
Hardcore addict
Hardcore addict
Používateľov profilový obrázok
Príspevky: 8306
Registrovaný: 27 máj 2009, 20:42
Bydlisko: Bratislava
Kontaktovať používateľa:

Re: Najpoužívanejší programovací jazyk?

Príspevok od používateľa harrison314 »

No len to prve ti nebude fungovat vzdy (Nan, das tam string, pole cokolvek a ono to vrati nejaky vysledok). To druhe lepsie, ale prave neviem co sa stane, ked tam das desatinne cislo alebo NaN, porpipade null.

A na tom kode si aj ukazal ta vec co mi vadi a ze do toho presakuju tie stare nuancy javascriptu. V normalnom jazyku by si napisal funkiu. v modernom javascripte musis spravit konstantu, do ktorej ulozis lambdu. A robi sa to prave kvoli problemom s this a tym, ze kazdu funkciu vies prepisat.
aacid
Hardcore addict
Hardcore addict
Príspevky: 8160
Registrovaný: 22 nov 2006, 21:55
Bydlisko: BA

Re: Najpoužívanejší programovací jazyk?

Príspevok od používateľa aacid »

pokial to mas otypovane tak ti IDE vyhodi error ze tam davas nieco ine ako number.
a teda je predsa trivialne do prvej funkcie pridat podmienku z druhej funkcie a mas vybavene vsetky krajne pripady, pretoze desatinne cislo, NaN ani null nie je integer.
takze nie, na zistenie ci je cislo parne ozaj nepotrebujes externu kniznicu, stacia ti 3 riadky kodu.

co je podla teba normalny jazyk? iba c# a java? haskell je nenormalny? lisp? f#? elixir?
za mna je to najvacsia vyhoda javascriptu, ze ta vedie smerom k funkcnemu programovaniu. funkcie su "first class citizens".
a teda samozrejme nic ti nebrani ani v modernom javascripte pouzivat klasicky zapis function isEven() {}. ja preferujem arrow functions ak sa da.
Spixy
Professional
Professional
Používateľov profilový obrázok
Príspevky: 1334
Registrovaný: 24 okt 2010, 12:52

Re: Najpoužívanejší programovací jazyk?

Príspevok od používateľa Spixy »

> neni lepsie pokial dve funkciu beru rozne parametre aby mali aj 2 rozne mena?
Ano, dá sa to tak obísť. Ale ako overloadneš konštruktor? Nijako. Musíš použiť static factory method. :roll:

> zatial to viditelne nebol problem.
Decimal je potrebný vo finančníctve, keď spravíš 0.33*0.33, JS ti vráti 0,10890000000000001 namiesto 0,1089 (pri centoch je ti to jedno, pri milionoch € už nie)
hej a TypeOrm mapuje SQL typ decimal na string :roll:

Ten JSDoc nepraktický v lokálnych premenných, namiesto

Kód: Vybrať všetko

const x: MyClass = getAbcd();

Kód: Vybrať všetko

/**
 * @type {MyClass}
 */
const x = getAbcd();
Aj vo funkciách a classach to zaberá strašne veľa miesta.
A čo keď má kolega nejaký Vim ktorý mu tie chyby nezobrazí? Pushne do gitu zlý kód, CI to zrejme neodhalí, PR sa mergne a už máš zlý kód niekde v obehu. :roll:

> this: to uz x rokov nikto nepouziva odkedy su v javascripte closures a promises
> faktom ale je ze nikto dnes v javascripte nepouziva "==" na porovnavanie, pouziva sa "==="
k obom mám dole pekný screenshot :roll:
Prílohy
this.jpg
this.jpg (11.44 KiB) 11439 zobrazení
eqeq.jpg
harrison314
Hardcore addict
Hardcore addict
Používateľov profilový obrázok
Príspevky: 8306
Registrovaný: 27 máj 2009, 20:42
Bydlisko: Bratislava
Kontaktovať používateľa:

Re: Najpoužívanejší programovací jazyk?

Príspevok od používateľa harrison314 »

aacid napísal: 13 feb 2024, 14:43 za mna je to najvacsia vyhoda javascriptu, ze ta vedie smerom k funkcnemu programovaniu. funkcie su "first class citizens".
Prave to si nemyslim (FP sa stalo buzzword, ale malokto ho realne robi). Ja to nazyvam funcional-lika programovanie. To, ze su funkcie "first class citizens" este nic neznamena (ma ich aj take PHP 5 a tam malokto hovori o funkcionanom programovani, ale to asi pre to, ze ma pouzitelne OOP), to co sa predvadza v javascripte je proceduralne programovanie s niektorymi prvkami funkcionalenho. Stale tomu chybaju tie elementarne zaklady funkcionalnych jazykov: hlavne curring, pattern-matching, pristup k side-efektom, monady, alebo to, ze kazde volanie funkcie vies nahradit jej vysledkom.

Ak si chces vyskusat ciste funkcionalne programovanie skus si Haskell, je to uplne iny svet ako "funkcionalne programovanie v javascripte". To som uz asi spominal.

Ja suhlasim, ze v javascripte sa da prisat dobre a cisto, ze sa da vedome vyhybat jeho pascam a podivnostiam. Ale malokto to robi (pre to vyzera npm ako vyzera) a pride mi, ze je to narocnejsie ako v mnohych inych jazykoch (pre to vznikol typescript, co sa snazi opravit co slo a v tej dobe vznikalo podobnych nastrojov vela a JS sa povazoval za ASM pre browsre).
aacid
Hardcore addict
Hardcore addict
Príspevky: 8160
Registrovaný: 22 nov 2006, 21:55
Bydlisko: BA

Re: Najpoužívanejší programovací jazyk?

Príspevok od používateľa aacid »

myslim ze kazdy jazyk ma svoje idealne/optimalne pouzitie. javascript nie je OOP (to k tomu overloadovaniu konstruktov, nepouzivas classy, nepotrebujes overloadovat konstruktor :D), javascript tiez nie je zrovna najidealnejsi jazyk na ERP ci financnictvo.
ale na web development naopak nemas nic lepsie. a potom uz ide iba o skalovanie. pokial mas komplexnu appku tak urcite typescript, pokial robit jednoduchy web kde bude tak maximalne CRUD v backende tak s javascriptom nie ze nic nepokazis ale este si usestris kopu roboty.

Spixy napísal: 13 feb 2024, 19:44A čo keď má kolega nejaký Vim ktorý mu tie chyby nezobrazí? Pushne do gitu zlý kód, CI to zrejme neodhalí, PR sa mergne a už máš zlý kód niekde v obehu. :roll:
toto je vtip?
pokial pracujes v interpretovanom jazyku ktory sa nekompiluje, nepouzivas ziadne lintery ci codechecky a rovno pushujes do produkcie tak je problem niekde uplne inde ako v jazyku ktory si si vybral.
Napísať odpoveď