Hvad er Mono, og hvorfor kan det være farligt?

Mono er navnet på et open source-projekt, der er startet af Ximian og i øjeblikket fremmes af Novell (efter erhvervelsen af ​​Ximian) for at oprette en gruppe gratis værktøjer, der er baseret på GNU / Linux og kompatible med .NET som specificeret af ECMA. Hvorfor er det hadet af mange GNU / Linux-brugere?

Hvad er Mono?

Nej, det har intet at gøre med Monkey Island. Mono er den gratis implementering af CLI (Common Language Infrastructure) og C # (begge oprettet af Microsoft) i henhold til specifikationerne sendt til ECMA for sin standardisering. Denne implementering er open source.

Mono inkluderer CLI, som indeholder den virtuelle maskine, der er ansvarlig for indlæsning af klasser, jit (Just-in-time) kompilatoren og skraldopsamleren; alt dette skrevet fra bunden i henhold til specifikation ecma-334.

Mono inkluderer også en C # -compiler, som paradoksalt er skrevet i C #, og ligesom CLI følger denne compiler specifikationerne ecma-335.

Derudover har Mono et katalog over biblioteker, der er kompatible med .Net Framework-bibliotekerne, men det har også en række biblioteker, der ikke findes i Microsofts .Net Framework; såsom GTK #, der tillader oprettelse af indfødte grafiske grænseflader til GTK + -værktøjssættet, Mono.LDAP, Mono.Posix osv.

Oprindelse af Mono

Mono blev undfanget af Miguel De Icaza, projektet blev sponsoreret på det tidspunkt af hans firma Ximian; på nuværende tidspunkt Novell er sponsor af Mono-projektet, siden Novell erhvervede Ximian.

Motivationen for at skabe Mono skyldes søgningen efter værktøjer, der vil hjælpe med hurtig oprettelse af applikationer i Linux-miljøet.

Mono-understøttede platforme

Mono kører i øjeblikket på x86-, PPC-, SPARC- og S390-platforme i 32-bit; og x86-64 og SPARC i 64 bit; det er muligt at oprette og udføre applikationer i operativsystemerne: Linux, Windows, OSX, BSD og Solaris.

Er mono kompatibel med .Net Framework?

Et af Monos mål er at opnå en høj grad af kompatibilitet med API 1.1, selvom der allerede er meget arbejde med kompatibilitet med API 2.0 i .Net Framework.

Dette er for at sikre, at en binær kompileret i Windows med .Net Framework kan køres på en hvilken som helst af Mono-platformene uden at skulle kompilere binærprogrammet, og som igen kan gøre brug af de kompatible Mono -Ej: Systembiblioteker. System.Xml osv. -.

Bibliotekerne leveret af Mono er 100% kompatible med deres modstykke til .Net Framework. Den seneste version 2.6.1. inkluderer blandt andre vigtige funktioner:

  • CLI
  • C # -kompilatoren
  • ADO.NET
  • ASP.NET
  • Webtjenester
  • Systemkrav
  • WindowsFormer

Sidstnævnte er - WindowsForms - den, der kræver, at mere arbejde udføres i sin helhed. Selvom det skal bemærkes, at projektet ikke overvejer oprettelsen af ​​kompatible biblioteker til Enterprise Services.

Hvilke slags applikationer kan jeg i øjeblikket oprette med Mono?

Nå, det er muligt at oprette webtypeapplikationer og webservices ved hjælp af mod_mono-modulet, der giver Apache-webserveren mulighed for at betjene ASP.NET (aspx) og Web Services (asmx) sider.

Det er også muligt at oprette applikationer, der får adgang til databaser som Microsoft SQL, Oracle, Postgresql osv.

På siden af ​​applikationer med grafisk interface er forslaget at bruge GTK #, da det værktøjssæt, som det er baseret på (GTK +), gør det muligt at udføre grafiske applikationer i Linux-, Windows- og OSX-miljøer uden ændringer; Dette forslag bliver vigtigt, fordi implementeringen kompatibel med Windows Forms i Mono endnu ikke er afsluttet.

Er der et krav for, at min applikation skal være kompatibel med Mono og .Net Framework, dvs. bærbar?

