Gå til innhold

Senteret for fri programvare mister all støtte


Anbefalte innlegg

Hvor langt unna de andre variantene av C er C#

Det sies at C er så veldig populært .

Dette høres da lit merkelig hvis det bare funger på Microsoft baserte systemer

 

Fri programvare er ofte kodet med fri programmeringsspråk hvis jeg har forstått det riktig

 

Det som er lit merkelig er at flere av disse språkene har en syntaks som kan være vanskelig å ha oversikt over i forhold til mere kjente programmeringsspråk ,

Eller tar jeg feil her ?

Både C og C# er da veldig kjente språk? Skal du ha jobb innenfor bransjen nå, så bør man gå for enten C# eller Java. Det er innenfor disse hvor mesteparten av stillingsannonsene legger seg. Våger meg kanskje på å si at disse to språkene står for mer enn 95% av alle stillingsannonser for programvareutviklere (.NET og Java altså)

 

C# har ikke egentlig så mye til felles med C utover syntaks. Det er mye likere Java, men det er også her blitt ganske store og vesentlige forskjeller.

Lenke til kommentar
Videoannonse
Annonse
Det er uansett irrelevant. Det jeg snakket om var at C# er åpent (ECMA-334)
Nå må du lese det jeg skriver da: https://www.diskusjon.no/index.php?showtopic=1444389&view=findpost&p=19434291 det er svært kjedelig å gjenta seg selv. Så må jeg be deg om å slutte å gjenta ting som ikke er sant. C# er verken fritt eller åpent.
Java er et bedritent programmeringsspråk sammenlignet med C#.
Det spørs vel hva du er ute etter.
Lenke til kommentar

Poenget mit var at veldig mange foretrekker programmeringsspråk med en relativt dårlig syntaks når det gjelder å ha oversikt over koden.

Der er C ( originalen) kjent for være lit dårlig

Mens pascal ,eller basic lit bedre ( da sammenligner jeg ikke på mulighetene)

 

greit nok at man blir vent til det , men driver man å skiter mellom flere spåk ( som jeg ikke gjør for det er lit kinkig å sette seg inn i alt ) så kan det virke lit komplisert og vanskelig

Endret av den andre elgen
Lenke til kommentar

Trekker du frem Pascal og BASIC fordi det kun er disse to du kan og er vant med, eller fordi du har argumenter for at disse faktisk har vesentlig enklere syntaks enn C-liknende språk?

Og hva mener du egentlig med BASIC? BASIC spenner over mange generasjoner, og har vanvittig mange dialekter som ikke egentlig likner så mye på hverandre. Og siste generasjon likner overhodet ikke på første generasjon.

 

Jeg har ikke vært borti noe Pascal, men av det jeg ser av kode rundt om kring så kan det virke som om det ikke er så veldig forskjellig fra VHDL som jeg har brukt en del (VHDL har sikkert lånt syntaks av Pascal). Min mening om VHDL er at det inneholder masse unødvendig tekst/ord som bare tar plass og roter til strukturen. Begin, end, then, og sikkert flere. Og jeg ser ingen hensikt med kolon foran likhetstegnet i uttrykket num := 0; når jeg er vant med et enkelt likhetstegn fra C.

For meg ser det faktisk ut som at Pascal og C er ganske likt hvis du bytter ut BEGIN END med { }, IF bool THEN med IF ( ), := med =, og = med ==. Om typenavnet på variabelen kommer før (int number) eller etter (number : Integer), er stort sett knekkende likegyldig for leseligheten (begge kan intenderes til å bli leselig).

 

Der er C ( originalen) kjent for være lit dårlig
Der tror jeg nesten du må henvise til en eller annen kilde. C og andre C-liknende språk (bortsett fra PHP) har vanligvis strikt syntaks som er kort og presis uten noe særlig form for tvil. Og det likner matematikk, som i mine øyne neppe kan være noen ulempe.

 

