As long as necessary to encode the behavior of objects of this class.
And inherent logic in this class is the question of the architecture of the project (project code!).
stevie.Price answered on April 7th 20 at 15:43
the code should be enough to implement embedded in the class logic execution element will be delegated exclusively to him/the object of this class
it is important to distinguish between functionality that you want implemented as part of a class. to separate flies from cutlets, as they say
the rest is a matter of architecture, as has been previously announced
johnpaul94 answered on April 7th 20 at 15:45
I read somewhere that approximately 500-1000 lines of business logic.
1. The number of rows can not depend on the quality of the code. You can have 500 lines of bad code that will not understand even the author. But if you have code, at least on DDD, then the code easier to live. And if there are tests, it is doubly better.
2. You have the code is 1500 lines due to the detailed documentation of the code. Or many rows obtained due to a large number of transmitted parameters in methods. This method have to move every parameter 1 string. @user.
3. You should not rely on the number of rows. If the code to maintain and not difficult to read, not wrapped. If it is difficult - refactoring.
In General, I advise to write the code so that it can be read as English text. To find a name for variables, methods, classes, interfaces, etc.