A clear path to help you “advance” in programming

{SUTAP} Sharif University of Technology
Advanced Programming course

Duration

20 Hours

Exercises

4+2 Extras

TAs

45

Students

170+

FOP 2021 - Sharif

This course is a complete introduction to programming by C, suitable for both students with no prior knowledge to programming, and experts who want to practice programming more.
All videos and contents are recorded and saved during the first semester of 1399-1400, which include lecture videos, TA and problem solving classes, programming project workshops, assignments, project documents and CodeNameh newsletter weekly issues.
One can easily follow the provided flow to learn all the fundamentals of programming in C, exactly as provided to students of the best university in the country (QS 2017-present).

  • Processing in Computers
  • Introduction to Algorithms
  • C Programming Language
  • Control Flow in Programming
  • Recursive Programming
  • Data Structures and Arrays
  • Pointers and Structs

What's Included

20
Hours
6
Exercises
45
Assistants
170+
Students

Course Content

Requirements :

2.3 Solving Exercises on Numbers, Algorithms and Flowcharts TA Video
Instructors: Ali Shirmohammadi, Ashkan Khademian, Alireza Honarvar, Seyed Parsa Neshaei
Requirements :

2.3 Solving Exercises on Numbers, Algorithms and Flowcharts TA Video
Instructors: Ali Shirmohammadi, Ashkan Khademian, Alireza Honarvar, Seyed Parsa Neshaei
Requirements : Exercise 1, Data Structures

Review on some Data structures by Hamed Khanaki
R1.1VideoVideo
01:18:20
R1.2Codes from the session available here
Code
Requirements : Regex (Pattern, Matcher), Stack

A code to validate HTML by Ali Shirmohammadi
EE1.1Question
Exercise
EE1.2VideoVideo
00:41:07
EE1.3Codes from the session available here
Code
Requirements : Data Structures

Start an Object Oriented program by Hamed Khanaki, Exercise 2
3.1VideoVideo
01:38:29
3.2Codes from the session available here
Code
Exercise
Judge
3.5Accepted answers for exercise2, .zip
Exercise
3.6Use this to compare your output to the output expected
Documentation
Requirements : Object Oriented Programming

Review on Object Oriented programming, Know a bit about Inheritance by Hamed Khanaki
R2.1VideoVideo
01:39:02
R2.2Codes from the session available here
Code
Requirements : Object Oriented Programming, Class

Inheritance, Polymorphism and Abstract by Hamed Khanaki
4.1VideoVideo
00:43:59
4.2Codes from the session available here
Code
Requirements : Intellij, A code with bugs

One of the most important part in programming is debugging, so make sure you learn this part well.
5.1Debugging in Intellij : Video Video
00:17:40
Requirements : Intellij, Github Account

Github introduction by Mohammadhossein Bahmani
6.1VideoVideo
02:14:47
6.2A summary of the Git class
Documentation
6.3Learn Git commands here
Documentation
6.4Git cheat sheet here
Documentation
6.5How to use github with Intellij here
Documentation
RECOMMENDEDLearn about branches with pictures here
Documentation
RECOMMENDEDLearn pull request : VideoVideo
00:08:12
Requirements : Object Oriented Programming

A tutorial on MVC by Hamed Khanaki
7.1VideoVideo
01:27:41
7.2Codes from the session available here
Code
Requirements : MVC, UML design

Use what you have learned so far to create an online market, using UML, Trello and Github
P0.1Documentation:
Documentation
Requirements : JSON, Data Structures, Object Oriented Programming, MVC

Start your project, Apache Maven, Unit Test, Code Coverage by Ahmad Salimi
P1.1Documentation:
Documentation
P1.2Maven, Unit test and Code coverage : VideoVideo
00:30:14
P1.3A note on how to use Test for phase 1 of the project
Documentation
Requirements : Object Oriented Programming, Inheritance

A code to create a Supermarket with Java, using MVC design by Ali Shirmohammadi
EE2.1Question
Exercise
EE2.2Video - Part1Video
01:12:14
EE2.3Video - Part2 In this part, "Stream" and "Exception" were used, you can just skip them Video
01:10:49
EE2.4Codes from the session available here
Code
Requirements : Error Handling, Exceptions

All you need to know about Errors and Exceptions by Ali Shirmohammadi
8.1VideoVideo
01:15:45
8.2Codes from the session available here
Code
Requirements : Java Classes, Inheritance

Best sources to learn Interfaces from
9.1Our recommended video on interfaceVideo
00:07:12
9.2A source with good explanation on the subject
Documentation
Requirements : JavaFX, Github, MVC, Generic (needed for Exercise)

Get started on animating your project, presented by Ali Shirmohammadi

An Exercise on Graphic and Generic to further your learning

10.1VideoVideo
01:12:15
Exercise
Judge
10.4Accepted answers for exercise3.1, .zip
Exercise
Requirements : Java Data Structures

An introduction to Thread by Hamed Khanaki
11.1VideoVideo
01:22:52
11.2Codes from the session available here
Code
Requirements : JavaFX

Add Graphics to your project, Yaaay! ^__^
P2.1Documentation:
Documentation
Requirements : Thread

Learn about Socket programming and Server, a presentation by Hamed Khanaki
12.1Server and Socket programming : VideoVideo
01:22:52
12.2Multiple clients with Thread : VideoVideo
00:51:22
12.3Exercise3.2 : Thread and Server
Exercise
Judge
Requirements : Everything you've learned

Handle a server based digital market and you're done. Good Job!

Education Team

  • Mohammad Haghighat

    Head TA

  • Ahmad Salimi

    Head of Project

  • MohammadHossein Gheisarieh

    Head of Assignments

  • Hamed Khanaki

    Head of Workshops

  • Amirhossein Abbasi

    Head of Public Relations

Course Reviews

Characteristics of an ideal "Teacher's Assistant"

~Spring 2020




Read the rest of this article on Virgool

Mohammad Haghighat
Estimated : 3 minutes

Documentation of "Advanced Programming" course by Human Resources team

~Spring 2020



Read the rest of this article on Virgool

Amirhossein Abbasi
Estimated : 13 minutes

All that happened throughout the course (two semesters)

~Spring 2018 - Fall 2019




Parts One ,Two and Three on Virgool

Mohammad Haghighat
Estimated : 16 minutes

Experiences of an AP assistant in Assignment team

~Spring 2020


Read the rest of this article on Virgool

Mohammadhossein Gheisarieh
Estimated : 14 minutes

Share your story!

You may have gone through ups and downs while passing this course. Here is a place to share your experiences with everyone.
AP@Virgool

Contact Us

image image

Help us improve this site and course by sending your feedbacks. You can contact hamilamailee@yahoo.com or ahsa9978@gmail.com for further suggestions.

Know someone who may find the course useful?
Help them find SUTAP like you did! :)