greit nok at man blir vent til det , men driver man å skiter mellom flere spåk ( som jeg ikke gjør for det er lit kinkig å sette seg inn i alt ) så kan det virke lit komplisert og vanskelig
Som sagt, så er det å bli vant til syntaksen i et språk vanligvis bare 10% av jobben med å lære seg språket. Etter at syntaksen er i boks skal man lære å utnytte språket på best mulig måte, og det er det som virkelig tar tid.

 

 

Skal du først trekke frem språk med syntaks som er enkel å lære ville jeg heller valg Python som eksempel. Så slipper vi all definering av blokker (annet enn indentering), og får masse enkel og smart tabellsyntaks med på kjøpet.

Lenke til kommentar

jeg kjenner ikke til Python så det vil jeg ikke uttale meg så mye om, men fra det kurset man har her på forumet så virker det som om reglene der er forskjellig alt etter hvor man er i koden

 

nå er det da letter ha kontroll på starten og slutten av en programblokk når det er noe som skiller seg ut

Derfor fungerer 'begin' og 'end' bedre en '{' og '}'

 

Hvis man sammenligner ':=' med '== 'så er ikke den en bedre en den andre

'==' kan forveksles med '=' og man kan skrive '=' i stedet for ':='

 

Her mener jeg at pascal følger en litt mere naturlig skrivemåte

 

 

det er letter å lese

begin

fff

f ffdsf

fdsfsdf

{ s ds}

 

ereere

end;

 

en å lese

 

{

fff

f ffdsf

fdsfsdf

{ s ds}

ereere

}

teksten er bare tull , men jeg brukte den for eksempels skyld

 

 

pascal bruker '{' og '} ' andre ting

syntaksen i pascal er nok mere omfattende en i C

Endret av den andre elgen
Lenke til kommentar
Det er uansett irrelevant. Det jeg snakket om var at C# er åpent (ECMA-334)
Nå må du lese det jeg skriver da: http://www.diskusjon...post&p=19434291 det er svært kjedelig å gjenta seg selv. Så må jeg be deg om å slutte å gjenta ting som ikke er sant. C# er verken fritt eller åpent.
Java er et bedritent programmeringsspråk sammenlignet med C#.
Det spørs vel hva du er ute etter.

Har du lest det du skrev?

 

Du hevdet C# er dyrt. Åpenbart at du ikke har hatt noe som helst med det å gjøre, og det eneste du ser ut til å ha lest er Brett Smith som sier at Microsoft ikke liker GNU og at Community Promise ikke endrer dette, som er forøvrig irrelevant for diskusjonen.

 

Visual C# Express koster ingenting. MonoDevelop koster ingenting. C# kompilator følger med alle Windows versjoner fra Windows XP SP2 og utover. MonoDevelop og Mono er åpen kildekode, og Mono følger med Ubuntu.

 

Når det gjelder stillinger er dette bare å sjekke. Jeg har benyttet stillingsannonsene her, og digi.no. Stort sett alt av stillingsannonser er for .NET og Java-utviklere. Dette ser ut til å være ca. delt på midten.

 

Og Java er et drittspråk sammenlignet med C#. De to språkene gjør sånn ca. det samme, Java bare gjør det så utrolig mye dårligere.

Endret av GeirGrusom
Lenke til kommentar

Du hevdet C# er dyrt.

Nei det gjorde jeg ikke, nå må du skjerpe deg. Jeg sa det ikke var gratis, det er faktisk enda verre, det er ikke til salgs overhodet på andre plattformer enn windows og osx. Det er patentbelagt.
Åpenbart at du ikke har hatt noe som helst med det å gjøre, og det eneste du ser ut til å ha lest er Brett Smith som sier at Microsoft ikke liker GNU og at Community Promise ikke endrer dette, som er forøvrig irrelevant for diskusjonen.
OK, da får jeg gjenta igjen. Community promise dekker verken winndows forms, ado.net eller asp.net. Som en bitte liten wake-up call til deg, kan du være så vennlig å sjekke hvor mange av disse C# stillingene som bruker en eller flere av disse teknologiene? Er du en av disse som mener at tolkeren/kompilatoren er hele språket?
Visual C# Express koster ingenting.
og har vært ribbet så lenge jeg har fulgt med, her er listen sist jeg sjekket:

