Программирование на C ++. Мой предпочтительный стиль - A, где акцент делается на API, которым обладает класс. Примерно так:
class SomeClass
{
public:
void foo();
void bar(int i);
private:
int m_i;
};
Здесь важна интерфейс этого класса, поэтому читатель может быстро это увидеть. Из-за инкапсуляции можно даже подумать, что частные части не так важны, чтобы видеть первыми, и, следовательно, должны быть последними (позже).
С другой стороны, например, (низкоуровневая) структура сообщения. Я мог бы поспорить за противоположное, когда участники первыми предоставят читателю эту информацию, так как это может быть самой важной. Как то так:
struct SomeMessage
{
uint64_t m_id;
int32_t m_number;
char m_name[16];
explicit SomeMessage(uint64_t id);
};
Все сводится к тому, как мне нравится находить информацию, которой я верю. Единственное, что я считаю важным, - это быть последовательным и не смешивать все условности.