There is no reason as far as I can see to use the _construct method instead of just using __construct as the language intended. In other areas such as AbstractModel, it's not abstract therefore it's optional, meaning I can put my code in the logical place, __construct. In AbstractResource, however, it's an abstract method, which requires me to implement it.
From my understanding, _construct is an artifact from M1 that no longer applies.