Der er virkelig ikke nogen specifikke, så længe det er en CLI-baseret applikation; selvom der er nogle punkter, der skal tages i betragtning:

  1. Linux er store og små bogstaver i fil- og katalognavne; så det er nødvendigt at have en konsistens med de navne, vi bruger.
  2. Stiseparatoren er forskellig i Windows () end i Linux (/), derfor anbefales det at bruge API Path.DirectoryPathSeparator for at få den rigtige separator, når applikationen udføres.
  3. Hvis der anvendes ikke-CLI-biblioteker (f.eks. Bibliotek i C, C ++ osv.), Skal du bruge p / Invoke sørge for, at biblioteket findes i de forskellige miljøer, hvor applikationen udføres.
  4. Brug ikke teknologier, der kun findes i et bestemt miljø (fx: Registrering på Windows eller GConf på Linux -Gnome-); eller give en løsning, der gør det muligt for applikationen at fungere korrekt i det miljø, hvor den kører.
  5. Applikationer baseret på Windows-formularer, og som er meget komplekse, fungerer muligvis ikke i øjeblikket, fordi Windows-formularer i Mono ikke er komplette.

Hvilke udviklingsværktøjer findes i Mono?

Nå er det muligt fra Windows at udvikle et program ved hjælp af Visual Studio. På Linux-siden er der Monoudvikling, en IDE baseret på SharpDevelop.

MonoDevelop tillader projektstyring, syntaksfarvning, automatisk komplet kode, kompilering og kørsel af applikationen fra den samme IDE.
Gennem tilføjelser (tilføjelsesprogrammer) er funktionaliteten blevet udvidet til f.eks .:

  • Opret forbindelse til databaser fra IDE
  • Inkluderingen af ​​en debugger, der tillader, som Visual Studio, at udføre kode linje for linje og gennemgå variable værdier.

Der er i øjeblikket arbejde med at integrere en formdesigner, selvom denne designer er fokuseret på at oprette formularer til GTK # og ikke Windows Forms.

Ansøgninger til Mono.

Der er et stort antal applikationer udviklet til Linux i Mono, for at få en idé, her er 2 lister med disse applikationer:

Af disse udestående applikationer er:

  • MonoDevelop: Det er en IDE til programmering af monoprogrammer i Linux. IDE er lavet i C #.
  • f plet: Program til katalogisering af fotografier ud over at være i stand til at foretage nogle digitale ændringer af fotos.
  • Beagle: Værktøj, der indekserer og søger efter information blandt en række forskellige typer dokumenter i Linux.
  • Tomboy: Program til at gemme noter, der er knyttet til nøgleord.
  • muine: Det er en lydafspiller baseret på GStreamer.
  • PyMusique: Program, der giver en grafisk grænseflade for at få adgang til at købe musik med Apples iTunes-tjeneste.
  • MonoUML: Det er en editor, der laver diagrammer med UML-standarden.
  • Gnome gør: Hurtig og effektiv applikationsstarter.
  • Docky: Dock til dit skrivebord.
  • Banshee: Medieafspiller baseret på Gstreamer.

Abe og licenser

Mono er open source-implementeringen af ​​Microsofts .Net Framework, baseret på standarder frigivet til ECMA; Fordi det er en implementering baseret på et Microsoft-produkt, har brugen af ​​Mono i Linux forårsaget kontrovers - blandt Linux-brugere og udviklere - argumentet er, at Mono kan krænke Microsofts patenter, hvilket kan blive en retssag mod Monkey.

Ifølge side i Mono-projektet, så længe CLI og C # -compileren overholder de standarder, der er accepteret af ECMA, er disse 2 stykker sikre i forhold til de mono-specifikke biblioteker, de løber ingen risiko; men implementeringen af ​​bibliotekerne relateret til ASP.NET, ADO.NET og Windows Forms er følsomme over for krænkelse af noget Microsoft-patent - selvom der i øjeblikket ikke er nogen viden om, at dette er tilfældet -; Af denne grund foreslår Mono-projektet 3 muligheder for sidstnævnte tilfælde:

  • Genimplementere funktionaliteten - for at undgå patentet - og forsøg at holde API'en kompatibel.
  • Fjern ting, der ikke kan genimplementeres.
  • Se efter elementer, der kan ophæve patentet.

