C言語プログラミング実践:純粋性、速度、正確性

2025-09-18

このドキュメントは、C言語プログラミングの実践に関するメモで、コーディングスタイル、関数名と変数名の命名規則、フォーマット、コメント、ビットカウントやループアンローリングなどのC言語の便利なテクニックを網羅しています。著者は、コードの純粋性、速度、正確性を追求することの重要性を強調し、ヘッダーファイル、コンパイラの効果的な利用、GOTO文の使用など、一般的なプログラミングパラダイムの見直しに関する洞察を提供しています。目的は、C言語プログラミングの品質と効率性を向上させることです。

続きを読む
開発

データベーステーブル名:単数形か複数形か?

2025-09-09

データベース設計において、テーブル名を単数形にするか複数形にするかという議論がしばしばあります。複数形(usersなど)は直感的ですが、著者によると、単数形(userなど)の方がSQLのJOIN句などで可読性が向上し、ORMによる自動複数形化による不整合を防ぎ、スキーマの一貫性を保つ上で有利です。そのため、単数形を使用することを推奨しています。

続きを読む
開発

コードの各行は潜在的なバグです

2025-02-27

プログラマがマルチスレッドプログラムのコード効率を最適化しようと、待機時間を固定の1秒から残りの時間に変更しました。この一見単純な最適化によって、潜在的なバグが導入されました。負の時間の計算が例外を引き起こす可能性があるのです。これは重要な点を示しています。コードは簡潔に保つべきであり、不要な最適化は避けるべきです。なぜなら、各行が潜在的なバグを導入するからです。過剰な最適化は効率を向上させるどころか、複雑さとリスクを増大させます。

続きを読む
開発