Macacão para iniciantes, parte 1

Depois de ter começado a aprender C #, decidi iniciar este minicurso, para poder ensinar de forma básica como usar C # e mono no Linux.

O objetivo é dar um conhecimento básico e finalmente nas últimas parcelas, poder dar uma ideia de como implementar mono, tanto com GTK # quanto com Qt 4 até Qyoto.

A primeira pergunta que alguns farão é: O que é Mono?

Mono é uma plataforma criada para facilitar aos desenvolvedores, a criação de aplicações multiplataforma, patrocinada pelo projeto Xamarin.

É uma implementação de código aberto do Microsoft.NET, com base nos padrões ECMA para C # e CLR (a máquina virtual que executa o código, o coletor de lixo e o manipulador de recursos).

Mono permite a criação de aplicações para Linux, Windows, Osx, iOS, Android, Windows Phone etc…, além de poder usar Windows Forms no Windows, Gtk e Qt no Linux, Cocoa no Osx como interface.

Mono permite a integração de C #, Visual Basic, Java, Python, Ruby, Eiffel, F # e outras linguagens, no mesmo programa. O compilador C # é licenciado sob MIT / X11 e GPL. As ferramentas sob a licença GPL, o tempo de execução, sob LGPL 2.0, as bibliotecas sob MIT X11 e ASP.NET, MEF, DLR, AJX, sob a Licença Permissiva Microsoft e APACHE2.

Para saber mais sobre patentes e esclarecê-lo porque realmente não há perigo, refiro-me ao mesmo site da mono. http://www.mono-project.com/License

O que podemos fazer com Mono?

Podemos criar desde aplicativos multiplataforma rapidamente, até bancos de dados conectados a Mysql, Postgresql etc ..., até páginas da web.
Ambientes de Desenvolvimento

Atualmente temos Monodesenvolvimento , um dos IDEs mais completos em Linux, que funciona em Linux, Windows e Mac OSX.

Também permite a escrita em vários idiomas, incluindo C #, Visual basic.net, C / C ++ e Vala.

instalação

Neste caso vou ensinar como instalar a última versão no Ubuntu e derivados, em outras distros, como Opensuse ou Archlinux, vamos encontrar a versão mais recente nos repositórios oficiais.

Primeiro, vamos adicionar o repositório

add-apt-repository ppa:keks9n/monodevelop-latest

Então vamos atualizar e instalar o ambiente e as bibliotecas

apt-get update && sudo apt-get install monodevelop-current

Assim que tudo estiver instalado, teremos que reiniciar o sistema.

IDE, PRIMEIRO PROGRAMA

Abriremos o Monodevelop, em seguida Menu »Arquivo» Novo »Solução e uma caixa de diálogo será aberta, chamada de nova solução como esta:

Nova solução_001

Vamos dar-lhe um c #, projeto de console, e vamos inserir o nome do projeto e vamos dar-lhe uma localização e finalmente vamos dar-lhe para aceitar, e assim o clássico e famoso Hello World será aberto.

HelloM - Program.cs- - MonoDevelop_003

Neste primeiro programa, encontraremos duas coisas básicas:

1: Função principal Main, que é obrigatória para executar qualquer programa, já que o intérprete irá procurar essa parte, para começar a executá-la. Nesse caso, diferimos de outros idiomas além da palavra reservada A Principal, Começa com letras maiúsculas e não podemos cometer erros, pois, caso contrário, o programa não funcionaria.

2: O comando Console.WriteLine ();
Este comando nos permite exibir texto na tela. Console.WriteLine, está dentro do namespace "System", como você pode ver, no início do programa está incluído o comando "using System".

Console.WriteLine, nos permite exibir texto, colocando-o entre aspas duplas, ou variáveis, colocando-as sem aspas.

Por fim, executaremos o programa pressionando a tecla F5.

VARIÁVEIS

Em C #, temos diferentes tipos de variáveis ​​entre eles:
int para números inteiros, flutuar para números com decimais,duplo para números com decimais, mas com precisão dupla, carbonizar para personagens, corda para strings de texto, bool para "verdadeiro" ou "falso" e decimal . (Existem também outros tipos, mas por enquanto não é necessário conhecê-los todos, contentamo-nos com os principais).

As variáveis ​​são declaradas da seguinte forma:

int coste = 3;
float cuenta = 3.145;
decimal balance = 23.3456677544;
char letraInicial = 's';
string nombre = "mikasa";
double misNumeros = 3153456.43345643;

Em outras palavras: typeVariable variableName = data;

Para mais informações sobre os tipos, deixo o seguinte link: http://msdn.microsoft.com/es-es/library/ms228360%28v=vs.90%29.aspx