Ifølge Wikipedia er Monos implementering af disse .NET-komponenter, der ikke er underlagt ECMA standardiseringen har givet anledning til bekymring over den mulige overtrædelse af softwarepatenter i løbet af projektets levetid. Især udviklede diskussionen sig om, hvorvidt Microsoft kunne ødelægge monoprojektet gennem retssager over krænkede patenter.

Der er i øjeblikket en livlig debat om (in) tilrådelighed at acceptere og bruge Mono i udviklerfællesskabet af GNU / Linux. Hovedargumentet mod Mono er, at det ikke er fri for softwarepatenter, og der er en risiko for, at Microsoft kræver licenser for at bruge C # / CLI.

På den anden side projektet Gnome udvikler et alternativt sprog, Vala, oprettet specielt til at udvikle applikationer til Gnome, men fri for potentielle trusler fra Microsoft.

Min anbefaling

Der er i øjeblikket nogle rigtig gode programmer skrevet i Mono. Du kan kun tænke på F-Spot, Gnome Do eller Docky. Men med gratis alternativer, der ikke har alle disse problemer, foretrækker jeg ikke at være afhængig af Mono.
Om den nylige kontroversielle beslutning fra Debian og Ubuntu om at inkludere Mono i sin standardinstallation, i modsætning til Fedora, der fjernede den, bare ved at inkludere populær ansøgning Tomboy, skrevet i C #, har Richard Stallman et par visdomsord der burde inspirere andre distroer.

At stole på C # er farligt, så vi bør fraråde brugen af ​​det.
Problemet er ikke unikt for Mono, enhver gratis C # -implementering ville have det samme problem. Faren er, at Microsoft sandsynligvis planlægger at tvinge alle gratis C # -implementeringer ud af kassen en dag ved hjælp af (deres) softwarepatenter. Dette er en alvorlig fare, og kun tåber vil ignorere det indtil den dag, det rent faktisk sker. Vi er nødt til at tage forholdsregler for at beskytte os selv.
Vi bør arrangere ting, så de er afhængige af gratis C # -implementeringer så lidt som muligt. Med andre ord skal vi afholde folk fra at skrive C # -programmer. Derfor må vi ikke medtage C # -implementeringer i standardinstallationen af ​​GNU / Linux-distributioner, og vi skal distribuere og anbefale ikke-C # -applikationer i stedet for sammenlignelige C # -applikationer, når det er muligt.

Afinstaller Mono

Jeg vil fjerne mono fra min Ubuntu-distribution (og dermed spare meget plads, som dens afhængigheder optager, og som der i tilfælde af Ubuntu ikke er andet end at "understøtte" 2 applikationer installeret som standard: F-Spot og Tomboy). Hvis du ikke bruger nogen af ​​disse to, skal du afinstallere dem fra Synaptic samt alle pakkerne, der siger Mono eller CLI.

For at afinstallere Mono i Ubuntu kan du også åbne terminalen og skrive:

sudo apt-get remove - purge mono-common libmono0 libgdiplus sudo rm -rf / usr / lib / mono

Alternativer til Mono

Som vi så, skal du først og fremmest programmere ikke i C #, hvis du er programmør. Der er utallige andre sprog, endnu bedre. Også Gnome udgav for nylig et nyt sprog med meget monolignende funktionalitet kaldet Vala.
Jeg har lige slettet Mono og med det blev nogle af mine yndlingsprogrammer slettet ... hvilke alternative shows der findes for at erstatte dem:

Flere oplysninger

For mere information om Mono-projektet, besøg den officielle hjemmeside på English, ud over monolog som er en aggregator for Mono-udviklerblogs; eller på spansk på Mono Hispano - stedet ud over blogs af de mennesker, der vedligeholder dette websted.
Glem ikke at efterlade dine kommentarer vedrørende Mono ... =)


Efterlad din kommentar

Din e-mailadresse vil ikke blive offentliggjort. Obligatoriske felter er markeret med *

*