http://msdn.microsoft.com/en-us/library/b4z62wxz.aspx

så dette er ikke noe annet enn første skudd gratis, så når du er i jobb må du ha full versjon.

Når det gjelder stillinger er dette bare å sjekke.
Jeg har sjekket, og må dessverre konkludere at du ikke behersker elementær prosentregning. Tallet er godt unna 95%. Generelt er C# faktisk ikke spesielt populært. TIOBE software er kanskje de som følger med slike trender best, og her er de siste tallene:

http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html

C# er fortsatt bak C, Java, C++ og Objective-C i bruk. Disse tallene stammer naturligvis ikke bare fra Norge, hvor enkeltprosjekter og rekrutteringsbyråer kan gi et noe skjeft bilde av det reelle arbeidsmarkedet.

Lenke til kommentar

Kikk på tendensgrafen og ikke bare tallet for Juni.

 

Det er to språk som øker: C# og Objective-C. Alle andre har hatt en fallende tendens over lengre tid. Spesielt Java.

 

I begynnelsen av året lå C# over både Objective-C og C++. Faktisk var det på tredjeplass under C og Java.

 

Jeg kan tenke meg at Objective-C går foran C# på grunn av mobiltelefoner. Merk at Java går ned til tross for det økende markedet med smart-telefoner og tablets med Android, mens Objective-C gikk rett i været. Dersom Windows Phone blir en suksessrik plattform så tror jeg vi også vil se en ganske stor økning i C# også der. Men det spørs om Windows Phone vil ta av; hele det markedet tror jeg MS dreit seg fullstendig ut på.

 

Visual C# er ikke til salgs på andre plattformer nei, men du har gratis alternativer til det. MonoDevelop.

Endret av GeirGrusom
Lenke til kommentar

begin og end vs { og } har jeg begge brukt, og det er nok til en viss grad en smakssak. Der er det viktigste for lesbarhet at man bruker innrykk konsekvent. :B

  • Smaks sak
  • Hvor mye det ligner på det vanlige skriftspråket
  • Hvor mye det ligner andre deler av syntaksen

Alle disse punktene har betydning

 

 

for å antyde forskjellen mellom kode henholdsvis begin ,end og { ,}

 

så kan jeg illustrere det på denne måten og denne måten eller denne måten og denne måten

du ser selv hva som vises best

Endret av den andre elgen
Lenke til kommentar
Gjest Slettet-qfohT7

begin og end vs { og } har jeg begge brukt, og det er nok til en viss grad en smakssak. Der er det viktigste for lesbarhet at man bruker innrykk konsekvent. :B

  • Smaks sak
  • Hvor mye det ligner på det vanlige skriftspråket
  • Hvor mye det ligner andre deler av syntaksen

Alle disse punktene har betydning

 

 

for å antyde forskjellen mellom kode henholdsvis begin ,end og { ,}

 

så kan jeg illustrere det på denne måten og denne måten eller denne måten og denne måten

du ser selv hva som vises best

 

Vi skjønner alle poenget ditt her, men hvis du mener at syntaksen er noe av det viktigste, da har du virkelig ikke programmert mye. Jeg startet nylig på et nytt hobby-prosjekt med Objective-C, noe jeg aldri har programmert før. Mesteparten av tiden går med til å modellere dataflyt og funksjonsdesign. Syntaksen er rett og slett den mist vanskelige biten, som bare får designet til å fungere. Man kan lage et helt program uten å skrive en eneste linje med kode ;)

 

Forøvrig er dette off-topic spør du meg. Er det mulig å sette en strek for syntaks diskusjonen her ?

Lenke til kommentar

