부모 publish가 발행 순서를 소유하고 자식은 renderBody라는 한 단계만 구현합니다.
title 검증
추상 지점
body=code
viewCount 저장
핵심: publish를 final로 두면 자식이 공통 검증·저장 순서를 우회하지 못해 템플릿 불변식이 유지됩니다.