all Computer Science classes are year-long & weighted tech electives
Start with Introduction To Computer Science or AP Computer Science?
It can be difficult to determine which computer science course you should start with. Both courses are weighted classes. The Introduction to CS class gives students a broad exposure to various concepts and several languages and environments. It does not require any prior programming experience. The AP CS class is for students that are pretty sure they will continue in Computer Science and have a good idea of what to expect. In our experience a rigorous middle school Computer Science class, in which a student develops their logic and debugging skills, prepares a student to succeed in AP CS as a freshman. However, very few Computer Science summer camps appear to have such rigor. The Caesar Cipher Lab from our Introduction to CS class is a good indicator of the level of experience you should have before you take the AP Computer Science class.
The Introduction to Computer Science course gives students a broad overview of computer science and an in depth exposure to procedural programming in Python. The course teaches students how solve problems logically and efficiently, as well as be persistent debuggers. The course does not require or expect any prior programming experience. Basic programming structures are introduced using Scratch and Jeroo. However, the majority of the course consists of an in depth study of fundamental procedural programming concepts and data structures in Python. Furthermore the course covers various text and graphic data representations. The course concludes by programming an arduino controlled LED light sculpture and writing code for Google Apps such as Gmail & Google Docs. Website for last year’s class. Students receive college credit for this class via ATC.
The AP Computer Science course gives students a rigorous study of object oriented programming and various searching and sorting algorithms using JAVA exclusively. Students have the option of taking the AP test in May. Whereas some students have successfully taken AP CS as freshmen and/or with little or no prior programming experience, it may require significantly more time to be successful in the class. Website for last year’s class.
AP Computer Science ( overview )
Grade Placement: 9-12 Credit: 1.0
Prerequisite: Introduction to Computer Science or Programming experience suggested
for description see above Start with Introduction To Computer Science or AP Computer Science?
Digital Electronics ( overview )
Grade Placement: 10–12 Credit: 1.0
Prerequisite: Introduction to Computer Science or AP Computer Science or Teacher Approval
The transistor, arguably the single most important invention in the last 100 years, has ignited a series of changes that has changed the way people do their jobs, pay their bills, communicate, as well as educate and entertain themselves. Starting with fundamental concepts of electricity, students will learn how transistors operate and can be used to construct everything from simple logic gates to complex processors. Students will explore resistive, capacitive, basic arduino, as well as many logic circuits in hands on projects and simulations. The major project is the design and simulation of a pipelined microprocessor. Students will work alone and in small groups, utilizing tools such as a breadboard, a multimeter, an arduino, an oscilloscope, the SPICE circuit simulator, the Logisim logic simulator, a logic analyzer, an ARM assembly language simulator, and a FPGA programming platform in their projects.
Web and Mobile Applications ( overview )
Grade Placement: 10–12 Credit: 1.0
Prerequisite: Introduction to Computer Science or AP Computer Science
Advanced Computer Science ( overview )
Grade Placement: 10-12 Credit: 1.0
Prerequisite: AP Computer Science
Algorithms and data structures emphasizes the following topics: data structures, abstract data types, recursive algorithms, algorithm analysis, sorting and searching, and problem-solving strategies. This course introduces students to the concept of data structures through abstract data structures including lists, sorted lists, stacks, queues, deques, sets/maps, directed acyclic graphs, and graphs; and implementations including the use of linked lists, arrays, binary search trees, M-way search trees, hash tables, complete trees, and adjacency matrices and lists. This course introduces students to algorithms design including greedy, divide-and-conquer, random and backtracking algorithms and dynamic programming; and specific algorithms including, for example, resizing arrays, balancing search trees, shortest path, and spanning trees.
Grade Placement: 11-12 Credit: 1.0
Prerequisite: Must be preceded by Advanced Computer Science and either Digital Electronics or Web & Mobile Applications or by only Advanced Computer Science with teacher approval. Can be taken concurrently with Adv Computer Science, Digital Electronics, or Web & Mobile Applications.
If you have exhausted the entire Computer Science Curriculum at LASA and you want to explore more about Computers then this course is the right fit for you. Students write a software or hardware project proposal and then work on their projects. They also have to present their work to their peers and teach each other more complex Computer Science concepts.