ACS 4390 Query Languages explores modern alternatives to REST. In this class you will learn to use languages that facilitate communication between client and server applications, expand and improve on the tired and frustrating REST paradigm.
Query languages solve many of the problems of REST. Modern query languages such as GraphQL were made with the goal of solving all of the problems of REST.
Using Modern query languages, you will be able to define requests at your client and receive only the data you requested. Imagine making multiple nested requests with a single query and only receiving the data you asked for. Query languages are the future of web APIs and are currently used by hundreds of companies like: FaceBook/Meta, Twitter, GitHub, AirBnB, Coursera, Intuit, Lyft, Paypal, Pinterest, and more.
Learn GraphQL the better replacement for REST! Invented at Facebook to solve problems imposed by REST. GraphQL is an open source alternative that offers a new way of managing network resources.
GraphQL provides many advantages over REST. It's used by all of the biggest services.
FaceBook, Coursera, GitHub and many others
GraphQL is built with a schema and strong types. GraphQL provides reliablity through it's strong typing system. GraphQL provides a solution to over fetching and unders fetching data, and allows front end requests to determine what data is returned from an endpoint.
If you want to work with a future of network resources learn GraphQL.
Course Delivery: online | 7 weeks | 14 sessions
Course Credits: 3 units | 37.5 Seat Hours | 75 Total Hours
- Senior Standing
- Instructor Approval
Students by the end of the course will be able to ...
- Compare GraphQL with REST
- Describe the Features of the GraphQL language
- Write a basic GraphQL Query and Schema
- Implement GraphQL in a CRUD Application
Course Dates: Tuesday, January 21 – Thursday, Mar 7, 2024
Class Times: Tuesday and Thursday at 4:00 PM - 6:45 PM
Class | Date | Topics | Assignment |
---|---|---|---|
1 | Tue, Jan 21 | Lesson 1 - GraphQL Intro | SWAPI Query Challenges |
2 | Thu, Jan 23 | Lesson 2 - GraphQL Schemas and Types | GraphQL Resolver Challenges |
3 | Tue, Jan 28 | Lesson 3 - GraphQL + Express | GraphQL OpenWeatherMap API |
4 | Thu, Jan 30 | Lesson 4 - React Intro | React GraphQL Weather |
5 | Tue, Feb 4 | Lesson 5 - React and GraphQL | - |
6 | Thu, Feb 6 | Lesson 6 - GraphQL Mutations | - |
7 | Tue, Feb 11 | Lesson 7 - Websockets | Subscriptions |
8 | Thu, Feb 13 | Lesson 8 - Subscriptions | - |
9 | Tue, Feb 18 | Lesson 9 - Subscriptions Lab | GraphQL Hackernews |
10 | Thu, Feb 20 | Lesson 10 - Advanced Queries | - |
11 | Tue, Feb 25 | Lesson 11 - Lab | - |
12 | Thu, Feb 27 | Lesson 12 - GraphQL ORM | - |
13 | Tue, Mar 4 | Final Presentations | - |
14 | Thu, Mar 6 | Final Assessment | - |
- Class 1 - Start: Tues. Jan 21 Due: Thurs. Jan 23
- Watch How To GraphQL (first 4 sections)
- Answer Questions on Gradescope
- Due Class 2
- Class 2 - Start: Thurs. Jan 23 Due: Tues. Jan 28
- Watch How to GraphQL (remaining videos)
- Complete challenges in Lesson-2 #challenges
- Submit to GradeScope
- Due Class 3
- Class 3 - Start: Tues. 28 Due: Thrus. Feb 14
- OpenWeatherMap graphQL API
- Complete the challenges in Lesson-3
- Submit to GradeScope
- Due Class 5
- OpenWeatherMap graphQL API
- Class 4 - Start: Thurs. Jan 30 Due: Thurs. Feb 6
- Lab for assignment 3
- GraphQL Express server and Mutations
- Complete the challenges in Lesson-4
- Submit to Gradscope
- Class 5 - Lab day for assignment 3 and 4
- Class 6 - Start: Thurs. Feb 6 Due: Thurs. Mar. 6
- How to GraphQL tutorial
To pass this course you must meet the following requirements:
- Complete all required tutorials
- Pass all projects according to the associated project rubric
- Pass the final summative assessment >=75%
- Actively participate in class and abide by the attendance policy
- Make up all classwork from all absences
Just like any job, attendance at Make School is required and a key component of your success. Attendance is being onsite from 9:30 to 5:30 each day, attending all scheduled sessions including classes, huddles, coaching and school meetings, and working in the study labs when not in a scheduled session. Working onsite allows you to learn with your peers, have access to support from TAs, instructors and others, and is vital to your learning.
Attendance requirements for scheduled sessions are:
- No more than two no call no shows per term in any scheduled session.
- No more than four excused absences per term in any scheduled session.
Failure to meet these requirements will result in a PIP (Participation Improvement Plan). Failure to improve after the PIP is cause for not being allowed to continue at Make School.
Any additional resources you may need (online books, etc.) can be found here. You can also find additional resources through the library linked below: