ComputerWorld - Programski jezik COBOL je dopolnil petdeset let. Daljnega leta 1959 ga je začela razvijati Grace Hopper, častnica ameriške mornarice. Njena ideja je bila zasnovati jezik, v katerem bi lahko programirali v psevdoangleščini namesto v strojni kodi ali zbirniku, kot je bilo tedaj običajno. Kljub svoji starosti pa COBOL še zdaleč ni za odmet. Še vedno poganja na milijone bančnih avtomatov po svetu, v njej je napisanih tri četrtine poslovnih programov itd. Ocenjujejo, da je trenutno v uporabi 200 milijard vrstic kode v COBOL-u, vsak dan pa dobimo na stotine novih. Znanje COBOL-a naj bi bilo eno izmed varnejših znanj v računalniški branži, saj nudi najvarnejša delovna mesta.
Vse najboljše, COBOL!
Novice » Znanost in tehnologija » Petdeset let COBOL-a
WhiteAngel ::
No, Cobol je bolj ali manj mrtev. Glede na to, da so letališke in bančne sisteme končno prenesli na Javo in da na IBMovih mainframeih teče v redu Java z namenskimi procesorji, ne vidim razloga, zakaj najemati drage Cobolove programerje za nadaljnji razvoj ...
Poldi112 ::
>No, Cobol je bolj ali manj mrtev. Glede na to, da so letališke in bančne sisteme končno prenesli na Javo i
A kar vse? Link?
A kar vse? Link?
Where all think alike, no one thinks very much.
Walter Lippmann, leta 1922, o predpogoju za demokracijo.
Walter Lippmann, leta 1922, o predpogoju za demokracijo.
krneki0001 ::
No, Cobol je bolj ali manj mrtev. Glede na to, da so letališke in bančne sisteme končno prenesli na Javo in da na IBMovih mainframeih teče v redu Java z namenskimi procesorji, ne vidim razloga, zakaj najemati drage Cobolove programerje za nadaljnji razvoj ...
Bla, bla, bla.
V javi so narejene obstranske zadeve, web servisi in stvari, ki tudi s ciklanjem in požrešnostjo ne morejo sesuti lpara na hostu. Java še vedno preveč požre in se zelo velikokrat zacikla, poleg tega Java nikoli ne obdela 4 miljone vrstic ter jih zapiše v bazo v parih sekundah na ZOs sistemu, kar pa s cobolom z lahkoto dosežeš. Je pa zelo zelo uporabna za web servise, ker tega cobol ne podpira.
Ampak to ni selitev iz cobola na javo, to je dodatna podpora.
Drugače pa navaden C tudi deluje na hostih in je tudi mnogo hitrejši od jave.
Ni pa tu nobenih namenskih procesorjev. Je samo linux za ZOs, ki deluje na hostu in v njem potem teče tako perl, kot java in c, pa še kaj drugega se da gor spravit (ruby recimo).
Zakaj dragi cobol programerji?
Zato, ker znamo delat na tak način in si ne zbijamo cene s tem, ko se pogajamo za ceno 15 evrov na uro za delo java programerja. Java programerji si sami zbijate ceno, ko spuščate cene delovnih ur. Še malo pa boste zastonj delali. Mi si vsaj upamo rečt, da nas potrebujejo, ker nas je malo in si s tem višamo ceno, namesto vas, java programerjev, pa že v vrsti čakajo drugi, ki se bodo še bolj ponižali in delali še za nižjo ceno. Sami sebi pljuvate v skledo, pol boste pa jokali kok ste slabo plačani.
driver_x ::
V zadnjem času se večina poslovnih aplikacij piše v Javi in tudi večina aplikacijskih strežnikov so Java EE strežniki. C je lahko mogoče malenkost hitrejši od Jave, ampak večino časa se itak pri vseh programih izvajajo funkcije OS-a, "OS" pri Javi je JVM, ki pa je prav tako napisan v C-ju.
noraguta ::
V zadnjem času se večina poslovnih aplikacij piše v Javi in tudi večina aplikacijskih strežnikov so Java EE strežniki. C je lahko mogoče malenkost hitrejši od Jave, ampak večino časa se itak pri vseh programih izvajajo funkcije OS-a, "OS" pri Javi je JVM, ki pa je prav tako napisan v C-ju.
kar pa ne pomen , da stare stvari če delajo mečejo stran. v cobolu in fortranu je še vedno precej stvari mimo katerih se preprosto ne splača.
Pust' ot pobyedy k pobyedye vyedyot!
jype ::
nebivedu> Drugače pa navaden C tudi deluje na hostih in je tudi mnogo hitrejši od jave.
Nope, ne drži.
Nope, ne drži.
3p ::
nebivedu> Drugače pa navaden C tudi deluje na hostih in je tudi mnogo hitrejši od jave.
Nope, ne drži.
Zanimivo res, kako se drži mit, da so java in .net in ostali "interpretirani" (v narekovajih ker ni res) jeziki počasni. So bili nekoč. Mogoče so še, če za kake specialne namene - ki pa so daleč od poslovnih aplikacij.
Pa da ne bom samo offtopic. Mogoče pa ne bi bilo slabo dati Cobola na vrh seznama "naslednji jezik, ki se ga bom naučil". Samo kdo bi potem kravato nosil v službo na banko. ;)
Zgodovina sprememb…
- spremenilo: 3p ()
krneki0001 ::
C ali pa cobol sta v batch-u mnogo hitrejša od jave, še posebej ko gre za obdelave mase podatkov (miljoni vrstic podatkov, ki se obdelujejo vsako noč na bankah).
In tukaj jype, trdim, da java ne deluje tako hitro kot c ali cobol. To govorim za batch. Za kliente in ostalo ne, ker tam cobol nima kaj iskat. Klient mora biti narejen v čem drugem, že zaradi grafike.
In tukaj jype, trdim, da java ne deluje tako hitro kot c ali cobol. To govorim za batch. Za kliente in ostalo ne, ker tam cobol nima kaj iskat. Klient mora biti narejen v čem drugem, že zaradi grafike.
Dragi ::
Kokr jst vem je java počasna sam pri prvem izvajanju, večkrat kot ponavljaš eno kodo, hitrej se izvaja zaradi cache-nja.
krneki0001 ::
Angel478
Ko imaš enkrat 10 miljonov vrstic podatkov za obdelat, ti cache nič več ne pomaga. Za take količine podatkov se uporablja cobol, ne java.
Ko imaš enkrat 10 miljonov vrstic podatkov za obdelat, ti cache nič več ne pomaga. Za take količine podatkov se uporablja cobol, ne java.
3p ::
Prodajate buče. Kaki cache, ob prvem izvajanju se javanska koda komaj prevede in je izvajalni čas pač podaljšan za čas prevajanja.
In če misliš, da se pri neki "batch" obdelavi (ki najbrž itak samo intenzivno po bazah brska in kake cifre premetava) Cobol toliko bolje obnese... no, da se lepo izrazim, bi rad videl to kodo.
In če misliš, da se pri neki "batch" obdelavi (ki najbrž itak samo intenzivno po bazah brska in kake cifre premetava) Cobol toliko bolje obnese... no, da se lepo izrazim, bi rad videl to kodo.
driver_x ::
Jaz sem pa vedno imel občutek, da se zahtevnejše obdelave izvajajo na SUBP.
Drugače pa ne metati Jave in C-ja v isti koš, saj sta namenjena vsak svojemu področju. Tako kot se sistemskih zadev ne piše v Javi, je tudi pisanje poslovnih aplikacij v C-ju neumnost. Pri vsem skupaj je zelo pomembno tudi vzdrževanje kode. V Javi se je mogoče enostavno izogniti vsem sistemskim zadevam in se lahko osredotočaš le na poslovno logiko. Koda je zaradi tega preglednejša in enostavnejša za vzdrževanje. Nižja cena Java programerjev pomeni samo dodatno prednost Jave pred Cobolom.
Drugače pa ne metati Jave in C-ja v isti koš, saj sta namenjena vsak svojemu področju. Tako kot se sistemskih zadev ne piše v Javi, je tudi pisanje poslovnih aplikacij v C-ju neumnost. Pri vsem skupaj je zelo pomembno tudi vzdrževanje kode. V Javi se je mogoče enostavno izogniti vsem sistemskim zadevam in se lahko osredotočaš le na poslovno logiko. Koda je zaradi tega preglednejša in enostavnejša za vzdrževanje. Nižja cena Java programerjev pomeni samo dodatno prednost Jave pred Cobolom.
driver_x ::
@nebivedu: "The use of COBOL cripples the mind; its teaching should, therefore, be regarded as a criminal offense." je rekel Edsger Dijkstra. Tako da če obvladaš Cobol ...
joebanana ::
Dijkstra je car. Ve kaj govori. :) Sam dejstvo pa je, da je velik COBOLa zabetoniranga v poslovnem svetu in še dolgo bo, kljub temu da je po mojem skromnem mnenju nadomestljiv.
Zgodovina sprememb…
- spremenil: joebanana ()
driver_x ::
V poslovnem svetu ni pomembno, kaj je tehnično boljše (pa s tem ne mislim, da je Cobol slabši od česar koli), ampak se bolj gleda na koristi, ki jih nakup ali zamenjava kakšne zadeve prinaša.
jlpktnst ::
Java je zelo hitra, edino veliko pomnilnika žre če ne paziš. Pa tudi če paziš je včasih lahko težava.
Glede cobola pa, kje bi se človek to lahko naučil?
Glede cobola pa, kje bi se človek to lahko naučil?
Liker ::
Java je "zelo hitra"...
Dejstvo je da je Java hitrejša od interpreterjev in podobnega sranja, proti C/C++ pa je še vedno kot izmučeno kljuse. Sploh poraba spomina je zelo zanimiva :)
Dejstvo je da je Java hitrejša od interpreterjev in podobnega sranja, proti C/C++ pa je še vedno kot izmučeno kljuse. Sploh poraba spomina je zelo zanimiva :)
krneki0001 ::
Vi kar po svoje, tukaj smo to sprobali in na ZOs v batchu java še dolgo ne bo dohitela cobola po hitrosti za premetavanje podatkov. Za kliente (aplikacije za vnos podatkov in ostalo) pa je java bolj primerna.
FireSnake ::
Zakaj dragi cobol programerji?
Zato, ker znamo delat na tak način in si ne zbijamo cene s tem, ko se pogajamo za ceno 15 evrov na uro za delo java programerja. Java programerji si sami zbijate ceno, ko spuščate cene delovnih ur. Še malo pa boste zastonj delali. Mi si vsaj upamo rečt, da nas potrebujejo, ker nas je malo in si s tem višamo ceno, namesto vas, java programerjev, pa že v vrsti čakajo drugi, ki se bodo še bolj ponižali in delali še za nižjo ceno. Sami sebi pljuvate v skledo, pol boste pa jokali kok ste slabo plačani.
Tule bi se strinjal, ampak le deloma; problem je v tem, da je tole kar vsesplosna slika. Ne samo pri programerjih, ampak pri vseh tehnikih.
Dam roko v ogenj, da se najbolj gnil ekonomist zna prodat bolje, kot nadpovprecen tehnik. in to je nasa "bolezen".
Kdo dejansko nekaj proizvede? Vemo! Kdo pa s tem mastno sluzi? Ekonomisti!
Zdaj, zakaj je temu tako .... na to vprasanje verjetno ni tako preprostega odgovora. Mi se ubadamo s tem, kako bomo nekaj naredili oni pa s tem, kako bodo zadevo prodali in zraven se mastno pokasirali.
Na koncu pa nam vrzejo v brk, da smo strosek (in to me resno JEZI!!!!).
Bo treba spremenit miselnost? Ja, ce bi jo spremenili ze pred 15timi leti bi bilo prepozno, tako pa se kar cakamo.
EDIT: Aja, kar se tice jave VS C/C++ (v smislu hitrosti) tu Java nima niti za burek.
Poglej in se nasmej: vicmaher.si
Zgodovina sprememb…
- spremenilo: FireSnake ()
driver_x ::
@nebivedu: na koncu te to privede do tega, da računaš kaj se bolj splača: dat nekaj več denarja za strojno opremo, kar je enkraten strošek ali plačevati dragega cobol programerja.
FireSnake: se strinjam.
FireSnake: se strinjam.
Zgodovina sprememb…
- spremenil: driver_x ()
noraguta ::
Vi kar po svoje, tukaj smo to sprobali in na ZOs v batchu java še dolgo ne bo dohitela cobola po hitrosti za premetavanje podatkov. Za kliente (aplikacije za vnos podatkov in ostalo) pa je java bolj primerna.
mogoče tudi tu leži del problema, obstoječ optimiziran sistem doštukat , ali iti na povsem novo "pizdarijo" kjer boš še enkrat preboleval mumps , ošpice , škrlatinko ... . že samo premetavanje med seriesi lahko bistveno poslabša performance.
Pust' ot pobyedy k pobyedye vyedyot!
Matako ::
Oho, čas, da obrišemo prah s starih šal ;)
- Kako se imenuje OO verzija COBOLa, konkurenca C++?
- ADD 1 TO COBOL GIVING COBOL
XD
- Kako se imenuje OO verzija COBOLa, konkurenca C++?
- ADD 1 TO COBOL GIVING COBOL
XD
/\/\.K.
Zgodovina sprememb…
- spremenil: Matako ()
l0g1t3ch ::
Jaz rajši več računam pa malo delam kot obratno. Dolgo časa je blo tud mene kar nekako sram rečt za pošten denar ko sm folku rihtal kompe in popravljal napake za njihovimi neumnostmi. Sedaj sm se pa odvadil tega.
noraguta ::
EDIT: Aja, kar se tice jave VS C/C++ (v smislu hitrosti) tu Java nima niti za burek.
:~) samo , da ne obstaja niti 1% toliko nerodnih programerjev kot v c++u. za igre je c++ dober , še kaj sistemskega gre čez, potem se pa njegov domet konča.
Pust' ot pobyedy k pobyedye vyedyot!
modicr ::
Zivjo!
Mišo Alkalaj je napisal učbenik za srednjo šolo:
COBOL, Ljubljana : PIS za elektrotehniško in računalniško usmeritev, 1985
http://cobiss.izum.si/scripts/cobiss?co...
in priročnik za Delto:
COBOL, Ljubljana : Računalniški sistemi Delta, 1982
http://cobiss.izum.si/scripts/cobiss?co...
Lp, Roman
Glede cobola pa, kje bi se človek to lahko naučil?
Mišo Alkalaj je napisal učbenik za srednjo šolo:
COBOL, Ljubljana : PIS za elektrotehniško in računalniško usmeritev, 1985
http://cobiss.izum.si/scripts/cobiss?co...
in priročnik za Delto:
COBOL, Ljubljana : Računalniški sistemi Delta, 1982
http://cobiss.izum.si/scripts/cobiss?co...
Lp, Roman
(c) nisem patentiran
Zgodovina sprememb…
- spremenil: modicr ()
Matako ::
Stare COBOL modrosti:
Pravijo, da je admiralka G. M. Hopper, izumiteljica COBOLA imela načrt narediti programski jezik, ki bi v "razumel angleško". Kmalu je prešla na Plan B: jezik, ki bi ga saj razumeli ljudje, ki znajo angleško.
EDIT. spol G.M. Hopper
XD
-
Pravijo, da je admiralka G. M. Hopper, izumiteljica COBOLA imela načrt narediti programski jezik, ki bi v "razumel angleško". Kmalu je prešla na Plan B: jezik, ki bi ga saj razumeli ljudje, ki znajo angleško.
EDIT. spol G.M. Hopper
XD
-
/\/\.K.
Zgodovina sprememb…
- spremenil: Matako ()
Matako ::
COBOL realnost Hladne vojne:
"Dejstvo je, da ne bomo vsi mogli delati simulacij atomskih bomb - hočeš-nočeš se bodo nekateri morali zajeb***** s programi v COBOLu."
XD
"Dejstvo je, da ne bomo vsi mogli delati simulacij atomskih bomb - hočeš-nočeš se bodo nekateri morali zajeb***** s programi v COBOLu."
XD
/\/\.K.
Zgodovina sprememb…
- spremenil: Matako ()
Matako ::
In še...
"Ne vem, kako se bo imenoval programski jezik velikih poslovnih sistemov 21. stoletja, ampak bojim se, da bo imel IDENTIFICATION DIVISION!"
XD
"Ne vem, kako se bo imenoval programski jezik velikih poslovnih sistemov 21. stoletja, ampak bojim se, da bo imel IDENTIFICATION DIVISION!"
XD
/\/\.K.
Zgodovina sprememb…
- spremenil: Matako ()
krneki0001 ::
ne, ne imel bo še vedno "WORKING STORAGE", pa še vedno bo najbolj kompleksna zadeva stavek CASE.
No ja, nekateri znamo programirat še v COBOL XT jeziku. Tam pa ne moreš if stavka v drugem if stavku tvorit, ker tega še ne pozna.
Sicer pa se v nekaterih zadevah še z asemblerjem igramo (tudi to znamo).
No ja, nekateri znamo programirat še v COBOL XT jeziku. Tam pa ne moreš if stavka v drugem if stavku tvorit, ker tega še ne pozna.
Sicer pa se v nekaterih zadevah še z asemblerjem igramo (tudi to znamo).
krho ::
@Dr. Palm: AFIK je COBOL že kar nekaj časa nazaj Zamenjal Visual Basic. Nekako 2-3 leta nazaj pa VB.NET, s tem, da se še vedno uči traparije iz VB6 in nič novega kar je prinesel .NET.
si.Mail odprto-kodni odjemalec elektronske pošte. - http://www.simail.si
Uredite si svojo zbirko filmov, serij in iger - http://xcollect.sf.net
Uredite si svojo zbirko filmov, serij in iger - http://xcollect.sf.net
modicr ::
Mislim, da poučujejo Cobol na FOVu v Kranju... Od tam imam nekatere sodelavce...
http://www1.fov.uni-mb.si/programiranje/
Iz programskega jezika Cobol-a ni mogoče več opravljati izpita, pač pa le v programskem okolju Visual Basic 6.0 oziroma VB 2005.
(c) nisem patentiran
krneki0001 ::
Java je pogosto hitrejša od C pri premetavanju številk, smo že pokazali na tem forumu.
Kakšnega reda vrstic teh številk? 10, 100, miljon, 100 miljonov vrstic?
modicr ::
Tule še primerjava "COBOL for .net" in C#: http://nerds-central.blogspot.com/2009/...
$set sourceformat(free) 01 bottles binary-long. 01 bottle-word string. 01 count-word string. perform varying bottles from 99 by -1 until count-word equals "No" evaluate bottles when 0 move "No" to count-word move "bottles" to bottle-word when 1 move bottles to count-word move "bottle" to bottle-word when 2 thru 99 move bottles to count-word move "bottles" to bottle-word end-evaluate if bottles not equals 99 then display "Take one down and pass it around, " count-word::"ToLower"() " more " bottle-word " of beer on the wall." end-if display count-word " " bottle-word " of beer on the wall, " count-word::"ToLower"() " " bottle-word " of beer." end-perform display "Go to the store and buy some more, 99 bottles of beer on the wall."_____________________________________________
using System; namespace ConsoleApplication11 { class Program { static void Main(string[] args) { Program p = new Program(); p.sing(); } public void sing() { int bottles; string bottleWord = ""; string countWord = "" ; for (bottles = 99; countWord != "No"; --bottles) { switch(bottles) { case 0: countWord = "No"; bottleWord = "Bottles"; break; case 1: countWord = bottles.ToString(); bottleWord = "Bottle"; break; default: countWord = bottles.ToString(); bottleWord = "Bottles"; break; } if (bottles != 99) { Console.WriteLine("Take one down and pass it around, " + countWord.ToLower() + " more " + bottleWord + " of beer on the wall."); } Console.WriteLine(countWord + " " + bottleWord + " of beer on the wall, " + countWord.ToLower() + " " + bottleWord + " of beer."); } } } }
(c) nisem patentiran
Zgodovina sprememb…
- spremenil: modicr ()
MrStein ::
Liker:
Ta test pravi, da je Java do 3 krat (zaokroženo) počasnejša od C++; C pa je do 10 krat počasnejša od C++.
Torej je Java 3 krat hitrejša od C?
A vzamemo ta "test" kot referenco?
You tell me.
Java je "zelo hitra"...
Dejstvo je da je Java hitrejša od interpreterjev in podobnega sranja, proti C/C++ pa je še vedno kot izmučeno kljuse. Sploh poraba spomina je zelo zanimiva :)
Ta test pravi, da je Java do 3 krat (zaokroženo) počasnejša od C++; C pa je do 10 krat počasnejša od C++.
Torej je Java 3 krat hitrejša od C?
A vzamemo ta "test" kot referenco?
You tell me.
Motiti se je človeško.
Motiti se pogosto je neumno.
Vztrajati pri zmoti je... oh, pozdravljen!
Motiti se pogosto je neumno.
Vztrajati pri zmoti je... oh, pozdravljen!
jype ::
nebivedu> Kakšnega reda vrstic teh številk? 10, 100, miljon, 100 miljonov vrstic?
Zakaj naj bi pa to bilo pomembno? Vsako številko premelje hitreje kot C.
Mislim, da je pri sto milijonov bila hitrejša za 10-15%.
Seveda ne zaradi česarkoli "magičnega" - v tem primeru je bilo zaradi manj bolane optimizacije prevajalnika.
Dejstvo je, da pri veliki količini podatkov potrebuješ čimbolj optimizirane in tesne zanke, s čimer Java nima nikakršnih problemov.
Zakaj naj bi pa to bilo pomembno? Vsako številko premelje hitreje kot C.
Mislim, da je pri sto milijonov bila hitrejša za 10-15%.
Seveda ne zaradi česarkoli "magičnega" - v tem primeru je bilo zaradi manj bolane optimizacije prevajalnika.
Dejstvo je, da pri veliki količini podatkov potrebuješ čimbolj optimizirane in tesne zanke, s čimer Java nima nikakršnih problemov.
driver_x ::
Taki testi ti povejo le, da je nek jezik hitrejši v tem testu. Kaj sploh povprečen program počne? 70-80% časa kliče funkcije operacijskega sistema. Java ima bogat API, ki je del JVM-ja, JVM pa je napisan v čem?
Sicer pa je prednost Jave v poslovnih aplikacijah, kjer tudi zelo prevladuje. V poslovnih aplikacijah pa je pomembno tudi ali predvsem to, kako hitro in učinkovito tako aplikacijo napišeš ter vzdržuješ. Obdelave podatkov pa v takih primerih itak prepustiš podatkovnemu strežniku, ki je bolje optimiran za tovrstne naloge.
Sicer pa je prednost Jave v poslovnih aplikacijah, kjer tudi zelo prevladuje. V poslovnih aplikacijah pa je pomembno tudi ali predvsem to, kako hitro in učinkovito tako aplikacijo napišeš ter vzdržuješ. Obdelave podatkov pa v takih primerih itak prepustiš podatkovnemu strežniku, ki je bolje optimiran za tovrstne naloge.
krneki0001 ::
Popravljena verzija, še malo manj vrstic. Mislim očitno tudi geeki nimajo več dost pojma o cobolu.
$set sourceformat(free) 01 bottles binary-long. 01 bottle-word string value "bottles". 01 count-word string. perform varying bottles from 99 by -1 until bottles < 0 if bottles = 0 move "No" to count-word else move bottles to count-word end-if if bottles = 1 move "bottle" to bottle-word end-if if bottles not equals 99 then display "Take one down and pass it around, " count-word::"ToLower"() " more " bottle-word " of beer on the wall." end-if display count-word " " bottle-word " of beer on the wall, " count-word::"ToLower"() " " bottle-word " of beer." end-perform display "Go to the store and buy some more, 99 bottles of beer on the wall."
Zgodovina sprememb…
- spremenilo: krneki0001 ()
Matako ::
Ta COBOL je ko en zombi - bolj ga tolčeš z lopato, bolj leze iz groba :(
/\/\.K.
Zgodovina sprememb…
- spremenil: Matako ()
MrStein ::
Sem zdaj pogledal še kodo na oni igri benchmarkov, namreč test binary-trees v C(++) in Java.
- program (algoritem) sam je nekaj čemu jaz rečem, oprostite na izrazu, bulšit-benčmark. To je program, ki dejansko nima skoraj nič smisla. Posebej v tem primeru. Nekaj računa in dejansko izpljune nek rezultat (bonus, ker bi lahko celo brez tega bil). Ampak večino časa porabi za bedarije. Program, ki vrne enak rezultat bi lahko napisal, da deluje 100 krat hitreje. V bash skripti.
- C in C++ verziji sta večnitni (CPU je 4 jedrni), Java pa enonitna, pa je vseeno Java le 3 krat počasnejša. Torej je ena nit dejansko v Javi hitrejša za okoli 20-30%.
- C in C++ verziji uporabljata posebne knjižnice za alokacijo objektov oz. pomnlnika, Java pa "brute force", torej standard
Ta konkretni benchmark game je seveda zanimiv, a pove več o sposobnosti programerjev, ki so teste napisali, kot pa o možnostih jezika.
Bi celo sam sodeloval, če bi imel čas.
- program (algoritem) sam je nekaj čemu jaz rečem, oprostite na izrazu, bulšit-benčmark. To je program, ki dejansko nima skoraj nič smisla. Posebej v tem primeru. Nekaj računa in dejansko izpljune nek rezultat (bonus, ker bi lahko celo brez tega bil). Ampak večino časa porabi za bedarije. Program, ki vrne enak rezultat bi lahko napisal, da deluje 100 krat hitreje. V bash skripti.
- C in C++ verziji sta večnitni (CPU je 4 jedrni), Java pa enonitna, pa je vseeno Java le 3 krat počasnejša. Torej je ena nit dejansko v Javi hitrejša za okoli 20-30%.
- C in C++ verziji uporabljata posebne knjižnice za alokacijo objektov oz. pomnlnika, Java pa "brute force", torej standard
Ta konkretni benchmark game je seveda zanimiv, a pove več o sposobnosti programerjev, ki so teste napisali, kot pa o možnostih jezika.
Bi celo sam sodeloval, če bi imel čas.
Motiti se je človeško.
Motiti se pogosto je neumno.
Vztrajati pri zmoti je... oh, pozdravljen!
Motiti se pogosto je neumno.
Vztrajati pri zmoti je... oh, pozdravljen!
Matako ::
Kdo pravi, da je COBOL zastarel?! Evo, tukaj je moderen COBOL Web framework - Cobol on Cogs. Beat that, Java!
/\/\.K.
Zgodovina sprememb…
- spremenil: Matako ()
noraguta ::
Sem zdaj pogledal še kodo na oni igri benchmarkov, namreč test binary-trees v C(++) in Java.
- program (algoritem) sam je nekaj čemu jaz rečem, oprostite na izrazu, bulšit-benčmark. To je program, ki dejansko nima skoraj nič smisla. Posebej v tem primeru. Nekaj računa in dejansko izpljune nek rezultat (bonus, ker bi lahko celo brez tega bil). Ampak večino časa porabi za bedarije. Program, ki vrne enak rezultat bi lahko napisal, da deluje 100 krat hitreje. V bash skripti.
- C in C++ verziji sta večnitni (CPU je 4 jedrni), Java pa enonitna, pa je vseeno Java le 3 krat počasnejša. Torej je ena nit dejansko v Javi hitrejša za okoli 20-30%.
- C in C++ verziji uporabljata posebne knjižnice za alokacijo objektov oz. pomnlnika, Java pa "brute force", torej standard
Ta konkretni benchmark game je seveda zanimiv, a pove več o sposobnosti programerjev, ki so teste napisali, kot pa o možnostih jezika.
Bi celo sam sodeloval, če bi imel čas.
maš point plus tega , ima za svoje containerja java že optimizirane algoritme.
sicer pa kako zastarel je c++ se vidi na tem primeru
http://shootout.alioth.debian.org/u32/b...
Pust' ot pobyedy k pobyedye vyedyot!
kopernik ::
Vi kar po svoje, tukaj smo to sprobali in na ZOs v batchu java še dolgo ne bo dohitela cobola po hitrosti za premetavanje podatkov. Za kliente (aplikacije za vnos podatkov in ostalo) pa je java bolj primerna.
Pri batch obdelavah (recimo več deset milijonov izračunov) lahko že majhna nerodnost privede do 10x podaljšanja časa obdelave. Si prepričan, da ste pri vas enako vešči v Javi kot v Cobolu ? Kar tako na slepo težko verjamem, da razne kombinacije osnovnih matematičnih operacij (seštevanje, odštevanje, množenje in deljenje) prinesejo neko veliko razliko med dvema implementacijama jezikov. En primer, kako lahko nepoznavanje jezika postavi primerjavo pod vprašaj : C vs. Haskell
krneki0001 ::
Vzemimo datoteko veliko 4 miljone vrstic. Vse kar rabimo je samo to da preberemo vrstico in jo zapišemo v tabelo. Torej par zelo preprostih stvari:
- obprtje datoteke
- branje vrstic
- pisanje v bazo/ažuriranje baze, če vrstica že obstaja
- komit na 1000 komadov
- zaprtje datoteke.
- končni komit nad bazo
Koliko časa potrebuje za kaj takega java, koliko c, koliko c++, koliko ruby in koliko cobol?
Moj program (napisan v cobolu) tole dela vsak dan in dela vse skupaj od štarta do konca celih 15 sekund. Zapisov je pa malo manj, samo 3,56 miljona vrstic s po 980 znaki na vrstico, kar mora program napolnit v različnih 64 polj v tabeli.
- obprtje datoteke
- branje vrstic
- pisanje v bazo/ažuriranje baze, če vrstica že obstaja
- komit na 1000 komadov
- zaprtje datoteke.
- končni komit nad bazo
Koliko časa potrebuje za kaj takega java, koliko c, koliko c++, koliko ruby in koliko cobol?
Moj program (napisan v cobolu) tole dela vsak dan in dela vse skupaj od štarta do konca celih 15 sekund. Zapisov je pa malo manj, samo 3,56 miljona vrstic s po 980 znaki na vrstico, kar mora program napolnit v različnih 64 polj v tabeli.
Zgodovina sprememb…
- spremenilo: krneki0001 ()
Vredno ogleda ...
Tema | Ogledi | Zadnje sporočilo | |
---|---|---|---|
Tema | Ogledi | Zadnje sporočilo | |
» | COBOL še vedno v dobri kondicijiOddelek: Novice / Ostala programska oprema | 9631 (6215) | Apple |
» | COBOL še vedno poganja precej bančnih sistemovOddelek: Novice / Ostala programska oprema | 11484 (8700) | trstenjak |
» | Letališča poganja Windows 3.1, vesoljsko sondo Voyager pa Fortran (strani: 1 2 )Oddelek: Novice / Znanost in tehnologija | 17050 (12873) | krneki0001 |
» | Petdeset let COBOL-a (strani: 1 2 3 )Oddelek: Novice / Znanost in tehnologija | 13506 (10724) | tony1 |