IMPRIMIR VARIÁVEIS NO TERMINAL

Primeiro, declaramos uma variável dentro da função MAIN, por exemplo:

int costOfPrice = 14; IVA int = 6; int sumTotal = VAT + costPrice; Console.WriteLine (sumTotal);

Deixo-lhe uma captura.

HelloM - Program.cs - MonoDevelop_005

O resultado de ter executado na variável sumTotal, a soma da variável priceOfCoste e a variável Iva aparecerá na tela.

COMENTÁRIOS

Temos duas formas de fazer comentários, a primeira é a clássica, dos comentários de uma linha e é feito da seguinte forma:

É colocado antes do texto, duas barras: // Este é um comentário de uma linha

Comentários multilinhas são feitos da seguinte forma:

O texto é precedido por: "/ *" e terminando com "* /"

HelloM - Program.cs- - MonoDevelop_006

Bem, deixo essa primeira parte aqui, na próxima semana, tentarei falar mais profundamente sobre o uso de variáveis, apresentarei os comandos if, while e for, e explicarei acima o que são objetos, classes e funções.

Uma saudação.


Deixe um comentário

Seu endereço de email não será publicado. Campos obrigatórios são marcados com *

*

*

  1. Responsável pelos dados: Miguel Ángel Gatón
  2. Finalidade dos dados: Controle de SPAM, gerenciamento de comentários.
  3. Legitimação: Seu consentimento
  4. Comunicação de dados: Os dados não serão comunicados a terceiros, exceto por obrigação legal.
  5. Armazenamento de dados: banco de dados hospedado pela Occentus Networks (UE)
  6. Direitos: A qualquer momento você pode limitar, recuperar e excluir suas informações.

  1.   f3niX dito

    Bem, eu programei alguns aplicativos simples em C # com mono, uma das coisas que me fez mudar (é que eu odeio Gtk, com todas as minhas forças), nada como o framework QT, e outra coisa é que python parece um linguagem muito melhor, o que também permite uma migração muito fácil entre plataformas.

    Além disso devo admitir que MonoDevelop é uma das melhores ides do mundo livre, só superado pelo QTCreator que minha maneira de ver as coisas está muito adiantada, admito que c ++ para mim é uma dor de cabeça.

    Embora agora tenhamos a versão do Pycharm Comunnity Edition, (que embora não seja código aberto é gratuito, assim como o sublime) para python e a verdade é muito boa "Python + Pychar + QtDesigner" ou "Sublime + Pycharm + QtDesigner" é muito mais fácil de trabalhar do que no MonoDevelop. Sem falar que Django, Web2Py, são muito melhores do que trabalhar em mono na web part.

    O que quero dizer é que me parece uma boa ideia se alguém que programa no Visual Studio .Net quiser migrar para alternativas gratuitas com o Mono está bem, mas se um fiel entusiasta do software livre que está aprendendo programação no momento, por que não usar plataformas completamente? grátis desde o início como C ++ ou Python… Que nunca saem de moda e que são cada vez mais populares a cada dia.

    Agora qualquer tutorial de programação é bem-vindo, e qualquer programador que pense em ajudar a comunidade seja em Mono, ou em qualquer outra linguagem, também é bem-vindo.

    lembranças

    1.    nano dito

      Eu mudaria Pycharm para Ninja-IDE

      1.    f3niX dito

        Gosto de + Pycharm Ninja Ide ainda está faltando, para ide ninja, prefiro Sublime.

        1.    nano dito

          O que acontece com o Pycharm é que a versão gratuita é praticamente igual ao IDE Ninja: /

          1.    f3niX dito

            Pycharm autocompletion é muito bom, refatoração de código também, integração git é ótima. Essas três coisas eu não consegui encontrar com Ninja-Ide ou com plug-ins.

            Contra PyCharm ele usa "JAVA", e é pesado, mas o eclipse também usa e ainda assim você vê como é usado.

            Agora vejo muito futuro para o Ninja-Ide, mas faltam muitos recursos para aplicar. É minha maneira de ver as coisas

    2.    Pandev92 dito

      Você pode usar mono C # com qt com segurança, usando qyoto, deixei o link no post.

      1.    f3niX dito

        Sim, eu sei, como disse, não sou contra o Mono, até mesmo C # parece uma linguagem muito fácil de aprender. E eu até tenho um ou outro curso aprovado, mas como falei, existem tecnologias totalmente gratuitas para quem está iniciando, e não requerem nenhuma plataforma específica.

        Eu defendo muito o python, mas estou fazendo o primeiro nível da certificação Oracle Java Develop SE, simplesmente porque tenho algo a acrescentar ao meu currículo e porque a demanda por desenvolvedores Java "às vezes" é boa na Venezuela. Embora neste último ano os DJango tenham aumentado muito, e espero um dia me dedicar totalmente à programação.

        PS: Admas de Qyoto também é Qt4Dotnet para c #

  2.   f3niX dito

    PS: Mantenha esses links para o MSDS da Microsoft. Você tem aqui a documentação do mono: http://docs.go-mono.com/ haha.

    1.    Pandev92 dito

      Mas eles estão em inglês xd

  3.   msx dito

    Mono: cunha do Microchot em plataformas livres.
    Não obrigado.

    1.    eliotime3000 dito

      Bem, se o costume ainda estiver lá, podemos fazer algum tipo de vingança EEEe C # provavelmente é gratuito.

    2.    nano dito

      Não é o ideal e posso concordar com você nisso, mas quando você tenta, por exemplo, criar um programa que funcione em todas as plataformas e use uma linguagem conhecida, não é uma má opção.

      Meus colegas são loucos por Java idiotas e não querem olhar por aí, então encontraram C # e agora eles amam C # e falam a praga do Python, por exemplo.

      Mono é uma forma de trabalhar um único programa em diferentes plataformas, me vejo em um discurso inflamado, pois o conceito é ótimo e funciona, mas não necessariamente gosto de C #

      1.    msx dito

        Por mais que usem o macaco da seda, ou o Mono neste caso, ainda é território da Microsoft, desenvolvido em primeira instância para portar o framework .NET para GNU + Linux.

        O Mono é realmente necessário para desenvolver aplicativos multiplataforma?
        A resposta é clara e contundente: NÃO.

        Não é necessário porque o tipo de aplicativo ao qual o Mono [b] se destina não é nem chicha nem limonada [/ b]: a velocidade extra do C Shit, quero dizer, Sharp, em relação ao Python, só é relevante quando se usa aplicativos complexos e fazer uso intensivo de recursos locais, como HW e sistema operacional de base. Para * absolutamente * todo o resto, existe Python + Qt ou, se falamos de aplicativos de negócios, o outro CamelCase horroroso chamado Java.

        Assim, se quisermos que uma aplicação local bastante complexa funcione de forma otimizada em diferentes plataformas, a única opção viável é programar essa aplicação levando em consideração as características do ambiente onde vai rodar e utilizar C ++.

        Você leu as licenças Mono? Não é apenas uma birra anti-Microsoft (que eu esclareço, eu sei que empresa de merda é e tenho meus motivos para combatê-la), mas estar sujeito às suas políticas arbitrárias.

        Você pode codificar todos os aplicativos que imaginar no PythonQt para que não sejam apenas multiplataforma, mas até híbridos locais / em nuvem com o mesmo desempenho, mas com melhor escalabilidade do que o resto das alternativas.
        Agora, quando cada ciclo do processador conta, as únicas alternativas são C / C ++.

        Analise Nano: se o .NET cock e o Mono fossem o que anunciam então hoje tudo estaria se desenvolvendo assim, tudo: navegadores, tocadores de música, planilhas, editores de imagem, o que você quiser, em princípio, você vai conviver com tudo de uma vez e transportá-lo com mudanças mínimas para qualquer plataforma, certo !? Heh, que estranho que não esteja acontecendo mais ..>: D

        Não se deixe enganar por uma cobra que vende espelhos coloridos (a mangueira 'multiplataforma' é um deles).
        Eu sou do stick PHP e com Python tenho minhas reservas, mais prática do que experiência, mas Python hoje permite que você codifique tanto localmente, a partir de uma ferramenta de console, por meio de um aplicativo desktop robusto até um site completo, CRM ou o aplicativo da web que você imagina. É uma realidade tangível, Mono é uma fumaça que já vende há muito tempo e permanece limitada a um nicho da comunidade.

        Se há algo que caracteriza o F / LOSS é a sagacidade dos desenvolvedores a quem não se pode vender nenhuma bobagem usando apenas palavras que soam bem - isso é deixado para os 'desenvolvedores' que usam 'tecnologias' da Microsoft -, se Mono realmente a maravilha que afirma ser já seria amplamente adotada em todos os tipos de projetos 'multiplataforma'.

        Novamente, a doce 'plataforma cruzada' como um aplicativo local é uma mentira, o verdadeiro conceito de plataforma cruzada está na web.
        Se o Mono fosse o que afirma ser, por que não programar grandes aplicativos e jogos em C # para aproveitar o triplo do preço de mercado em vez de uma única plataforma?

        Macaco? Não, obrigado, deixe-o subir na árvore da qual caiu.

        1.    Pandev92 dito

          Primeiro, C # é mais amplamente usado do que python em todo o mundo, embora muito pouco

          http://blog.uchceu.es/informatica/indice-tiboe-de-junio-de-2013-ranking-de-los-lenguajes-de-programacion-mas-usados/

          Em segundo lugar, deixei o link com as licenças acima e expliquei de forma clara, então se você quer bater a porta contra o que está escrito, vá em frente ...

          Java é péssimo em termos de desempenho e é a segunda linguagem mais usada, seu raciocínio não faz sentido. É como se eu dissesse "SE o Linux fosse tão bom quanto dizem, ele seria usado por 90% dos usuários de desktop, mas a forma como 1/2% o usa é uma porcaria."

          E, finalmente, muitos desenvolvedores nem ligam para a ideia de fazer aplicativos multiplataforma e, se o fizessem, fariam isso com java.

          1.    eliotime3000 dito

            Não é para ser ético, mas com C "michi" isso me confunde. Melhor eu prefiro trabalhar com o Java mastodontado ou o magnífico C ++ (embora este ano eles me ensinaram C # com o Visual Studio de mil demônios.

          2.    Pandev92 dito

            Desculpe @ eliotime3000, mas até hoje não conheci um aplicativo java para desktop que funcione muito rápido ...: /, em c +++, claro que é melhor, mas acho muito difícil.

          3.    eliotime3000 dito

            @ pandev92:
            Eu entendo você, já que com Java, eu programei e os resultados são um desastre. Quanto ao C ++, adoro-o por sua complexidade e como é leve para trabalhar.

            Enfim, trabalhando com o tecnologia da Microsoft, especialmente se você usar o Visual Studio .NET.

          4.    Ed dito

            1) Eu vi sua conta no Phoronix

            2) Tiobe não pode ser usado como referência.

            3) Tiboe ou TIOBE?!

          5.    msx dito

            Começo respondendo assim:
            http://techrights.org/wiki/index.php/Image:Mono-the-trojan.png

            «Em primeiro lugar, C # é mais amplamente usado do que python em todo o mundo, embora muito pouco
            http://blog.uchceu.es/informatica/indice-tiboe-de-junio-de-2013-ranking-de-los-lenguajes-de-programacion-mas-usados/»
            É bastante lógico, considerando que o Python está sendo realmente usado por um curto período de tempo e M $ está mexendo por um tempo.

            «Em segundo lugar, deixei o link com as licenças acima e expliquei de forma clara, por isso se queres bater a porta ao que está escrito, pode ir ...»
            Seu fanboyismo com Micro $ oft não tem limites, não é?
            http://en.swpat.org/wiki/.NET,_C-sharp,_and_Mono
            Citação I:
            «Proteção OIN
            Mono (versão 1.1.10) é um dos pacotes de software contra os quais os membros do OIN prometem não usar suas patentes. [2] A versão 1.1.10 é de 2005.
            Em novembro de 2010, a Microsoft comprou 882 patentes da Novell (como uma subparte de uma venda maior na qual a Attachmate comprou a maior parte da Novell). Isso pode ter enfraquecido significativamente o OIN. (Você pode ajudar? As consequências disso não são conhecidas. Informações muito bem-vindas aqui: Novell # Does_this_weaken_OIN.3F) »
            Embora então seja verdade que esse mesmo parágrafo termina:
            «A Microsoft provavelmente não adquiriu nenhuma patente que pudesse ser perigosa para os usuários do Mono. Em primeiro lugar, a Microsoft já tinha patentes .Net, então se a Novell tivesse alguma, isso seria apenas um excedente. Em segundo lugar, parece que a (s) promessa (s) de patente da Microsoft se aplicariam igualmente às patentes recém-adquiridas. Por essas duas razões, as patentes recém-adquiridas são tão perigosas quanto as patentes que a Microsoft já tinha, portanto, são apenas excedentes. »
            Não está claro se novos desenvolvimentos .NET _SI_ serão patenteados no futuro de forma a agarrar efetivamente os desenvolvedores C # pelas bolas.
            É um modelo -deiabólico- simples que sempre provou ser útil.

            Não só isso, como diz o artigo da Wikipedia sobre Silverlight / Moonlight:
            «Uma implementação de código aberto do Silverlight, chamada Moonlight, foi incluída desde Mono 1.9. [38] Moonlight 1.0, que suporta as APIs do Silverlight 1.0, foi lançado em 20 de janeiro de 2009. Moonlight 2.0 oferece suporte ao Silverlight 2.0 e alguns recursos do Silverlight 3.0. [39] Uma versão prévia do Moonlight 3.0 foi anunciada em fevereiro de 2010 e contém atualizações para o suporte do Silverlight 3. [40]
            O projeto Moonlight foi abandonado em 29 de maio de 2012. [41] Segundo Miguel, dois fatores selaram o destino do projeto: a Microsoft acrescentou «restrições artificiais» que «... o tornavam inútil para a programação de desktop ...», e a tecnologia não tinha ganhado força suficiente na web. »
            o problema com a sua amada Micromierda é que eles podem chutar o tabuleiro quando chamados, assim como fizeram com o Silverlight.
            DEPENDENDO DO PROJETO DE UMA CORPORAÇÃO AMARGA COMO HISTORICAMENTE É A MICROSOFT, EM VEZ DE ESCOLHER AS COMUNIDADES DE DESENVOLVIMENTO DE OPENSOURCE É COLOCAR DUAS ARMAS DE TIRO EM SEUS PÉS.
            http://en.wikipedia.org/wiki/Mono_(software)

            / / /
            Vamos continuar.

            «Resumo: o Mono no FOSDEM foi cancelado e geralmente quase não há cobertura Mono nos dias de hoje»
            Qual é o sentido de investir em um projeto morto ou com muito, muito pouco interesse de desenvolvedores brilhantes em uma plataforma que cheira mal desde o início e só tem um Ballmer disfarçado de líder de torcida pulando e dizendo "Vai Mono, Vai!"? Quem diabos quer isso !? Ah sim, pandev92, certo.
            http://techrights.org/2013/02/07/mono-dying/

            Mono agora pode ser tratado como um projeto Microsoft:
            «Ummary: Com os direitos autorais, patentes e licenças da Microsoft no Mono, bem como um CEO que trabalhou para a Microsoft e o apoio financeiro dos veteranos da Microsoft, é ingênuo tratar o Mono como algo diferente de uma extensão da Microsoft

            Tanto Mono quanto Miguel de Icaza quase não são notícia. Talvez devido a falar sobre vida familiar, este último principalmente deixou a cena pública e depois que sua nova empresa, Xamarin, recebeu algum financiamento de um VC de veteranos da Microsoft, é seguro assumir que os interesses / liderança da Microsoft herdarão mais responsabilidades sobre este projeto. Isso ajuda a abrir o .NET e fingir que é multiplataforma. Moonlight fez o mesmo com Silverlight. Como disse Richard Hillesley no início desta semana, a Microsoft agora está mais diretamente envolvida. Para citar sua coluna: “A Microsoft deu um certo nível de incentivo ao Mono por saber que o projeto ajudou a espalhar a palavra e trazer os desenvolvedores para o seio da Microsoft. Também é verdade que muitos indivíduos dentro da Microsoft tinham um interesse genuíno em promover a ideia de 'código aberto', geralmente com restrições, e o Mono deu credibilidade à alegação da Microsoft de que suas tecnologias eram multiplataforma, acessíveis a desenvolvedores de software livre e um 'parte da web aberta'. »
            http://techrights.org/2013/05/30/microsoft-project-in-foss-gown/

            O Debian GNU / Linux mais recente instala o Gnote quando o Mono é removido:
            Resumo: Decisão interessante de desenvolvedores / empacotadores Debian, que ajudam aqueles que rejeitam e ejetam o Mono
            http://techrights.org/2013/07/16/gnote-in-debian/
            Embora o Debian implemente GNU + Linux para ortho, eles ainda são campeões da disseminação de sistemas operacionais gratuitos e universais e que devem ser defendidos até a morte.

          6.    msx dito

            Um aplicativo Java para desktop relativamente rápido? MuCommander, vá no Google. MUITO rápido, eu diria.

            Sobre:
            Java é péssimo em termos de desempenho e é a segunda linguagem mais usada, seu raciocínio não faz sentido. É como se eu dissesse "SE o Linux fosse tão bom quanto dizem, seria usado por 90% dos usuários de desktop, mas como 1/2% o usa é uma porcaria."

            Claro, talvez com uma segunda leitura você entenda o que escrevi, eu convido você. Se você ainda não consegue interpretar, deixe-me saber e eu terei prazer em explicá-lo em detalhes.

            "E, finalmente, muitos desenvolvedores nem se importam com a ideia de fazer aplicativos multiplataforma e se o fizessem, fariam isso com java"
            VAMOS VER, PARA FICAR CLARO: O MANTRA da Microshit ao trazer .NET para GNU + Linux estava demonstrando PRECISAMENTE que seu desenvolvimento foi (com voz http://goo.gl/hDqLwY) MULTI PLATAFORMA.
            Então, do que diabos você está falando?

            Se você ama a Microsoft e isso te faz feliz ... e bem, bem-vindo, a vida é curta, se você gosta ... que ... bem, aí está, é a sua vida, mas pelo menos eu saí do armário em vez de disfarçar seus sentimentos com os outros argumentos.

        2.    nano dito

          Nah, você sabe bem que eu sou de Python, e ultimamente muito php e JS por motivos de trabalho, o meu é mais desenvolvimento web (mais com os conceitos e APIs e JS para trabalho multi-processo assíncrono, é incrível )

          O que digo é que, caso se torne imperativo usar C #, assim como eu não posso mais negar e tal, talvez eu use mono, mas ainda não me sinto muito amigo dessa plataforma.

        3.    jhcs dito

          Olá, ouviu amigo, o que você recomenda como ideia de programação que usa python e qt? Aguardo sua resposta.

          1.    M dito

            Eu uso o Emacs para tudo, então não posso te dizer, mas uma pergunta rápida a máquina onisciente retorna vários acertos: http://lmgtfy.com/?q=ide+for+python+and+qt

  4.   eliotime3000 dito

    Muito bom, mas se alguém usa o Debian Stable (Wheezy), é necessário adicionar o backport em /etc/apt/sources.list a seguinte linha (editando o arquivo com GNU Nano ou usando fontes de software e / ou similar) >>

    deb http://badgerports.org precise main

    Se você estiver usando o Debian Testing e / ou Unstable, o MonoDebelop já está disponível.

  5.   Lewis dito

    string name = "mikasa";
    // SNK detectado.

    Aliás, alguém já usou Vala-C ou granito? (Este é elementaryOS)

    1.    Pandev92 dito

      Hahaha você me pegou 😛

    2.    Nquiroga dito

      hahaha sim eu vi também

  6.   marianogaudice dito

    ELAV gosta de programar com MONO C #.
    ELAV é um seguidor fiel de Miguel De Icaza e seu projeto MONO.

    https://blog.desdelinux.net/miguel-de-icaza-das-asco/

    1.    elav. dito

      Você tirou da minha boca, quero dizer, dos meus dedos .. U_U

      1.    marianogaudice dito

        kkkkk ……….

  7.   Felipe dito

    Confesso que me senti tentado a aprender C #, pois a plataforma NET permite trabalhar com esta linguagem e você pode criar aplicativos desktop que rodem em qualquer máquina com NET instalado, ou seja, aprender uma linguagem que me ajude a criar programas que rodem em 90% dos computadores no mundo é bastante tentador (Claro que existem muitas versões do NET e você deve instalá-lo primeiro para poder usá-lo), muito mais do que aprender a programar para o 1% (XD desculpe linuxeros). Java também é bastante tentador, pois permite que você programe algo que funcione em 100% dos computadores do planeta (você tem que instalar o Java e salvar as diferenças entre as versões de java e aspectos que não funcionam da mesma forma em todos os sistemas operacionais) O melhor opção se parece com java. Embora o NET seja muito mais rápido que o Java, o Java é mais difundido. Melhor ir para o Java. Além disso, MONO não é NET e não há nada que garanta que funcionará no Windows, muito menos em outras distros.

    By the way no archlinux, antes deste programa não funcionava. Desde que o arch se tornou popular, misteriosamente mais programas começaram a ser executados.

    1.    nano dito

      Sob a mesma premissa, é preferível usar Python, que funciona absolutamente em todos os sistemas operacionais e dependendo do tipo de ligação que você usa, certamente pode trabalhar muito mais rápido no Java runtime.

      1.    Philip dito

        Python é muito bom, mas no gerenciamento de banco de dados fica aquém, para fazer python funcionar com mysql você tinha que baixar um conector que estava disponível apenas para arquitetura de 32 bits, portanto você precisava usar python de 32 bits e myslq de 32 bits . Então, para que funcionasse, você teve que fazer alguns passos muito extensos. Python foi projetado para funcionar com slqlite. E a "orientação a objetos" é uma piada, claro que é muito bom conseguir programas desktop simples e rápidos, em 10 minutos com o pyqt você consegue algo legal, não apostaria no python para algo realmente complexo se fosse para algo simples.

        1.    f3niX dito

          Do que você esta falando? esse conector python para mysql é ruim? desde quando você não usa python? Desde que o pep 249 veio à tona http://www.python.org/dev/peps/pep-0249 que regula todas as conexões do BD em um processo unificado com três etapas e com três linhas você já tem um BD rodando.

          "Orientação a objetos" é uma piada? Em python tudo é um objeto, se você quiser usar seu banco de dados como um objeto, use MySqlAlchemy, que é um ORM, e até mesmo as consultas em seu banco de dados são tratadas como um objeto. Isso também é implementado no Django e seus modelos.

          E finalmente o conector (difícil de instalar a propósito) apenas usando apt-get install python-mysql, e agora você pode importar MySQLdb e criar uma conexão e um cursor.

          Sem mencionar que é muito mais produtivo para um programador trabalhar com PyQt ou PySide do que trabalhar com C ++, que é o nativo do QT, no fluxo stackover você discute qual das duas linguagens é mais produtiva, não quero mencionar o óbvio aqui.
          http://stackoverflow.com/questions/3139414/qt-programming-more-productive-in-python-or-c

          Acho que você deve ler um pouco antes de comentar e não dizer que seu amigo teve (no passado) dificuldades para baixar um conector que é instalado com um simples apt, paman, yum ..

          lembranças

          1.    f3niX dito

            Não os fiz no windows mas os portei sem alterar nenhum código, apenas instalando suas respectivas dependências e instalando o python, e se você não tem o apt porque está no windows você tem o PIP e pode instalá-lo assim "python pip install mysqldba", que grande diferença com o apt.

            Se você não gosta de usar o pip, você o tem no estilo do Windows, aqui você tem os dois conectores para 32 bits e para amd64 em executable.exe
            http://www.codegood.com/archives/129

            Saudações.

          2.    Felipe dito

            você já programou com python acessando bd myslq no win? Eu nunca falo sobre linux, você deve ler bem o meu comentário porque nunca cito o nome de pyside, ou de qualquer amigo. Ha

        2.    nano dito

          Enfim, não é minha área, a área de trabalho. Onde você vê o poder do Python é no Django, por exemplo.

          Embora eu ache que o problema de gerenciamento de banco de dados tenha melhorado muito nos últimos tempos, estou desconectado das listas há algum tempo.

          1.    f3niX dito

            O poder do Python está focado em melhorar a produtividade do desenvolvedor, melhorando o tempo alocado a um projeto, para isso a qualidade do código é aprimorada, tornando-o mais fácil de manter. Isso em um ambiente de negócios aumenta os lucros ao ser capaz de colocar um produto no mercado no menor tempo e com a maior qualidade possível, com o número mínimo de desenvolvedores atribuídos ao projeto.

            É um truque de chapéu para empresas e desenvolvedores informais.

          2.    nano dito

            E eu não discuto isso, mas então vem o problema de desempenho e qual ou qual linguagem usar.

            O Python pode realmente corresponder facilmente ao Java em tempo de execução, mas às vezes essa produtividade não compensa a perda de poder que um compilado como C ++, por exemplo, fornece.

            Este é um dos dilemas

    2.    Pandev92 dito

      Claro que vai funcionar no windows, e lembre-se sempre que no windows você pode rodar até a versão 1.0 do .net…, a partir do ano do nascimento de Cristo ahahah.

  8.   edo dito

    Funciona exatamente da mesma forma que java (mesmo código em qualquer lugar)?

    1.    f3niX dito

      Não exatamente, mas muito semelhante, o java tem uma gama mais ampla de plataformas.

      1.    nano dito

        Pitão? Cara, o python acabou de ter instalado no pc e pronto. Em qualquer caso, também as bibliotecas (como Java) já funcionam.

        Na verdade, você só precisa instalá-lo no Windows porque ele vem por padrão no Linux e OsX ... é bastante multiplataforma.

        1.    f3niX dito

          Achei que você estava pedindo C #, compare C # com java, nunca compare python, você sabe que eu programo em Python Nano. -.-

          1.    caçador dito

            Bem, estamos na mesma página, aposto Python com tudo, digo como Google "Python quando podemos e C ++ quando devemos".

  9.   Wisp dito

    Qt4. Assim tão fácil. E que os ladrões das janelas continuem engolindo macacos.

    1.    Pandev92 dito

      http://techbase.kde.org/Development/Languages/Qyoto

      Qyoto torna possível desenvolver aplicativos Qt usando C # ou qualquer outra linguagem .NET. Qyoto usa SMOKE e oferece acesso a quase todas as classes Qt. É gratuito e de código aberto com a licença LGPL.

    2.    eliotime3000 dito

      Entre o mastodonte Java e o macaco C #, vou para o mastodonte.

  10.   Izzyvp dito

    É possível criar aplicativos usando formulários do Windows no linux com isso?

    1.    Pandev92 dito

      Sim, mas…

      Parece estranho em plataformas não Windows.

      http://www.mono-project.com/Gui_Toolkits

  11.   Rodolfo dito

    Não há necessidade de discutir sobre linguagens de programação, pois esse é o gosto, se uma é melhor que a outra, todos são livres para escolher, eu programo em java e me saio bem para mais lentas que c ++ em termos de consumo de memória honestamente. Mas pessoalmente gosto disso. Acho que um como programador tem seus princípios, mas se você quiser se desafiar, é melhor saber pelo menos um pouco sobre cada um e aqueles que você gosta ou tem mais possibilidades econômicas de aprender completamente ou dominá-los se puder. Cada idioma tem seus prós e contras. Python é uma boa linguagem, mas para grandes coisas não é suficiente como outras linguagens fariam. Portanto, depende da necessidade de cada um.
    Saudações.

  12.   irvandoval dito

    Má experiência com MonoDevelop no KDE, ele travava com frequência e eu sinto que não dá a largura para trabalhar com ASP.NET no nível de facilidade
    (eles me deixaram fazer um site com ASP.NET na universidade)

    1.    Pandev92 dito

      Não sei se você usou qtcurve para o tema, porque por exemplo sei que é um bug reconhecido.

      1.    irvandoval dito

        Se o usei e quando comecei recebi uma mensagem me avisando exatamente isso, mude qtcurve para oxigênio. Os problemas que me foram apresentados foram principalmente no autocomplete do asp

  13.   irvandoval dito

    Por curiosidade, queria instalar o monodevelop com o ppa que você postou e o pacote
    monodevelop-current está ausente dele, ao contrário de monodevelop-lastest

    1.    irvandoval dito

      * monodevelop-mais recente

  14.   marianogaudice dito

    A sintaxe do C # vence C, C ++ e Python.
    Eu mesmo fui capaz de verificar.
    Usando Mono Gtk e VALA Gtk.
    C # é a coisa mais próxima de C, mas evoluiu.
    Eu trabalhei com C ++ e a sintaxe geralmente é muito complicada se você não tiver um manual de referência, em muitos aspectos não tem nada em comum com C na sintaxe.
    C # não precisa de arquivos de cabeçalho como (C e C ++)
    A velocidade de C # e VALA é igual à de C durante a execução.
    Com C # você economiza tempo na programação, pois a sintaxe é muito simples.

  15.   Miguel dito

    Obrigado pelo workshop, estou ansioso para o próximo tópico. Espero aprender uma linguagem de programação de uma vez 😀

    1.    Pandev92 dito

      Se a Microsoft pudesse ter feito algo contra o Mono, ela já teria feito, você pode ter certeza disso. Hoje, você não corre perigo além de usar Java ou Qt.

  16.   maxiro dito

    Muito bom! mas eu tenho uma dúvida, um designer de vendas não tem um design bonito como visual studio ou qt design?

    1.    Pandev92 dito

      http://www.zimagez.com/zimage/capturadepantalla-041013-163033.php

      Claro que se xdd, por exemplo no mesmo ide em gtk xd ...

  17.   Bryan Rodriguez dito

    A instalação não é a mesma que você colocou no tutorial. Tem coisas que não ficaram claras pra mim como todas as funções que aparecem no começo mas eu não sei, não sou um profissional dessa língua.

    1.    Pandev92 dito

      Lol, como a instalação não é a mesma? Se você não conseguir encontrar o pacote monodevelop, use o synaptic, procure-o e clique duas vezes nele.

      1.    Bryan Rodriguez dito

        Já consegui instalar mas tive que digitar alguns comandos no terminal mas muito obrigado.

  18.   mss-devel dito

    .NET no Linux é uma coisa estúpida que só o hdp de Icaza criou

  19.   carlos dito

    Quero saber como instalar o .Net framework

  20.   Damian dito

    Honestamente, a postagem é de um fã do MicroShit.

    C # de plataforma cruzada? O que diabos esse homem tem em seu cérebro? Convido você a compilar o Banshee e olhar suas pastas cheias de arquivos .dll e alguns .exe Deixo o link http://banshee.fm/.

    C # não é multiplataforma nem faz o projeto mono fazer mágica, o que basicamente faz é permitir que através de suas bibliotecas depois de compilar o .exe ele possa ser executado então é necessário ter o Mono instalado para sempre, caso contrário nada pode ser executado mesmo depois Depois de compilado o programa, se a Microsoft não disse nada contra o projeto Mono é porque tem um interesse muito claro e você vê o que aconteceu com o Xamarin já que essa empresa quer se expandir para seu próprio benefício, não para o benefício dos cientistas da computação.

    Link Banshee Archlinux: https://www.archlinux.org/packages/extra/x86_64/banshee/

    Convido o proprietário da postagem a revisar as dependências e o conteúdo do pacote.