4 pontos por GN⁺ 2023-10-10 | 1 comentários | Compartilhar no WhatsApp
  • O autor discute seu estilo pessoal de programação em C até o fim de 2023, destacando mudanças importantes e melhorias nas técnicas.
  • O autor passou a usar nomes curtos para tipos primitivos e descobriu que isso aumenta a clareza e torna a revisão de código mais agradável.
  • O autor fornece exemplos da nova convenção de nomes para tipos primitivos, como typedef uint8_t u8; e typedef char16_t c16;.
  • O autor adotou letras minúsculas para macros que parecem funções, pois isso é fácil de ler e não traz os mesmos problemas de namespace de outras definições de macro.
  • O autor parou de usar const, pois concluiu que isso não tem um papel prático na otimização e não consegue detectar erros. Ele acredita que sua inclusão em C foi um erro.
  • O autor rejeitou strings terminadas em nulo e adotou um tipo de string básico, considerando-o mais produtivo.
  • O autor prefere retornar structs em vez de usar parâmetros de saída, o que permite retornar vários valores de forma eficaz.
  • O autor prefere inicializar com atribuições em vez de inicializadores, exceto pelo inicializador zero tradicional.
  • O autor prefere __attribute a __attribute__, considerando esta última forma exagerada e desnecessária.
  • Para programação de sistemas Win32, o autor recomenda escrever manualmente os protótipos usando tipos personalizados para reduzir o tempo de build, organizar o namespace e fazer interface com o programa de forma mais limpa.
  • O autor apresenta exemplos de estilo de programação em pequenos programas como wordhist.c e asmint.c.

1 comentários

 
GN⁺ 2023-10-10
Opinião do Hacker News
  • Artigo sobre o estilo pessoal de programação em C do autor no fim de 2023.
  • Alguns comentaristas discordam da forma como o autor define seus próprios tipos, argumentando que isso pode confundir quem já está acostumado com os tipos de C.
  • Há controvérsia sobre o uso de ALL_CAPS para constantes, e alguns defendem que isso deveria ser reservado para macros do pré-processador.
  • Há críticas ao uso de tamanhos com sinal pelo autor, e alguns comentaristas afirmam que tamanhos sem sinal são menos propensos a defeitos.
  • O afastamento do autor de convenções existentes, como usar u8 ou i32 em vez de uint8_t ou int32_t, parece poder gerar confusão para outras pessoas.
  • Alguns comentaristas dizem que a abordagem do autor parece mais focada em preferência pessoal do que em tornar o código C fácil para todos trabalharem.
  • Há questionamentos sobre o uso de booleanos de 32 bits pelo autor, e alguns argumentam que isso desperdiça memória sem trazer vantagens claras.
  • Existem preocupações com a suposição do autor de que float tem 32 bits e double tem 64 bits, o que parece poder causar problemas em potencial.
  • O conceito de "estilo pessoal" na programação parece poder ser problemático, já que programar é, em última análise, uma atividade social, inclusive em projetos de hobby.
  • Alguns comentaristas discordam da preferência do autor por structs em vez de parâmetros de saída, argumentando que isso dificulta a composição de funções e leva à proliferação de tipos.
  • O artigo provoca uma discussão sobre diferentes estilos e abordagens de programação, destacando a diversidade de opiniões na comunidade de programação.