Gå til innhold

Anbefalte innlegg

Heisan folkens

Jeg driver et lite firma som driver hovedsakelig med programmering på Windows platformen. En del av mine kunder har også linux servere/arbeidsstasjoner og jeg tenkte at dette også er et marked å "tappe" ;-)

 

På Windows Platformen programmerer jeg for det meste i Visual Studio, herunder C#.

 

Hva trenger jeg for å komem igang på Linux platformen? Jeg har hørt om Mono men aldri testet det. Er dette transparent med C# i Visual Studio?

 

Ole

Lenke til kommentar
Videoannonse
Annonse

Mono er egentlig ikke veldig vanskelig å komme igang med, men spørsmålet er bruken av det på linux platformen. C# er et microsoft produkt for .NET framework og alt som blir portet til linux vil ikke være testet på samme måte, og det er ingen garranti for feil, bugs i bibloteker eller at alle biblotekene er portet i det hele tatt.

 

Les her for generelle spørsmål og svar.

http://www.mono-project.com/FAQ:_General

 

Jeg har en følelse av at mono er lite brukt i private markede på grunn av overnevnt usikkerhet. Men det kan jo hende at det finnes andre meninger der ute.

 

Btw. Hvis du poster denne posten i C# forumet istedet for her, får du garantert flere svar.

Lenke til kommentar
Mono er egentlig ikke veldig vanskelig å komme igang med, men spørsmålet er bruken av det på linux platformen. C# er et microsoft produkt for .NET framework og alt som blir portet til linux vil ikke være testet på samme måte, og det er ingen garranti for feil, bugs i bibloteker eller at alle biblotekene er portet i det hele tatt.

 

Les her for generelle spørsmål og svar.

http://www.mono-project.com/FAQ:_General

 

Jeg har en følelse av at mono er lite brukt i private markede på grunn av overnevnt usikkerhet. Men det kan jo hende at det finnes andre meninger der ute.

 

Btw. Hvis du poster denne posten i C# forumet istedet for her, får du garantert flere svar.

 

Vel, jeg er egentlig mest på utkikk etter en måte å komme igang programvare utvikling på Linux platformen, slik at det at jeg nevnte Mono var kunn fordi jeg har hørt om det. Er det bedre alternativer så er dette også interresant.

 

Det er egentlig ikek så viktig hvilket språg somligger i bunnen, bare utviklings værktøyet er av høy kvalitet. Visual Studio er antagligvis et av værdens beste utviklingsmiljøer på Windows platformen og håpet kansje det fantes tilsvarende for Linux.

 

Ole

Lenke til kommentar

Generellt på Linux plattformen er det ingen ting som er defacto standard i forhold til utvikling slik det kan være i et windows bassert utviklingsmiljø.

 

Som på windows er det på linux en drøss av IDE'er å ta av, men som sagt er ingen av disse defacto standard. Når man entrer linux/GNU scenen blir man veldig ofte fort forvirret på grunn av at alle har sine egne preferanser og meninger om hva som er best, dette igjen kommer nok av at linux er nøyaktig laget for at man skulle ha full frihet i å velge hva man selv synes er bra.

 

Mitt tips er å finne et språk men er komfortabel med og et Integrert utviklings miljø (Hvis man ønsker slikt) som man synes passer dine behov. Også kan man evt eksperimentere med annet senere.

 

Av mine personlige meninger og preferanser finner du:

 

1. GUI i linux er totalt bøg.

2. Vim rocks

Lenke til kommentar
  • 2 uker senere...
  • 3 uker senere...
Generellt på Linux plattformen er det ingen ting som er defacto standard i forhold til utvikling slik det kan være i et windows bassert utviklingsmiljø.

 

Joda, men du kan ikke se etter det samme som du ville gjort i Windows.

 

Så og si alle GNU/Linux verktøy bruker gcc som kompilator og GNU make for å bygge. De aller fleste bruker et eller annet front-end for make, som f.eks. automake.

Alt styres i form av tekstfiler, så det gjelder bare å finne en tekst-editor man liker.

Lenke til kommentar
Generellt på Linux plattformen er det ingen ting som er defacto standard i forhold til utvikling slik det kan være i et windows bassert utviklingsmiljø.

 

Joda, men du kan ikke se etter det samme som du ville gjort i Windows.

 

Så og si alle GNU/Linux verktøy bruker gcc som kompilator og GNU make for å bygge. De aller fleste bruker et eller annet front-end for make, som f.eks. automake.

Alt styres i form av tekstfiler, så det gjelder bare å finne en tekst-editor man liker.

Tekst editorer er helt uaktuellt. Jeg har ikke tid til slikt. Det må være et integrert utviklingsmiljø med gode skjerm editorer, intellicense, bra debugger, klasse testing, integrering mot database, god prosjekt styring m.m. Å utvikle i en tekst editor blir det samme som å lage avis med notepad...

 

Finnes ikke dette for linux altså?

Lenke til kommentar
Å utvikle i en tekst editor blir det samme som å lage avis med notepad...

 

Heh, jeg synes at det er merkverdig å nevne tekst editor og notepad i samme setning...

Det er sammenligningen jeg sikter til ;-)

Vet veldig godt at en tekst editor er hundre reiser bedre enn notepad, men til bruket jeg sikter til er det sammenlignbart:

 

