NHCC | North Hennepin Community College

Course Descriptions

CSCI 1000    Computer Basics     Credits  3         Goal Areas  n/a     View Course Outline

The students will get hands-on experience with an operating environment (the current version of Microsoft Windows) and Windows-based applications which include spreadsheets, word processors and presentation packages. The course enables students to use computers to process information and communicate using e-mail and World Wide Web.



CSCI 1020    Beginning Web Page Programming     Credits  1         Goal Areas  n/a     View Course Outline

Students learn practical techniques and principles of Website authoring; create multimedia-enhanced commercial, entertainment or educational sites; and plan site maintenance, promotion and implementation of user feedback. Prerequisite: Some experience with Microsoft Windows



CSCI 1030    Programming for Internet     Credits  3         Goal Areas  n/a     View Course Outline

This course covers the practical aspects of a programming language used for development of advanced Internet applications which include: on-line animation and interactivity, feedback, and browser control enhancements. The actual language used (JavaScript, Perl, or Java) will be chosen by the instructor. The course also includes a brief introduction to advanced HTML and SCS, uploading the site to a Web server and promoting it. Prerequisite: CSci 1000 or 1010 or 1020 or CIS 1101 or 1102



CSCI 1035    Introduction to Computer Programming with Games     Credits  4         Goal Areas  n/a     View Course Outline

This is an introductory computer programming course. The students will engage in hands-on implementation of games and simulations in a graphics-enhanced development environment. The students will learn how to transform game scenarios into algorithms and programs, create user interfaces, and incorporate multimedia. Basic computer skills are necessary for success in this class.



CSCI 1040    Beginning Microsoft SQL Server     Credits  3         Goal Areas  n/a     View Course Outline

The goal of this course is to teach students how to design, build and use databases utilizing Microsoft SQL Server. The students will also learn to enter and retrieve information. They will learn SQL commands and query creation, including complex multi-table joins, and analyze query results. Students will design their own databases and implement them on Microsoft SQL Server.



CSCI 1050    Computer Security Basics     Credits  3         Goal Areas  n/a     View Course Outline

This class examines the issues surrounding computer security in today's highly technological world. The course is designed to provide an overview of security problems: technical issues and the principles associated with databases, networks, administrative controls, privacy, operating systems and programming. The knowledge gained from this course will allow programmers, instructional designers, information technology specialists and managers to better understand a variety of issues surrounding secure computing. It is preferred that students have proficient computer skills.



CSCI 1120    Programming in C/C++     Credits  4         Goal Areas  n/a     View Course Outline

"This course continues the study of the most popular computer languages. It covers the common procedural core of C and C++ languages: data types, expressions, operators, functions, pointers, and arrays. The course also includes elements of object-oriented programming: classes and objects. Prerequisite: CSci 1130 or CSci 1150



CSCI 1130    Introduction to Programming in Java     Credits  4         Goal Areas  n/a     View Course Outline

This course provides an introduction to object-oriented programming using the Java programming language. Topics include data types, operators, operands, expressions, conditional statements, repetition, arrays, methods, parameter passing, and returning values. The course will cover applets, graphics and events handling. Students will be also introduced to classes, objects, and inheritance. Prerequisite: Math 1150



CSCI 1150    Programming in C# for .NET     Credits  4         Goal Areas  n/a     View Course Outline

This course provides an introduction to object-oriented programming using the C# programming language. The majority of the course will be on the semantics of the C# language, a major component of Microsoft .NET development environment. Topics include: Visual Studio .NET integrated development environment, selected value and reference types, control structures, operators and expressions, methods, classes, and inheritance. Completion of this class will prepare the student for advanced topics in C#. Prerequisite: Math 1150



CSCI 1160    Beginning Web Programming in ASP.NET     Credits  4         Goal Areas  n/a     View Course Outline

ASP.NET is a technology for creating web-based programs and services. This skill is in high demand on the market. This course introduces ASP.NET on the basis built in the prerequisite courses. Those courses taught the fundamentals of .NET framework, C# programming language, SQL Server database, and the primary development environment Microsoft Visual Studio. Prerequisite: CSci 1150 The main goal of this course is to teach the basics of creating and deploying Web applications utilizing ASP.NET technology. Besides using the C# programming language, the students will learn the basic ASP.NET controls included in Microsoft Visual Studio. The course includes the techniques of reading the data from a SQL Server database into a Web application and displaying it on a web page, as well as modifying and amending the database content. Pre-requisites: CSci 1150 and CSci 1040



CSCI 1180    Introduction to Linux Operating System     Credits  4         Goal Areas  n/a     View Course Outline

