Faculty Of Engıneerıng
Computer And Software Engıneerıng

Course Information

RUBY PROGRAMMING LANGUAGE
Code Semester Theoretical Practice National Credit ECTS Credit
Hour / Week
CSE213 Fall 3 2 4 4

Prerequisites and co-requisites None
Language of instruction English
Type Elective
Level of Course Bachelor's
Lecturer Asst. Prof. Mehmet Ali AKTAŞ
Mode of Delivery Face to Face
Suggested Subject None
Professional practise ( internship ) None
Objectives of the Course Students will learn Ruby fundamentals and then dive straight into models, controllers, views, and deployment. Then, students take skills to the next level as build a social networking app with more advanced Ruby tools, such as modules and metaprogramming, and advanced data modeling techniques within Rail's Active Record.
Contents of the Course Principles behind object-oriented programming. Basic Programming Concepts. Variables, Loops, Control Flow. Object Oriented Programming Fundamentals. Arrays, Hashes and Loops. Blocks and Sorting. Procs, Lambdas and Refactoring. Basic understanding of many ancillary technologies such as databases, XML, web frameworks, and networking. Implementing fully functioning Ruby application.

Learning Outcomes of Course

# Learning Outcomes
1 Student will learn writing and deploying Ruby applications.
2 Student will learn using Ruby web frameworks.
3 Student will learn work with Ruby libraries and documentation.
4 Student will learn work files and databases.

Course Syllabus

# Subjects Teaching Methods and Technics
1 Introduction to Ruby Lecture, discussion, presentation
2 Setting up a Cloud and Integrated Development Environment Lecture, discussion, presentation
3 Ruby Libraries and RubyGems Lecture, discussion, presentation
4 Conditional If/Else Comparisons, Variables, Data Types Lecture, discussion, presentation
5 Arrays, Loops and Hashes Lecture, discussion, presentation
6 Control Flow in Ruby, Getting User Input and Output Lecture, discussion, presentation
7 Blocks and Sorting Lecture, discussion, presentation
8 Refactoring, Procs and Lambdas Lecture, discussion, presentation
9 Midterm Exam Exam
10 Files and Databases Lecture, discussion, presentation
11 Ruby and the Internet Lecture, discussion, presentation
12 Networking, Sockets and Daemons Lecture, discussion, presentation
13 Ruby and Object Oriented Programming - I Lecture, discussion, presentation
14 Ruby and Object Oriented Programming - II Lecture, discussion, presentation
15 Project Representation Presentation
16 Final Exam Exam

Course Syllabus

# Material / Resources Information About Resources Reference / Recommended Resources

Method of Assessment

# Weight Work Type Work Title
1 40% Mid-Term Exam Mid-Term Exam
2 60% Final Exam Final Exam

Relationship between Learning Outcomes of Course and Program Outcomes

# Learning Outcomes Program Outcomes Method of Assessment
1 Student will learn writing and deploying Ruby applications. 2͵3͵4 1͵2
2 Student will learn using Ruby web frameworks. 2͵3͵4 1͵2
3 Student will learn work with Ruby libraries and documentation. 2͵3͵4 1͵2
4 Student will learn work files and databases. 2͵3͵4 1͵2
PS. The numbers, which are shown in the column Method of Assessment, presents the methods shown in the previous table, titled as Method of Assessment.

Work Load Details

# Type of Work Quantity Time (Hour) Work Load
1 Course Duration 14 5 70
2 Course Duration Except Class (Preliminary Study, Enhancement) 0 0 0
3 Presentation and Seminar Preparation 0 0 0
4 Web Research, Library and Archival Work 0 0 0
5 Document/Information Listing 0 0 0
6 Workshop 0 0 0
7 Preparation for Midterm Exam 0 0 0
8 Midterm Exam 1 5 5
9 Quiz 0 0 0
10 Homework 2 5 10
11 Midterm Project 1 5 5
12 Midterm Exercise 0 0 0
13 Final Project 0 0 0
14 Final Exercise 0 0 0
15 Preparation for Final Exam 0 0 0
16 Final Exam 0 0 0
  90