Visual Studio 2008 mot teksteditor

og

Quark Express mot Notepad

 

Du klarer begge de forskjellige oppgavene i begge, men hvorfor gå når man kan stråletransportere seg ;-)

 

Ole

Lenke til kommentar
Du klarer begge de forskjellige oppgavene i begge, men hvorfor gå når man kan stråletransportere seg ;-)

 

Joda, integrasjon kan være greit i enkelte tilfeller og det finnes flere godt integrerte løsninger, som f.eks. anjuta, kdevelop, eclipse, netbeans, monodevelop osv.

 

Min umiddelbare reaksjon mot disse løsningene, inklusivt Visual studio, code warrior, xcode etc -- er at de fort faktisk kommer i veien for hva du ønsker å gjøre på en effektiv måte.

 

Det er også verdt å merke seg at opprinnelig Unix programflyt er svært forskjellig fra hva man er vant til fra Windows. Unix er i all hovedsak bygget opp rundt et shell, hvor man har mange ulike verktøy som får gjort ting sammen. I utviklingsøyemed er gjerne en "Makefile" en essensiell bit av dette, og gir et hav av fleksibilitet.

Lenke til kommentar
Å utvikle i en tekst editor blir det samme som å lage avis med notepad...

 

Heh, jeg synes at det er merkverdig å nevne tekst editor og notepad i samme setning...

Det er sammenligningen jeg sikter til ;-)

Vet veldig godt at en tekst editor er hundre reiser bedre enn notepad, men til bruket jeg sikter til er det sammenlignbart:

 

Visual Studio 2008 mot teksteditor

og

Quark Express mot Notepad

 

Du klarer begge de forskjellige oppgavene i begge, men hvorfor gå når man kan stråletransportere seg ;-)

 

Ole

 

Hei Ole,

Andre har vel vært inne på dette, men under Linux er det vanlig å bruke språk og "isolerte" verktøy som gjør at tunge (pre-)integrerte verktøy ikke er nødvendig. En fletter sammen ting selv i stedet for å "bøye" en ting som allerede er flettet sammen til den form en ønsker. Dette gjelder i grunn både verktøy, språk og programvare; det er ofte ikke klare skiller mellom disse tingene under Linux og det finnes mange, mange byggeklosser der ute. (Ikke-filtrert virkelighet?)

 

Eksempler på språk som ikke krever den grad tunge verktøy som språk som C# gjør:

 

* Python

* Common Lisp

* Ruby

* Perl

 

Ok, vel .. liten rant følger, men jeg synes dette er viktig:

 

Sun har valgt å gjøre både språket Java, og plattformen Java, portabel. Dermed er også verktøyene for Java, som er skrevet i Java og kjører på Java plattformen, portable til Linux; og du har altså tunge verktøy for Java tilgjengelig på både Windows og Linux (og Mac).

 

..så det finnes altså _allerede_ "tunge" språk, _og_ "tunge" verktøy til Linux også; disse er virkelig gode. :]

 

Videre har MS valgt å gjøre språket C# nesten-portabelt, og plattformen .NET, ikke-spesielt portabel. Dermed er også verktøyene for C#, som er skrevet i C# og kjører på .NET plattformen, nesten-ikke-spesielt portable til Linux (og Mac).

 

Problemet med "manglende C#-verktøy på Linux" eksisterte _ikke_ før MS valgte introduserte C# og .NET og passet på å gjøre disse ikke-portable, eller nesten-ikke-portable.

 

Hvor leder alt dette? Jeg vet ikke, men jeg vet at jeg sitter i samme møkkahølet som deg med mye web-utvikling om dagen. Jeg må "passe på" og "holde hånden" til Internet Explorer 6.x, ennå den er utgått på dato for lengesiden (> 8 år gammel).

 

OK, så det jeg synes vi bør gjøre er å passe på, så langt det er mulig, å bruke portable verktøy og språk, og forbedre disse. Selv om dette kanskje er bittelitt uvant i starten, og i _noen_ tilfeller kanskje bittelitt mer tungvint selv når en har blitt vant med dem også. Grunnen er at dette vil ofte lønne seg i lengden for deg selv og alltid for oss alle. Når det gjelder web-utvikling passer jeg på å _forsiktig_ hinte til at brukeren bør oppgradere. Om jeg så treffer kun én eller to blant et par 10000 så har kanskje dette en ettervirkning siden, og kan oppmuntre andre til å oppgradere også. Så alt nytter.

 

Videre er nesten alt innen utvikling en form for investering m.t.p. tid og penger, og om du _virkelig_ trenger å porte applikasjonen din fra Windows til Linux og Mac nå, _kan_ det hende at du har investert kortsiktig når du satset på MS, .NET og C# med et verktøy som så veldig bra ut "sånn med en gang", men som altså ikke er så portabelt som du hadde håpet når du trenger dette.

 

Rant ferdig. :]

 

PS: jeg ser folk nevner Make .. jeg foreslår at du dropper Make og istedet tar en titt på SCons om du ikke jobber med et bibliotek ment for distribusjon til andre .. dette er altså for prosjekter i C

 

mvh,

Lars Rune Nøstdal

http://nostdal.org/

Endret av symbolicweb2
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...