CS Courses, 2017/8




Getting Started in Computer Science at NCSSM

2017-18

Where do I start? If you have never programmed before, you should begin with any of these courses, which are designed specifically to be a starting point for someone new to programming. The only prerequisite to these classes are good critical reading skills, and an interest in computing.

These class will teach you these essentials, the Big 5, which are common to all computer languages. In all of these classes you will learn about debugging, the fine art to tracing a problem to its roots and extirpating it. They are all "hands-dirty" experiences that will ask you do DO rather than to FOLLOW..

What's the big deal? In all of these three introductory courses, you will learn about these foundational concepts, the "Big 5" of programming.

If you do not have a firm grip on the Big 5, you should start at the beginning.

I have programmed before, what do I do? The course CS424 is our Procedural Programming course. By and large, it is a skill-building experience. We will blithely assume you can cope with the Big 5. The first course is "basic training." Yeah, you can now bench 100 lbs or perform a simple plié.

This course will amp up your computing powers and challenge you with devililsh puzzles. After this, you can manage to bench 150 or to do an en pointe pas de deux.

What about AP Computer Science 'A'? To attempt to take the AP exam, you should take CS 424, 426 and 428. You can take the exam after CSC426, but you should do some work outside of class with the guide so you get the topics that are addressed in CSC 428. See the document ap.php linked on the left to learn more, and to know exactly what to do to properly prepare for the exam. Currently (2016-17) the AP 'A' exam is based upon the Java language.

What if I have scored 4 or 5 on the AP Java Exam? You can exempt procedural programming if you wish. No AP classes do the cool stuff we do with event driven GUI programming in Java FX; the 426 course is a one-of-a-kind offering which is done at NCSSM. It is also very unlikely that you know how to use lambdas or Java's functional programing interface. You need to catch the event-driven train and learn about lambdas. You will also learn about fileIO and proper exception handling. It is unlikley you have studied streams, filtering and Java's new functional programming features. These come out in CSC 428.

Life After Procedural Programming (424) You can do the any of thefollowing.