True, but it's a single subtraction, there's no real point to stick that private variable on the object. Also, if someone changes bufferSize halfway through (not advisable, but not impossible), we have no way to update datasize. It also makes the code a tad more readable down below, because it won't use `that` or the underscore.