|Thomas Jefferson High School for Science and Technology, a regional Governor's school in Northern Virginia, offers five years of Computer Science. Our goal is to provide a world class Computer Science education to our students and to disseminate curriculum materials to other academic institutions.|
|Information for Rising 9th Grade Students||Flow Chart of Computer Science Courses 2013-2014||TJHSST Course Offering Online Guide|
Foundations of Computer Science|
Foundations of Computer Science is for students without programming experience. The course introduces object-oriented programming, graphics and animation, GUI interfaces, arrays and files, sorting, recursion, data representation, Boolean logic, and ethics. The course is lab-based with an emphasis on cooperative learning and developing problem-solving skills. The course is taught in Java.
Students interested in "testing
out" of Foundations of Computer Science, and "testing into" AP Computer
Science plus Data Structures should follow the directions on these
Accelerated Computer Science|
Accelerated Computer Science is for freshmen who have completed a year of programming experience before TJ but are not yet ready for APCS A plus Data Structures. Students who sign up for Accelerated CS should already be writing programs as a hobby. Such students should know that they want to take four years of computer science courses at TJ, ending with a senior project in the Systems Lab. Students will solve computational problems by applying the principles of computer science, including abstraction, object-oriented programming, algorithmic thinking, data processing, modeling, and simulation. The course is taught in Python.
|AP Computer Science A plus Data Structures
This course is a standard second-semester college course on algorithms and data structures in an object-oriented environment. The sorting algorithms include selection, insertion, merge, quick, and heap. The data structures include arrays, recursion, linked lists, stacks, queues, trees, sets, maps, and graphs. Additional topics include the Java Collections framework, Big-O analysis, and class design. Java is the language of instruction. Students taking this course should be independent thinkers able to spend a significant amount of time at a computer outside of class. Since this class prepares students for TJ's follow-on courses, it includes college material going well beyond the topics tested by the College Board's Advanced Placement Computer Science A exam. Textbook: Lambert & Osborne, Fundamentals of Java: AP Computer Science Essentials for A and AB Exams. (3rd ed.), Thompson, 2006. Lost book price: $126.00. Prerequisite: Foundations of Computer Science or Accelerated Computer Science.
Artificial Intelligence 1 & 2|
These half-credit semester courses teach the standard techniques in Artificial Intelligence. The language is Python in a Linux environment. These courses carry the same extra grade point value as an AP course. Prerequisite: AP Computer Science plus Data Structures
Parallel Computing 1 & 2|
These half-credit semester courses teach the concepts and techniques in parallel computing. The language is C with MPI and OpenGL in Linux and SolarisHalf. Other systems taught include CUDA, OpenMP and XMT-C. These courses carry the same extra grade point value as an Honors course. Prerequisite: AP Computer Science plus Data Structures
Senior Tech Lab|
This course in Computer Systems Research satisfies the Technology Independent Research credit that is required for graduation from TJ. This course carries the same extra grade point value as an Honors course.
|TJ Home Page||HTML Tutorial||Pretty Colors|