*

  1. Ansvarlig for dataene: Miguel Ángel Gatón
  2. Formålet med dataene: Control SPAM, management af kommentarer.
  3. Legitimering: Dit samtykke
  4. Kommunikation af dataene: Dataene vil ikke blive kommunikeret til tredjemand, undtagen ved juridisk forpligtelse.
  5. Datalagring: Database hostet af Occentus Networks (EU)
  6. Rettigheder: Du kan til enhver tid begrænse, gendanne og slette dine oplysninger.

  1.   Ariel sagde han

    Jeg tror ikke, at Microsoft vil bruge deres patenter mod Mono, Monodevelop, Xamarine i fremtiden. Hvad mere er, jeg tror, ​​at disse værktøjer på en eller anden måde vil gøre det lettere for dig at udvide til andre platforme, der genvinder deres privilegerede plads i verden af ​​softwareudvikling generelt hver dag. Jeg synes, Mono gør et godt stykke arbejde med at overføre C # og .NET-teknologier til andre platforme, hvilket gør dem rige med nye teknologiske muligheder for så vidt angår soft. Mono ved, hvad patenter betyder, og tager helt sikkert alle forholdsregler for at undgå overtrædelser. På den anden side tager JAVA sin ledende position med sin JAVA EE6-platform, som for min smag går ud over de muligheder, Visual Studio i øjeblikket tilbyder. Det er af denne grund mere end noget, jeg tror, ​​at Microsoft finder det praktisk at portere sin C # til Linux, MacOSX, BSD, Solaris, Android osv ... På den anden side er jeg ikke enig i at tage disse noget fanatiske positioner for at sige NEJ til Microsoft i Linux eller sige nej til Linux i Microsoft, jeg tror, ​​at den sande udvikling er i sorten og at nægte sandheden er regression.

  2.   Lad os bruge Linux sagde han

    Hidtil har intet ændret sig. Hvis du er interesseret i at kunne køre dine programmer på forskellige systemer, anbefaler jeg Java eller python. Hvis du er fortrolig med c # syntaksen, er vala også et godt alternativ.
    Kram! Paul.

  3.   Pablo sagde han

    Hej.

    For ikke længe siden besluttede jeg at migrere sproget og valgte C # for at kunne bruge koden og kompilere den til brug på både Linux- og Windows-platforme.

    Nu ser jeg dette indlæg, spekulerer jeg på, om jeg klarede mig godt (jeg siger dette fra Richard Stallmans skrivning).

    Kan du fortælle mig, om denne situation har ændret noget til dato?

    (Jeg ved, at dette indlæg er mindst 2 år gammelt)

  4.   Sergio sagde han

    Som navnebroren kommenterede, synes jeg ikke, at Microsoft skal begrænse sine udvidelsesmuligheder, det lever faktisk ikke af det. Jeg ser dem endda i stand til at liberalisere sproget, da de tjener penge på implementeringer, rammer og IDE'er.

    Jeg begynder at tro, at Mr. Stallman er lidt gammel for disse ting i dag. Jeg havde det sjovt med at læse dit citat og tænke, at mens samfundet havde øjnene rettet mod C #, indgav Oracle sin første retssag mod Android, at selvom den stakkels fætter, skal det ikke glemmes, at det er Linux, for patentovertrædelse for brug af ... JAVA!

    Min opfattelse er, at Linux-samfundet ikke kan tillades, blot for stolthed, at lukke øjnene for alternativer og dets døre til et stort antal kvalitetsudviklere, der bærer sloganet om "tilpas eller vend dig om". Isoleret er der døden, selvom den er langsom.

    Lad os ikke glemme, at et programmeringssprog er et meget andet koncept end en applikation, det er et universelt gode. Hvem vil være i stand til at censurere engelsk og argumentere for, at det er kapitalismens sprog?

    1.    Javier L. sagde han

      De taler om MS, som om de ikke kendte dens bevægelser på marketingniveau, eller de glemte allerede hændelsen i 99, da MS ændrede en del af JAVA-platformen, så softwaren skrevet i sin egen suite ikke ville fungere i en anden browser, der var ikke IE6, da verden bemærkede, regnsager regnede overalt, men vigtigst af alt skulle meget af den skrevne software genimplementeres. MS er en virksomhed, der ønsker at tjene penge på alle måder. For dem, der er i fri software, er det ikke praktisk at bruge proprietære værktøjer, hvis der er så mange gratis værktøjer til rådighed.

    2.    jlboch sagde han

      Sergio, du er naiv, når du glemmer, at gringoerne ikke gør noget, absolut intet eller udfører velgørenhedsarbejde, hvis de ikke sørger for, at de vil producere millioner af dollars, selv efter deres handling,
      Hvad gringos elsker mest i denne verden er stoffer og dollars (i den rækkefølge)
      Det er derfor, de har domineret verden og markederne med deres kapitalisme: ved hjælp af loven om pind og dollarloven er gringos sande GUD dollars, selvom hyklerne bryder deres bryster i protestantiske templer eller i kirker katolsk

      1.    Maks. AC. sagde han

        Anti-Microsoft vil altid bugne af den formodede monopolistiske praksis, og selvom det er rigtigt, at Microsoft i årenes løb har vist adfærd, der ikke er særlig behagelig for slutbrugeren, så lad os ikke glemme, at det er en forretningsvirksomhed, og hvad de altid vil gøre med deres produkter er forretning. Men verden har ændret sig, den er blevet globaliseret, og Microsoft nægtede på det tidspunkt at acceptere det, men der var ikke noget andet valg, integrationen af ​​Open-XML-standarden i MSOffice beviser det, det er endda blevet tvunget til at "dele" kode for sin platform, der er tvunget af antitrustreglerne, og det måtte gøre det, er Net Framework og dets sprog registreret i ECMA's europæiske organ, hvis mål er at standardisere informationsteknologier, for C # svarer det til ECMA-334 , for CLI (som implementerer Mono) ECMA-335 og C ++ / CLI er ECMA-372, sikrer dette, at disse sprog og platforme er tilgængelige for offentligheden, så Microsoft vil ikke tvinge noget i fremtiden med respekt for disse sprog. Anti-Microsoft-forsøget på at modvirke brugen af ​​C # -sproget er absurd, det er et så beskidt spil som dem, der fordømmes af Microsoft, sprogspecifikationen er åben, der er andre sprog og i denne verden er den bedste konkurrence, som forårsager forbedringer på alle områder, skal programmøren på egen hånd opdage de forskellige sprog og teknologier og kende deres karakteristika, og det er han, der selv bestemmer, hvilken han forbliver hos for at udføre sin udvikling.

  5.   Lad os bruge Linux sagde han

    Godt bidrag. Tak skal du have!

  6.   Adrian sagde han

    Denne Stalmann !! Se Microsoft-sammensvorne op under din seng XD.

  7.   Sergio sagde han

    Hvis vi tager højde for, at Microsofts hensigt med .net er at vinde terræn fra java, synes jeg det er for godt at have Linux-implementeringer til at afkorte dets muligheder.

    min opfattelse er, at hvis microsoft ikke havde været interesseret i dette, ville det ikke have hjulpet med at skabe disse standarder, og det ville have beskyttet dets .net-biblioteker for at undgå (eller i det mindste hindre) deres dekompilering. Og ikke at vi allerede er på version 4.0, hvis jeg ikke tager fejl, og alle dens biblioteker dekompileres uden problemer og stadig ikke er tilslørede, hvilket vil forbedre arkitekturens ydeevne.

    Det er også rigtigt, at Microsoft altid har opkrævet selv for den dummeste applikation og nu for eksempel har fuldt funktionelle gratis versioner af visual studio til .net og uden begrænsninger i licensen i sit repertoire, og det er ikke det eneste (Truespace for eksempel er også gået til siden af ​​den gratis).

    Dette er en kamp mellem Java og .Net, og som i alle krige er enhver allieret velkommen.

    Og sandheden er, uanset om vi kan lide det eller ej, at vi lever i en verden fuld af licenser ... faktisk fremhæver nogle portaler patenter "krænket" på en simpel webside, og de er så almindelige, at vi ikke engang overvejer at det kan være patenteret noget så ekstremt simpelt. Patenterne er der, og hvis nogen ønsker at nedlægge et projekt, er det meget muligt, at de ender med at finde et patent, der overtrædes.

    Bare hvis det ikke har været klart, har jeg ikke til hensigt at starte en konflikt her, der søger at vide, om Windows eller Linux er bedre, de er simpelthen forskellige, og hver har sine fordele og ulemper, som alt andet. Men det er en anden historie.

    En hilsen.

  8.   e2fletcher sagde han

    Med Microsoft ved du aldrig.

  9.   ken Torrealba sagde han

    Regards,

    For nogen tid siden fulgte jeg en tutorial, kapitel 1, om Mono, og det virkede super let og mere naturligt end Java, jeg kunne godt lide det sidstnævnte. Desværre kunne jeg ikke få det næste nummer af bladet.

    Som jeg forstår det, er C # udviklingen af ​​J ++
    Den problematiske implementering af Java, som Microsoft kostede ham en retssag fra Sun, som Sun vandt, da Microsoft havde biblioteker (pakke), der kun kunne udføres på Windows, hvilket var det modsatte af Java-mottoet «du skriver en ser du, du udfører når og hvor som helst ».

    Microsoft skrot J ++ og C # layout

    Nu er kendsgerningerne følgende: Microsoft "donerede" en bestemt del af C # for at gøre Mono lovlig, så disse sektioner ville ikke lide fremtidige retssager, men hvad Microsoft ikke har doneret, hvis det har en god chance for, at Microsoft kræver den, der bruger det , dette Dette er tilfældet, fordi det er sket før med anden software, men dette ville ske, hvis Mono begynder at stjæle kunder, eller hvis en virksomhed begynder at tjene penge (meget) med understøttelse og implementering af sproget eller ønsker at tilskrive det som deres eget, mens så meget de kun vil se det udvikle sig.

    Endelig skal det bemærkes, at Miguel de Izcasa har frustrationer over ikke at kunne arbejde for Microsoft, på grund af hans pas..., dette fik ham til at skabe software kompatibel med Windows desde Linux, så de ville indse "hvad de gik glip af"

  10.   hvalpe sagde han

    Jeg kan ikke lide dette 🙁

  11.   Udviklere sagde han

    Jeg tror, ​​at en af ​​grundene til at bruge GNU / Linux er, at det er open source, og hvis vi begynder at bruge software oprettet af Microsoft, ville vi være involveret i en modsigelse, også hvorfor har du brug for Microsoft-software, når der er et stort samfund i verden af ​​open source for at støtte hinanden (oprindelsen af ​​open source) og dermed forbedre enhver applikation, der ikke er open source, synes du ikke?

    Lad os huske, at .NET oprindeligt ikke var gratis, og hvis det frigav det (den del, der blev frigivet), var det fordi udviklerne ikke brugte det på grund af dets begrænsede applikation, og dermed mistede Microsoft tilstedeværelsen blandt alle udviklere.

    Hvis det, vi ønsker, er, at vores applikationer fungerer på forskellige platforme, hvorfor ikke bruge Java eller Python. De nye applikationer oprettet af Xamarin til at udvikle til ios eller android er kun en måde at #monopolisere udvikling på under ét sprog, for som vi alle ved, er det altid bedre at bruge modersmål.

    Med hensyn til Richard Stallman tror jeg, at han er den person, der har mest erfaring med open source, og på grund af det skal vi i det mindste stoppe for at analysere lidt de problemer, han har været udsat for, da kendskab til historien tjener til at undgå at lave de samme fejl.

    Som alle andre skal udviklere betale regninger (mad, sundhed osv.), Og derfor er vi nødt til at opnå en økonomisk fordel for vores arbejde, men vi har forskellige måder at opnå det (heldigvis), såsom donationer, konsulentfirmaer, udvikling baseret på open source osv. Vi skal gøre brug af vores færdigheder og opfindsomhed, fordi denne nye verden "vender" som den gør takket være hver af de udviklere, der findes, og de får alt til at fungere som det skal. Fra mit synspunkt er vi grundlaget for den nye teknologi og det nye samfund og ikke virksomhederne.

    Tro det ikke ???

  12.   Adrian Fernandez sagde han

    Jeg tror ikke, M $ vil gøre noget ved at fange dem, der overtræder C # -patenter. Han gjorde det ikke før, han gør det ikke i dag, så han gør det næppe snart. På den anden side er Stallman kendt for sin vedvarende paranoia mod hvad der ikke er fri software (han er endda utilfreds med Linux-kernen) og forestiller sig i 20 år en verden af ​​udviklere forfulgt for M $.
    Alligevel. Monodevelop er et fremragende værktøj at arbejde med. Og hvis nogen er bange for at bruge C # fra det, du har set, er der stadig Basic, som i øjeblikket er lige så kapabel som C # i de fleste udviklinger.

  13.   Daniel Noriega sagde han

    Jeg er også enig i nogle kommentarer, jeg er elektronisk ingeniør, men jeg er altid opmærksom på programmeringsnyheder og prøver altid at lære et sprog fuldt ud. Hvad der har været virkelig svært for mig, er at prøve at vælge hvilket sprog jeg vil lære, jeg bruger C ++ men jeg kender ikke API'erne, så det er næsten ingenting, det er derfor, jeg prøver at se, hvilken API jeg skal fokusere på. Men det, jeg ønsker, er muligheden for at udvikle platformskode, og naturligvis er det første, der skiller sig ud, JDK eller .Net.

    Så ser jeg dette indlæg, og jeg ser ærligt, at der er for meget paranoia. Jeg tror ikke, at Microsoft vil sagsøge mono, jeg tror, ​​at Microsoft tværtimod får en fordel, så dets sprog vinder terræn blandt programmører ved at blive et sprog, der kan udvides til andre platforme. Jeg er Linux-bruger, men jeg er også Windows-bruger, og jeg elsker Linux, men hvis der er en ting, som jeg ikke støtter ved Linux, er det, at en god del af samfundet er stolt og stump og lever hver dag for nonsens. , fornærme og nedsætte dem, som de kender mindre.

  14.   Billede af Jose Manuel Alcaraz sagde han

    Selvfølgelig må du ikke dedikere dig til spådom ... du har spikret det ... .net er nu open source ... xD

  15.   Alexis sagde han

    ehhh som jeg har sagt mange gange ... Jeg lort på Richard Stallman ... han udtrykker sin mening og fanboys hopper som om hans ord var en hellig befaling ... selvom MS kan bruge sine patenter i fremtiden, det er ikke mindre sandt, at (i det mindste hvor jeg bor) er de dominerende platforme på virksomhedsniveau .NET og Java ... så at lære at håndtere Mono ville ende med at drage fordel af en mulig karriere som udvikler; Det er ikke særlig sundt for Linux-verdenen at knuse ethvert alternativ, der adskiller sig fra Mr. Stallmans "idealer", personligt bruger jeg Mono til eksperimentering og læring (da jeg ikke engang installerer windows på min pc, men jeg kan ikke pålægge det på mit job) og jeg har ikke lyst til en synder hahahaha hilsner.

  16.   JOU sagde han

    Jeg er ligeglad med, om C # er en fare, eller hvis et andet sprog er åbent ELLER osv., Så længe det tilpasser sig ethvert operativsystem og er rentabelt og producerer penge, det er fint, jeg er i øjeblikket en Linux rejer programmerer, der bruger sproget Basic svarende til Windows Visual Basic, og hvis jeg ser, at det letter let, professionel programmering og udvides til mange platforme, vil det være velkomment.

  17.   Terror sagde han

    Mine herrer, da Microsoft allerede købte Xamarin i 2016, har Mono en lang vej at gå. Stop den billige fanatisme, og kom i gang med andre programmeringsmuligheder. .NET har været officielt bærbart på ikke-Windows-platforme siden 2014 (med oprettelsen af ​​DotNet Foundation), og implementeringen af ​​.NET i ikke-Windows-miljøer er vokset lidt efter lidt. Ikke kun tænker du på disse ting fra Internet Information Services eller Windows-servere som før, men du skal tænke på Apache Web Server / Nginx med .NET. I mit tilfælde: Jeg har designet ASP.NET MVC 4/5 applikationer på IIS og derefter på Apache Web Server på Linux Ubuntu i et år nu, og indtil videre har jeg ikke haft nogen problemer med at køre en ASP.NET MVC-applikation på to forskellige webplatforme.

    Her er mit bidrag, hvis du er interesseret i at migrere ASP.NET MVC-applikationer til Apache / Ubuntu:

    1 Del:
    https://radioterrormexico.wordpress.com/2016/06/22/ejecutar-aplicaciones-asp-net-en-plataformas-no-windows-parte-13/

    2 Del:
    https://radioterrormexico.wordpress.com/2016/06/23/ejecutar-aplicaciones-asp-net-linux-ubuntu-server-parte-23/

    Eksempel Github:
    https://github.com/boraolim/MonoServe-2016

  18.   Hector sagde han

    Denne debat har en stærk politisk duft ... hahahaaaa XD

  19.   Tysk A. COPERTINO sagde han

    Med Java ville det samme ske, hvis Oracle er tilfreds, gør det java BETALT og dets ejendom, og vi lyder alle sammen. Det er meget subjektivt. Og jeg tror ikke, at en virksomhed eller Linux selv opmuntrer til denne type udvikling, hvis det i fremtiden vil være problematisk for brugerne. -

  20.   Elvino mangler sagde han

    Nå i tiderne med globalisering og deglobalisering er det godt at huske visse monopolistiske manøvrer hos nogle
    eller adfærd at manipulere, ikke for gratis Roman erhverver Ximian, men læs
    hvad skete der med Mysql / Sun Microsystm og derefter Oracle sugende Sun og med det Mysql for at forsvinde
    Det tog et stykke tid for Monty (skaberen af ​​Mysql) at indse det, men han reflekterede sit projekt og fødte MariaDB og endte med at blive en smerte i røvet i Oracle
    men det samme kan ske med Mono.
    Jeg er en Cobol, C, Java og Harbor Networking Multilanguage programmør, og i den rækkefølge under Aix, Linux og Windows
    Jeg blander applikationer fra Socket, jeg kommunikerer applikationer mellem forskellige sprog og forskellige platforme til en bank

    Jeg tror, ​​at hvis projektet er stort, det vil sige, det vil omfatte tusindvis af kodelinjer, skal du spille det sikkert for at sikre dets vækst / modifikation og skalerbarhed
    nu hvis koden er lille, ville jeg ikke have noget problem med at gøre det under C #, hvis det er godt, kraftfuldt og virkelig løser problemerne for mig, er det fint.
    hilsen

  21.   smadder sagde han

    .Net Core + C # = Fremtid

  22.   Jesus Arce sagde han

    Noten var fin, indtil "hvis du er programmør, brug ikke C #" dukkede op ... på det tidspunkt mistede de al deres troværdighed.

  23.   Japheth Granados sagde han

    I 2020 var det allerede bevist, at intet af det, der blev sagt i dette indlæg, skete. Microsoft oprettede .NET Core og gjorde det gratis. Nu med 3 platforme med meget ens basisbiblioteker, men i sidste ende forskellige (da de blev oprettet fra bunden), var det næste trin at samle de tre i én, og det er netop hvad der gøres med .NET 5 (uden ordet "Core" eller "Framework"), som som sagt er en ny platform, men nu open source, på tværs af platforme, og som kan bruges til at udvikle webapplikationer, desktop applikationer, mobile apps, IoT, AI, Cloud, blandt andre. Denne udvikling er sket takket være det store antal udviklere, der har bidraget takket være, at .NET nu er open source. Dette skulle ske, for da der var flere virksomheder og udviklere, der brugte .NET på en åben måde, åbnede Microsoft muligheden for at sælge sine tjenester (hovedsageligt i skyen), som heller ikke er begrænset til at bruge .NET eller C #. Microsoft er ikke dumt, at lukke deres software og starte retssager var den farlige ting for dem. Men hej, jeg er ikke gift med .NET eller noget andet sprog. Men jeg ser meget interessant, hvad der gøres i nævnte samfund. Ved at få støtte fra en stor virksomhed kan det gratis samfund vokse endnu hurtigere, især da der er .NET Foundation, der har ansvaret for at gennemgå de eksisterende open source-projekter i .NET, hvilket garanterer, at der er en ordre, debugger processer fra Microsoft selv til gennemgang af de nævnte projekter.