Jestem nieco zdezorientowany, do czego powinien być używany plik .hrl
. Rozumiem, że pliki .hrl
mogą zawierać dowolny poprawny kod Erlang i że przy użyciu dyrektywyzasadniczo wstawi się kod w pliku .hrl
do dowolnego modułu, który go zawiera.Co powinno i nie powinno być w pliku nagłówkowym Erlang (.hrl)?
Jaki kod jest odpowiedni do umieszczenia w tych plikach .hrl
? Zasady programowania Erlang jest podać następujące dane w odniesieniu do zapisów:
Jeśli rekord ma być używany w kilku modułów, jego definicja powinna być umieszczona w pliku nagłówkowym (z przyrostkiem .hrl), który znajduje się z modułów.
W rezultacie utworzyłem zwyczaj robienia tego w moim kodzie. Jednak lubię umieszczać rzeczy takie jak instancjonowanie i funkcje porównawcze dla rekordów, jak również definicje typów w moich nagłówkach (ponieważ jest to coś, co robiłbym w C). Czy to zła forma? Czy zamiast tego typy powinny być eksportowane z pliku .erl
, nawet jeśli są używane w wielu modułach? Wydaje się, że nie ma dokumentacji dotyczącej najlepszych praktyk dotyczących nagłówków Erlang.