C#

C# é uma das linguagens pertencentes ao .Net framework e é considerada o carro-chefe dentre as existentes. A versão atual da linguagem é a 4.5.

Características

C# nasceu como uma linguagem orientada a objetos e uma concorrente do Java por parte da Microsoft. Contudo, nas últimas versões vem ganhando destaque funcionalidades para o desenvolvimento de aplicações paralelas e aplicações assincronas, incorporando também elementos de linguagens funcionais.
Como Java, C# executa sobre uma máquina virtual e tem coleta de lixo automática. Além disso possui também um suporte para integrar nela linguagens dinâmicas, além de outras facilidades como, por exemplo, o entity manager, framework para facilitar o desenvolvimento de aplicações que mexem com banco de dados.

Vantagens

  • Uma Biblioteca rica e de funções úteis que já estão prontas com diversos usos como I/O, manipulação de imagens, threads, etc.
  • Evita do desenvolver ter de gerenciar a memória automaticamente
  • Contém diversos constructos semânticos que facilitam o desenvolvimento de programas como foreach, delegates, etc.
  • Disponível de graça na internet
  • Ampla gama de recursos disponíveis na internet, incluindo bibliotecas de terceiros e fóruns e sites destinados à linguagem

Desvantagens

  • A versão oficial do SDK funciona apenas em ambiente Microsoft a.k.a Windows (embora existam programas que possibilitem seu uso em outras plataformas como o Mono)
  • Proprietária (parte da especificação é aberta contudo), tendo a Microsoft os direitos sobre a linguagem.

observação: o SDK do C# é gratuito, no entanto o Visual Studio não. A versão Express do IDE não permite que se crie versão comercial de programas feitos com auxílio dele. Contudo, há outras opções de IDEs como, por exemplo o SharpDevelop para aqueles que querem desenvolver programas comerciais, sem ter que adquirir uma licença do Visual Studio.

Bibliotecas

Há diversas bibliotecas para jogo em C#. Primeiramente, para jogos 2D pode ser utilizada a API de desenho 2D que já vem junto com o SDK do .net, apesar de que há frameworks que auxiliam na tarefa de construção jde jogos 2d disponíveis na internet.
Para jogos 3D há portes de APIs gráficas de baixo nível para o ambiente C# como o SlimDX (DirectX e "outras APIs Directs", como a DirectVideo) e o OpenTK (OpenGL, OpenCL) bem como diversos engines 3D de alto nível como a NeoAxisEngine.
Um framework bem conhecido para se fazer jogos em 2D e 3D é o XNA. Para se fazer jogos pela internet existe o Silverlight.
Estas são algumas das bibliotecas existentes. Uma pesquisa mais aprofundada revelará APIs para física, áudio, manuseio de joypads, comportamentos de direção1, dentre outras necessidades.
Um empacotador que traz diversas tecnologias relacionadas a jogos e multimídia como OpenGL e OpenAL é o Tao Classic.

c#
Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-Share Alike 2.5 License.