begin og end vs { og } har jeg begge brukt, og det er nok til en viss grad en smakssak. Der er det viktigste for lesbarhet at man bruker innrykk konsekvent. :B

  • Smaks sak
  • Hvor mye det ligner på det vanlige skriftspråket
  • Hvor mye det ligner andre deler av syntaksen

Alle disse punktene har betydning

 

 

for å antyde forskjellen mellom kode henholdsvis begin ,end og { ,}

 

så kan jeg illustrere det på denne måten og denne måten eller denne måten og denne måten

du ser selv hva som vises best

 

Vi skjønner alle poenget ditt her, men hvis du mener at syntaksen er noe av det viktigste, da har du virkelig ikke programmert mye. Jeg startet nylig på et nytt hobby-prosjekt med Objective-C, noe jeg aldri har programmert før. Mesteparten av tiden går med til å modellere dataflyt og funksjonsdesign. Syntaksen er rett og slett den mist vanskelige biten, som bare får designet til å fungere. Man kan lage et helt program uten å skrive en eneste linje med kode ;)

 

Forøvrig er dette off-topic spør du meg. Er det mulig å sette en strek for syntaks diskusjonen her ?

jeg ville bare ha frem at forståelsen av hvordan programmet fungerer når man ser kildekoden faller og står på hvor god man forstår syntaksen . ofte får man inntrykk av at det ikke betyr noen ting

 

Hvis syntaksen er lettere å forstå så blir det også lettere å programmere .

 

hvis man har brukt mye tid på å planlegge et program ( jeg har den erfaringen at man må juster litt på idene under veis) så hjuper det lite hvis det er vanskelig å forstå programmets gang gjennom syntaksen .

det gjelder alle former for kilde koder , også de man får gratis

 

nå tro jeg at jeg at fått frem det jeg mer var en viktig del av det

Lenke til kommentar

Tips: du trenger ikke ha kodeblokker i "programmets gang" i det hele tatt.

 

All "utførende" kode kan være gjemt bort i funksjoner og objekter, slik at du får en veldig ryddig hovedkode.

 

include(en_include_som_lenker_inn_objektfiler_og_funksjonsfiler);

 

// Generer ny elg, gi den egenskaper, definer som husdyr og forklar hvordan:

$elg2 = new elgbot();

$elg2->sett_navn('Den nye elgen');

$elg2->sett_er_husdyr(true);

$elg2->forklar_hvorfor_husdyr();

$elg2->skriv_ut_som_nettside();

Lenke til kommentar
Gjest Slettet-qfohT7

jeg ville bare ha frem at forståelsen av hvordan programmet fungerer når man ser kildekoden faller og står på hvor god man forstår syntaksen . ofte får man inntrykk av at det ikke betyr noen ting

 

Hvis syntaksen er lettere å forstå så blir det også lettere å programmere .

 

hvis man har brukt mye tid på å planlegge et program ( jeg har den erfaringen at man må juster litt på idene under veis) så hjuper det lite hvis det er vanskelig å forstå programmets gang gjennom syntaksen .

det gjelder alle former for kilde koder , også de man får gratis

 

nå tro jeg at jeg at fått frem det jeg mer var en viktig del av det

 

Syntaksen betyr ikke noenting i den forstand at den kan læres rimelig fort.

 

Programmering består i stor grad av problemløsning. Problemene er aldri relatert til syntaks, i den forstand at et språks syntaks enkelt kan "googles" for å finne et fasitsvar.

 

Valg av språk faller dermed på helt andre faktorer enn syntaks. Klart du kan sitte og rive ut håret av en syntaks som ikke lar seg kompilere, men dette er mer programmererens manglende vilje til å sette seg inn i oppbyggingen enn en svakhet i selve språket.

 

Jeg valgte ikke Objective-C fordi jeg synest det var en enkel syntaks (tvert imot, så var den totalt uvandt) men fordi jeg skal kode mot iOS. Jeg har til nå brukt tiden på å finne ut hva slags databaseløsning som passer best, og har til og med skrevet funksjoner i språk-uavhengig "psaudo-kode" og bygget opp programmet på den måten. Selve kodingen er på mange måter bare sjarmøretappen ;)

 