This course introduces Linux, a popular open-source operating system and a variety of Unix. Topics include installing and using Linux, the architecture of Linux, using the command-line shell, the file system, common utilities (including text editors), and the basics of shell scripting. Hands-on work with Linux is a central part of this class. Some experience in computer programming is recommended.



CSCI 1990    Computer Science Special Topics     Credits  1-4         Goal Areas  n/a     View Course Outline

This course will provide flexibility in offering an in-depth review of topics of immediate importance and topical interest. These topics will go beyond the introductory courses in examining specific aspects of the subject matter.



CSCI 2001    Structure of Computer Programming I     Credits  4         Goal Areas  n/a     View Course Outline

Students will learn object-oriented programming using Java. In this course, students are exposed to the concepts, fundamental syntax, and the thought processes behind object-oriented programming. The basic principles of software engineering are emphasized. By doing their own Java projects, students will develop problem-solving skills and gain experience in detecting and correcting software errors. Prerequisite: CSci 1120 or CSci 1130 or CSci 1150



CSCI 2002    Structure of Computer Programming II     Credits  4         Goal Areas  n/a     View Course Outline

This course continues using abstract data types and the concepts presented in CSci 2001 and introduces stacks, queues, linked lists, and trees. This course also covers advanced programming topics of recursion, sorting methods, and complexity measures. The object-oriented language Java will be used. Prerequisite: CSci 2001



CSCI 2010    Discrete Mathematical Structures     Credits  4         Goal Areas  n/a     View Course Outline

This course includes topics of the mathematical methods of computer science: logic, combinatorics, recursion, complexity analysis, graph theory, Boolean algebra, and mathematical induction. Prerequisite: Math 1221



CSCI 2020    Machine Architecture and Organization     Credits  4         Goal Areas  n/a     View Course Outline

As an introduction to computer organization and structure, this course includes beginning machine and assembly language programming. Topics to be covered include logic gates and Boolean algebra, basic elements of computing devices, basic components of a computer, data representation and number systems, micro operations, microprogramming, and input-output programming. Prerequisite: CSci 1030 or CSci 1090 or CSci 1120 or CSci 1130 or CSci 1150 or CSci 1190



CSCI 2030    Database Modeling and Design     Credits  4         Goal Areas  n/a     View Course Outline

This course covers relational databases from conceptual design to implementation. The course will include logical and physical design, normalization, as well as the definition of tables and indexes. The use of Structured Query Language (SQL) for data retrieval and manipulation will be emphasized. Prerequisite: CSci 1040



CSCI 2050    Internship Computer Science     Credits  3         Goal Areas  n/a     View Course Outline

The main objective of this course is to provide practical training and real work experience for the students. Often, it will include productive work contribution, and prospective employee evaluation for the employer. It can lead to increased college-industry interaction for the department and the college. Completion of this class will better prepare the student for multiple activities in a workplace. It should reflect positively on the students resume (employers view internship experiences positively.) Internship is an excellent opportunity for a student to affirm career interests. These opportunities can also provide the credentials needed for full-time positions. Internships and co-ops provide opportunities to network with professionals; strengthen confidence, maturity, and professionalism; establish professional references. Prerequisite: Enrollment in the computer science program, completion or concurrent enrollment in CSci 2002, a "B" average in all CSci courses



CSCI 2100    Introduction to Android Application Development     Credits  4         Goal Areas  n/a     View Course Outline

This course provides an introduction to developing Android applications, covering the core concepts, tools and techniques for designing, developing and releasing Android applications. By the end of the course, students will build an Android application and release it to the Google Play Store. Prerequisite: CSci 2001



CSCI 2400    Objective-C for Mobile Programming     Credits  4         Goal Areas  n/a     View Course Outline

The course teaches Objective-C programming utilizing Xcode tools package. The course explores fundamental OOP concepts. Other topics include pointers, memory management and Automatic Reference Counting. The basic Foundation Framework classes will also be introduced. After completing this course, the students will be able to write Objective-C programs suitable for mobile applications running on iPhones and iPads. Prerequisite: CSci 1120 or 1150 or 2001 with grade A



CSCI 2500    Introduction to Mobile Programming in iOS     Credits  4         Goal Areas  n/a     View Course Outline

The course teaches students how to write mobile applications for iOS-based devices, building on Objective-C fundamentals. The course will lead the students through the essential concepts, tools, and techniques for developing iOS applications. After completing this course, the students will have the knowledge and skills needed to create applications for iPhones and iPads. Prerequisite: CSci 2400 with minimum grade B