Gå til innhold

Hvilket språk skriver dere?


Gjest Slettet-YQ8U8xbZ

Anbefalte innlegg

Det finnes nokre cases der f.eks Erlang er betre, f.eks skalerbarheit på mange CPU kjerner. Men! Med ein arkitekturendring der du f.eks tar i bruk message queues, så har du løyst det problemet med tradisjonelle verktøy.

 

Og skal du f.eks utvikle noko som skal bruke win32 API'et så er nok C# eit betre val.

 

Det er vanleg å ta ein analyse over korleis oppgåva skal løyast, men at man må lære seg eit nytt språk er ofte tull.

 

For å ta eit vanskelegare spørsmål, la oss si du skal jobbe med dataanalyse, der målet er å levere ein rapport ut i frå eit datasett på 50GB kvar morgen. F#, R, Python, C?

Truleg velje du det verktøyet du kan best. Men om du har eit team på fire med ein som kan F#, nummer to som kan R, nummer tre kan Python og sistemann kan C så trur eg dykk har mange timer med gode diskusjoner før dykk kjem i gong :)

Lenke til kommentar
Videoannonse
Annonse

Bruker primært bash, jinja, python, makefiles, ant (xml), php, SQL, SOAP, java m.m. og andre ting etter behov. Her relativt løst hva som defineres som et språk, men her er en håndfull av de teknologiene jeg benytter. Jobber ikke som utvikler så jeg beror ikke tungt på noe spesifikt høynivåspråk.

Endret av process
Lenke til kommentar

Men hvordan vet du at det løser oppgaven best om du ikke har kjennskap til andre løsninger?

 

 

The Blub Paradox:

 

Languages less powerful than Blub are obviously less powerful, because they're missing some feature he's used to. But when our hypothetical Blub programmer looks in the other direction, up the power continuum, he doesn't realize he's looking up. What he sees are merely weird languages. He probably considers them about equivalent in power to Blub, but with all this other hairy stuff thrown in as well. Blub is good enough for him, because he thinks in Blub.

 

 

http://paulgraham.com/avg.html

Lenke til kommentar

Og det har ca. ingenting å gjøre med posten min.

 

Mye av problemet med java er vel egentlig kulturen og ikke språket. Det er ikke nødvendig å skrive java som om det var eksempelkode for en forelesning om design patterns, det er bare vanlig.

  • Liker 1
Lenke til kommentar

Kommer nok litt ann på helhetsplanen, størrelse, og bruksområde. Men det er tre språk jeg er veldig komfortable med, Object Pascal (Delphi/FPC), Python, PHP. Fra tid til annen tukler jeg med C, men kun i sammenheng med Python.

Object Pascal: Har en veldig elegant og strukturert syntaks. Her fremmes en del av grunnene til at jeg nyter FPC/Delphi: http://www.pascal-central.com/compare.html ... Språket består av mye ord ovenfor masse merkelig tegnsetting slik som i C,C++, og flere andre språk.

Python: Stort standard bibliotek, stort community, lite kode stort resultat. Det meste du trenger har blitt laget av noen andre, så det er ikke mye arbied som må til.

PHP: (med HTML+JS) Flott hjelpemiddlel når en en skal lage en pen userinterface mot en database (akà en nettside).


Jeg tuker av og til med kildekode fra andre språk en det som er nevnt, men er slett ikke komfortabel med disse. Når jeg møter mer kompleks C++, Haskell, eller Java så spyr jeg, for å så vurdere selvmord.

For å nevne det, så er Java nr.1 på min liste i fæle populære språk.. "public static point myfunc() throws Exception {" ... like WTF? Skal alt det der til for å opprette en enkelte funksjoner?? Akkurat her, så synes jeg at Pascal er fantastisk.

Endret av warpie
Lenke til kommentar
For å ta eit vanskelegare spørsmål, la oss si du skal jobbe med dataanalyse, der målet er å levere ein rapport ut i frå eit datasett på 50GB kvar morgen. F#, R, Python, C?

Kompromiss.. Dropp F#, og R.. La C-glønten kode C, Python glønten kode Python.. bruke CTypes, CFFI, eller CPyExt for å kombinere koden fra C med Python-koden.

 

Hadde vi ikke hatt C i bildet, men f. eks Java.. Da blir det vel verre.

 

*Ta det ikke for seriøst, spøker litt*

Endret av warpie
Lenke til kommentar

Mangel på (elegante) mixins, for eksempel.

 

Dele implementasjon? Inheritance. Tight coupling.

Dele implementasjon? Field member og call forwarding. (ganske) Tight coupling.

 

Det der blir som å gneldre over at Python ikkje har støtte for interfaces. Det har ingen meining eller verdi. Og du begynner å høyre ut som ein C# utveklar.

 

At Java er verbose er eg einige med. Men totalt sett om du brukar ein god IDE, så blir Java noko heilt anna. IntelliJ gjer Java übermoderne.

Lenke til kommentar

Det der blir som å gneldre over at Python ikkje har støtte for interfaces. Det har ingen meining eller verdi. Og du begynner å høyre ut som ein C# utveklar.

Ikke helt. Java har egentlig ikke mange tilgjengelige konstruksjoner for å løse problemer. Det gjør at enkelte løsninger (der Java-style OOP) blir fryktelige, hvor en annen stil eller et annet paradigme hadde løst problemet nærmest trivielt.

 

At Java er verbose er eg einige med.

Det er vel noe som blir trukket frem som en feature. Jeg synes helt ærlig ikke det er det.

 

Men totalt sett om du brukar ein god IDE, så blir Java noko heilt anna. IntelliJ gjer Java übermoderne.

Det gjør IntelliJ moderne, ikke Java.
Lenke til kommentar

Styrken til Java ligger ikke i språket som sådan, men i økosystemet. Java er greit nok i seg selv, og hvis jeg plages veldig kan jeg velge scala, clojure eller groovy f.eks. isteden, og dra nytte av akkurat det samme økosystemet. Og, ja, jeg må forstatt kjøre på en JVM som er som den er, men wtf.

Lenke til kommentar

 

 

Men totalt sett om du brukar ein god IDE, så blir Java noko heilt anna. IntelliJ gjer Java übermoderne.

Det gjør IntelliJ moderne, ikke Java.

 

 

But what's the difference? Det er ingen som sitter med utelukkende vi og intet annet enn det som følger med i JDK'en i classpath uansett. Jeg innser at man må måle ett språk opp mot et annet for at verden skal gå framover, men det er og blir en akademisk øvelse ...

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...