This course builds on students’ prior mastery of the basics of computer programming. It begins with a very fast-paced introduction to the Swift programming language, including more advanced features and moves on quickly to the tools and APIs for Apple’s mobile operating systems.
Computer Science
Computational technologies have significantly transformed modern society in many ways, both obvious and subtle. Few areas of life remain untouched. Living, working and contributing to society increasingly demands effective command of information technologies. In response, the Computer Science Department at St. John's aims to help each student:
- Think computationally by learning to understand, analyze, and solve problems creatively by applying a variety of strategies appropriate for computational technologies;
- Collaborate effectively with others in the course of solving significant problems;
- Program a computer and organize information effectively with one;
- Understand how computer hardware and communication systems (such as the web) are organized;
- Use information technology in an ethical and responsible way.
All high school students must complete a half credit of computer science before graduation, either Algorithmic Thinking and Computational Technologies or one of these electives: AP Computer Science Principles, AP Computer Science A, Introduction to Programming with Java, Introduction to Programming using C++, Programming in Visual Basic, or Robotics. In addition, our electives cover a wide range, from programming and robotics courses that stress problem solving, creativity, and teamwork to design courses with a more aesthetic emphasis such as web design and 3-D Drawing. In short, we strive to prepare students for the increasingly sophisticated technological world they will live in.
Computer Science Courses
This course covers the basics of the Java programming language, simple data structures, common algorithms, recursion, and sorting.
This course introduces students to the foundational concepts of computer science and challenges them to explore how computing and technology can impact the world.
Students learn about perspective rendering, hidden surfaces, and the importance of appropriate dimensioning and labeling.
This course explores the global, national, and personal impact of technology.
The course will focus on ethical and beneficial cybersecurity practices. Students in this course will learn about the history of cybersecurity and the different types of cyberattacks.
Topics covered include program mechanics, creating and editing files, function declaration and construction, simple data types, operating with arrays, building structures and object oriented programming.
In this course students will learn the basics of the Java programming language by programming simulations and games.
Our most basic introduction to programming, this course introduces students to both the process of modern application design and the basics of programming with the Swift programming language.
This course brings technology and creativity together to help students master the skills they need to produce engaging, technically advanced videos.