C# está ficando cada vez mais poderosa … e isso pode ser um problema!

Já foi possível aprender C# em poucas horas. Esse tempo passou! A especificação da linguagem tem ficado cada vez maior e novas features continuam sendo adicionadas rotineiramente. Se, por um lado, a linguagem está cada vez mais relevante, de outro, atingimos um ponto em que são raros os programadores que conhecem C# plenamente  e, mesmo estes, tem dificuldades de utilizar eficientemente todo seu potencial. Este aspecto não pode ser ignorado, sobretudo em ambiente corporativo.

O sucesso de C# faz com que ela seja adotada no desenvolvimento de soluções para cenários muito distintos. Embora a linguagem seja, ainda, majoritariamente utilizada para o desenvolvimento de aplicações empresariais (LoB), ela também vem sendo adotada para o desenvolvimento de soluções em nível mais baixo – como no desenvolvimento de compiladores, jogos, engines de bancos de dados, proxys reversos – e de nível mais alto, como linguagem de scripts.

Desde sua criação, a linguagem já foi ampliada para suportar melhor o desenvolvimento de aplicações com execução paralela ou concorrente (por exemplo, com async e await), permitir gestão mais eficiente de memória (por exemplo, com tuplas e ref structs) e, recentemente, para ajudar programadores a tornar seus códigos mais expressivos impedindo que um erro extremamente comum e, consequentemente, custo continuasse sendo cometido (nullable reference types).

C# também está superando barreiras quanto a ambientes de execução. Hoje, ela é usada para escrever código que roda em servidores poderosos – on-premises e na nuvem, desktops, dispositivos móveis, browser e dispositivos leves. Cada um desses ambientes oferecendo desafios inéditos e inspirando, ainda, o surgimento de mais features na linguagem.

Já é bem comum que programadores utilizem a linguagem diariamente conhecendo um subset bem reduzido da especificação. A consequência dessa ignorância é que categorias inteiras de problemas poderiam estar superados e não estão – ao contrário, causam prejuízos crescentes. Nessa mesma linha, os custos para formação de bons programadores na linguagem estão crescendo.

Sempre houve certa interdependência entre a linguagem, seu compilador e o framework. Entretanto, nos últimos tempos, essa interdependência está ficando, naturalmente, maior. A implicação disso é que programadores precisam entender essas interdependências para poder determinar o que pode e o que não pode ser utilizado.

Dependendo do subset de features da linguagem que um programador conhece e utiliza, seu código se torna mais ou menos compreensível para outros programadores no time. Se, por exemplo, ele utilizar intensamente features destinados a fazer melhor uso da memória, beneficiando a performance, utilizará recursos que não são conhecidos pela maioria dos programadores.

A popularidade, longevidade e o poder crescente de C# está fazendo com que ela comece a sentir “dores” parecidas com C++. Esse é um problema em potencial que não podemos ignorar.

Em ambiente corporativo, é importante que consideremos como desenvolver os profissionais, garantindo que as features que fazem diferença sejam conhecidas e utilizadas por todos. Algumas features novas tornam as outras, antigas, irrelevantes, embora compatíveis. Por isso, é importante que o código “mantenha o frescor”. Finalmente, é necessário vigiar para que não se produza código “inteligente demais” – complexo em demasia sem benefício percebido.

Compartilhe este insight:

Comentários

Participe deixando seu comentário sobre este artigo a seguir:

Subscribe
Notify of
guest
1 Comentário
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
Patrick
Patrick
4 anos atrás

E este poder tende a aumentar muito nos próximos anos. Cabe aos desenvolvedores se manterem atualizados na linguagem e proporcionarem discussões com as equipes para executarem refactor em pontos onde as novas features se aplicam a fim de utilizarem os melhores recursos e manter a linguagem sempre viva.

Excelente post!

AUTOR

Elemar Júnior
Fundador e CEO da EximiaCo atua como tech trusted advisor ajudando empresas e profissionais a gerar mais resultados através da tecnologia.

NOVOS HORIZONTES PARA O SEU NEGÓCIO

Nosso time está preparado para superar junto com você grandes desafios tecnológicos.

Entre em contato e vamos juntos utilizar a tecnologia do jeito certo para gerar mais resultados.

Insights EximiaCo

Confira os conteúdos de negócios e tecnologia desenvolvidos pelos nossos consultores:

Arquivo

Pós-pandemia, trabalho remoto e a retenção dos profissionais de TI

CTO Consulting e Especialista em Execução em TI
EximiaCo 2024 - Todos os direitos reservados
1
0
Queremos saber a sua opinião, deixe seu comentáriox
()
x

Muito obrigado!

Deu tudo certo com seu envio!
Logo entraremos em contato

C# está ficando cada vez mais poderosa … e isso pode ser um problema!

Para se candidatar nesta turma aberta, preencha o formulário a seguir:

C# está ficando cada vez mais poderosa … e isso pode ser um problema!

Para se candidatar nesta turma aberta, preencha o formulário a seguir:

Condição especial de pré-venda: R$ 14.000,00 - contratando a mentoria até até 31/01/2023 e R$ 15.000,00 - contratando a mentoria a partir de 01/02/2023, em até 12x com taxas.

Tenho interesse nessa capacitação

Para solicitar mais informações sobre essa capacitação para a sua empresa, preencha o formulário a seguir:

Tenho interesse em conversar

Se você está querendo gerar resultados através da tecnologia, preencha este formulário que um de nossos consultores entrará em contato com você:

O seu insight foi excluído com sucesso!

O seu insight foi excluído e não está mais disponível.

O seu insight foi salvo com sucesso!

Ele está na fila de espera, aguardando ser revisado para ter sua publicação programada.

Tenho interesse em conversar

Se você está querendo gerar resultados através da tecnologia, preencha este formulário que um de nossos consultores entrará em contato com você:

Tenho interesse nessa solução

Se você está procurando este tipo de solução para o seu negócio, preencha este formulário que um de nossos consultores entrará em contato com você:

Tenho interesse neste serviço

Se você está procurando este tipo de solução para o seu negócio, preencha este formulário que um de nossos consultores entrará em contato com você:

× Precisa de ajuda?