..med mindre man lager veldig små og lite komplekse små applikasjoner eller script da..

Lenke til kommentar

Tips: du trenger ikke ha kodeblokker i "programmets gang" i det hele tatt.

 

All "utførende" kode kan være gjemt bort i funksjoner og objekter, slik at du får en veldig ryddig hovedkode.

 

include(en_include_som_lenker_inn_objektfiler_og_funksjonsfiler);

 

// Generer ny elg, gi den egenskaper, definer som husdyr og forklar hvordan:

$elg2 = new elgbot();

$elg2->sett_navn('Den nye elgen');

$elg2->sett_er_husdyr(true);

$elg2->forklar_hvorfor_husdyr();

$elg2->skriv_ut_som_nettside();

 

Om man trenger kode blokke kommer an på om man kan utnytte eller finner de funksjonene man vil bruke

man må likevel ha en kodeblokk som styrer programmet

Lenke til kommentar

Nå er det ikke alle syntaksen som er like lett å lære

og det er ikke alle syntaks som er like lettlest

( det har veldig mye å si hvorhvit man kan unngå slurvefeil)

 

her var poenget mit at syntaksen til pascal var lit lettere å lese end den C bruker

Det er selvfølgelig mange andre ting også som betyr mye.

men syntaksen er for viktig til at man skal ignorere den helt .

klarer man ikke å se forskjell på de forskjellige kodene i syntaksen så har man store problemer

 

jeg ser ikke så lett forskjell på { },( ) ,[] og da kan det gå i surr

har der forstått det nå eller tror dere bare at dere har forstått det som midlere i tråden

Lenke til kommentar
her var poenget mit at syntaksen til pascal var lit lettere å lese end den C bruker
DU mener at syntaksen i Pascal er lettere å lese enn C. Men dette er din oppfatning, og veldig mange er av en annen oppfatning. Problemet er at du skriver alt som om det skal være universelle sannheter, selv om det egentlig bare er din mening. Derfor spør jeg etter kilder innimellom.

 

jeg ser ikke så lett forskjell på { },( ) ,[] og da kan det gå i surr
Endelig et argument for hva din oppfatning er. Bra!

Som jeg sa tidligere, så er jeg av den oppfatning at BEGIN, END og andre egentlig meningsløse ord roter til koden min mer enn enkle {} og (). Dette er min oppfatning, og betyr ikke nødvendigvis at alle andre føler det på samme måten. Men jeg syntes ikke det var riktig at du skulle få påstå at alle synes Pascal har enklere syntaks enn C, for det er ikke riktig.

Lenke til kommentar
her var poenget mit at syntaksen til pascal var lit lettere å lese end den C bruker
DU mener at syntaksen i Pascal er lettere å lese enn C. Men dette er din oppfatning, og veldig mange er av en annen oppfatning. Problemet er at du skriver alt som om det skal være universelle sannheter, selv om det egentlig bare er din mening. Derfor spør jeg etter kilder innimellom.

 

jeg ser ikke så lett forskjell på { },( ) ,[] og da kan det gå i surr
Endelig et argument for hva din oppfatning er. Bra!

Som jeg sa tidligere, så er jeg av den oppfatning at BEGIN, END og andre egentlig meningsløse ord roter til koden min mer enn enkle {} og (). Dette er min oppfatning, og betyr ikke nødvendigvis at alle andre føler det på samme måten. Men jeg syntes ikke det var riktig at du skulle få påstå at alle synes Pascal har enklere syntaks enn C, for det er ikke riktig.

begin og end er letter for det brukes kun til en ting .

parktantene brukes til så mye at det kan gå i surr

Det er det som er hele poenget

og det kan skje med andre ord også

 

mange sliter med å skille mellom , (komma) og . ( punktum) , det er et annet eksempler

andre igjen klarer ikke å skille mellom ` og '

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å
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...