Please Enter Your Login Information.




This page is password protected, Enter your access code below.




 

Programming Languages Used in Specific Courses

 
A thorough understanding of computer programming requires an understanding of the nature of computer software. Direct experience in the design and coding
of software pave the path to that understanding.   The core three-course sequence, CSC 110, CSC 115, and CSC 260, required of all CS majors provides that experience by using the latest versions of the Java programming language and Java development tools to illustrate the most important modern programming concepts. 
 
While software design methodologies and fundamental concepts of programming are
independent of the language used to implement the designs, the language used for instruction must be carefully chosen based on three important qualities: (1) ease of learning, (2) encouragement of systematic and disciplined (i.e., "good") programming habits, and (3) holding value in the current and future employment marketplace.   In the core course sequence of CSC110, CSC115 and CSC260, ease of learning and establishment of good habits are given higher priority, while in more specialized upper level courses, current marketplace value may play a more significant role. 
 
The programming language now used in the
core sequence is Java, a general purpose programming language that can be used to solve a wide range of problems in diverse areas, e.g. web programming, stand-alone application development, enterprise systems, game development, mobile computing, and embedded systems. Object-oriented concepts and techniques are introduced early and applied throughout the sequence. 
 
For those entering students who do not feel ready to tackle the first required Computer Science course that focuses on programming (CSC110), a preliminary course ITC 190 Preprogramming, is available to provide preparatory experiences in problem solving and systematic reasoning.   The choice of programming language in this course is governed by ease of learning.
Languages such as the latest version of Alice are among the tools used in this course. 
 
Upper-level requirements for CS majors include proficiency in a second programming language. CS majors have the following options of selecting their second programming language:

  • One option is to learn a non-OO (object-oriented) programming language. The procedural programming language C is used in the course CSC 273 "Advanced Applications of C", a course dealing with the current industrial usage of one of the most popular programming languages.
  • Another option to learn a non-OO programming language is the course CSC 278 "Scripting Techniques". This course presents rapid application development (RAD) techniques and their implementation using such modern scripting languages as JavaScript, Python, PHP, and/or Perl.
  • C++ remains one of the most valued languages in today's job market, and this is the language most often used in the course CSC 311 "Object Orientation and Problem Solving Strategies".   The object orientation aspect here deals mainly with concepts and tools such as design patterns and frameworks, and with the use of extensive available libraries such as STL (the Standard Template Library).
  • Students can take CSC 325 "Advanced Programming Techniques" to learn cutting edge modern programming techniques and to enhance their knowledge of OOP methodologies. Currently this course is based on the latest version of Microsoft's C# programming language and the .NET framework.
  • Another course with a heavy programming load is CSC 212 "Human-Computer Interfaces". This course presents a substantial amount of conceptual material and a large selection of valuable software technologies with which to implement that material. Currently this course uses the latest versions of C#, .NET and MVC to address these topics.