[[_homogeneous, `class G`], _rational]
Book solution method
Change of Variable, new independent variable
Mathematica ✓
cpu = 0.164489 (sec), leaf count = 50
Maple ✓
cpu = 0.085 (sec), leaf count = 37
DSolve[b*y[x] + x*(a + x*y[x]^n)*y'[x] == 0,y[x],x]
Mathematica raw output
Solve[(n*(b*Log[x] + a*Log[(a - b*n)*y[x]] - b*Log[a - b*n + x*y[x]^n]))/(-a + b
*n) == C[1], y[x]]
Maple raw input
dsolve(x*(a+x*y(x)^n)*diff(y(x),x)+b*y(x) = 0, y(x),'implicit')
Maple raw output
(y(x)^n)^a/((x*y(x)^n-b*n+a)^(b*n))*x^(b*n)-_C1 = 0