Can a student gradebook be created without a custom module? I'm confused about when I need to build a module.  I'm using Drupal 8.  If I create a content type of a student, class, grades and so on, can that be done without a custom module?  Can it be done solely with content type and views?
I think no. You need content type and views as you write. I think that you also need to use taxonomy (for year and class) so you can assign students to years and class. For calculation you need to write some module, maybe you can do also that in view.

Try the Computed field module.


  Computed Field is a very powerful field module that lets you add a custom "computed fields" to your content types. These computed fields are populated with values that you define via PHP code. You may draw on anything available to Drupal, including other fields, the current user, database tables, you name it. (Feeling the power yet? :) ) You can also choose whether to store your computed field values in the database with other content fields, or have them "calculated" on the fly during node views. (Although you should note that Views use requires database stored values.) This field is literally the Swiss Army knife of fields. So start cooking up your PHP based values!