Difference between revisions of "CoE 164 S2 AY 2023-2024"
Carl Dizon (talk | contribs) (Initial creation of page) |
Carl Dizon (talk | contribs) (Edited schedule and syllabus) |
||
Line 29: | Line 29: | ||
| 0 | | 0 | ||
| | | | ||
− | [00] Course overview | + | [00] Course overview<br> |
[00] Course requirements | [00] Course requirements | ||
| | | | ||
| | | | ||
− | |||
− | |||
|- | |- | ||
| 1 | | 1 | ||
| | | | ||
− | [01] Rust: | + | [01] Rust: First program<br> |
− | [01] Rust: | + | [01] Rust: Language basics<br> |
− | [01] Rust: | + | [01] Rust: Functions and control |
| | | | ||
− | |||
− | |||
− | |||
− | |||
| | | | ||
|- | |- | ||
| 2 | | 2 | ||
| | | | ||
+ | [02] Rust: Data ownership<br> | ||
[02] Rust: Advanced data structures<br> | [02] Rust: Advanced data structures<br> | ||
− | [02] Rust: | + | [02] Rust: Error handling |
| | | | ||
− | |||
− | |||
− | |||
− | |||
| | | | ||
|- | |- | ||
Line 63: | Line 54: | ||
[03] Rust: OOP features<br> | [03] Rust: OOP features<br> | ||
[03] Rust: Generic types<br> | [03] Rust: Generic types<br> | ||
− | [03] Rust: | + | [03] Rust: Lifetimes |
| | | | ||
− | |||
− | |||
| | | | ||
|- | |- | ||
| 4 | | 4 | ||
| | | | ||
− | [04] Rust: | + | [04] Rust: Pointers<br> |
+ | [04] Rust: Modules and crates<br> | ||
+ | [04] Rust: Unit tests<br> | ||
[04] Test-driven development | [04] Test-driven development | ||
| | | | ||
Line 78: | Line 69: | ||
| 5 | | 5 | ||
| | | | ||
+ | [05] Rust: Iterators<br> | ||
| | | | ||
| | | | ||
|- | |- | ||
| 6 | | 6 | ||
− | | colspan="3" | <div style="text-align: center;">''' | + | | colspan="3" | <div style="text-align: center;">'''LENTEN BREAK'''</div> |
|- | |- | ||
| 7 | | 7 | ||
− | | colspan="3" | <div style="text-align: center;">''' | + | | colspan="3" | <div style="text-align: center;">'''READING BREAK'''</div> |
|- | |- | ||
| 8 | | 8 | ||
Line 94: | Line 86: | ||
| 9 | | 9 | ||
| | | | ||
− | |||
| | | | ||
− | |||
− | |||
| | | | ||
− | |||
− | |||
− | |||
|- | |- | ||
| 10 | | 10 | ||
Line 115: | Line 101: | ||
| 12 | | 12 | ||
| | | | ||
− | |||
− | |||
| | | | ||
| | | | ||
− | |||
− | |||
|- | |- | ||
| 13 | | 13 | ||
| | | | ||
+ | [13] Rust: Unsafe mode<br> | ||
+ | [13] Rust: Concurrency<br> | ||
+ | [13] Rust: SIMD | ||
| | | | ||
| | | | ||
Line 146: | Line 131: | ||
= Grading Rubric = | = Grading Rubric = | ||
50% Software exercises (SE)<br> | 50% Software exercises (SE)<br> | ||
− | + | 20% Midterm project (MidP)<br> | |
− | + | 30% Capstone project (CP) | |
= Completion Requirements = | = Completion Requirements = | ||
− | Students are required to fulfill the following requirements for course completion. Failure to fulfill any of these requirements will result in receiving an INC in the course | + | Students are required to fulfill the following requirements for ''course completion''. Failure to fulfill any of these requirements will result in receiving an INC (with passing standing) or 5.0 (with failing standing) in the course |
* Submit half of the SEs offered throughout the semester | * Submit half of the SEs offered throughout the semester | ||
+ | ** If the SE has multiple components, each component is counted as one of the SEs for this purpose. | ||
+ | ** E.g. SE01 which has two components SE01A and SE01B, are counted as two for this requirement. Hence, you can opt to submit SE01A, SE01B, none, or all of them. | ||
* Submit the MidP | * Submit the MidP | ||
* Submit the CP | * Submit the CP |
Revision as of 17:35, 6 February 2024
Contents
Course Information
Academic Period: 2nd Semester AY 2023-2024
Units: 1 (3 laboratory)
Workload:
- 3 hours laboratory per week
Instructors:
- Carl C. Dizon [carl.dizon at eeemail]
- Carl Lester V. Fabian [carl.lester.fabian at eeemail]
Course Description: This is an advanced laboratory course on the application of the concepts, methodologies, skills, and tradeoffs in designing/building computing systems to solve challenging problems, in an efficient and structured way.
Synopsis: This course aims to 1) build and evaluate efficient computing platforms, 2) present algorithms, methods, and tools needed to solve challenging problems, and 3) practice sound engineering judgement in solving engineering problems.
Delivery Method: Digital materials and open-time laboratory sessions
Online Platforms: UVLe, Piazza, Google Meet, Zoom, other quiz platforms, other code submission platforms.
Course Guidelines: [syllabus]
Grade Lookup: Google Apps Script
Course Outline
Week | Topics | Academic Requirements | Resource Links |
---|---|---|---|
0 |
[00] Course overview |
||
1 |
[01] Rust: First program |
||
2 |
[02] Rust: Data ownership |
||
3 |
[03] Rust: OOP features |
||
4 |
[04] Rust: Pointers |
||
5 |
[05] Rust: Iterators |
||
6 | LENTEN BREAK
| ||
7 | READING BREAK
| ||
8 | |||
9 | |||
10 | |||
11 | |||
12 | |||
13 |
[13] Rust: Unsafe mode |
||
14 | |||
15 | |||
16 | FINALS WEEK
| ||
17 | FINALS WEEK
|
Grading Rubric
50% Software exercises (SE)
20% Midterm project (MidP)
30% Capstone project (CP)
Completion Requirements
Students are required to fulfill the following requirements for course completion. Failure to fulfill any of these requirements will result in receiving an INC (with passing standing) or 5.0 (with failing standing) in the course
- Submit half of the SEs offered throughout the semester
- If the SE has multiple components, each component is counted as one of the SEs for this purpose.
- E.g. SE01 which has two components SE01A and SE01B, are counted as two for this requirement. Hence, you can opt to submit SE01A, SE01B, none, or all of them.
- Submit the MidP
- Submit the CP