Türkçe | English
OF FACULTY of TECHNOLOGY / DEPARTMENT of SOFTWARE ENGINEERING

Course Catalog
http://www.ktu.edu.tr/ofyazilim
Phone: +90 0462 3778353
OFTF
OF FACULTY of TECHNOLOGY / DEPARTMENT of SOFTWARE ENGINEERING /
Katalog Ana Sayfa
  Katalog Ana Sayfa  KTÜ Ana Sayfa   Katalog Ana Sayfa
 
 

YZM3013Script Languages2+0+0ECTS:4
Year / SemesterFall Semester
Level of CourseFirst Cycle
Status Elective
DepartmentDEPARTMENT of SOFTWARE ENGINEERING
Prerequisites and co-requisitesNone
Mode of Delivery
Contact Hours14 weeks - 2 hours of lectures per week
LecturerÖğr. Gör. Dr Celal ATALAR
Co-Lecturer
Language of instructionTurkish
Professional practise ( internship ) None
 
The aim of the course:
The aim of the course is to examine JavaScript, one of the client-side script languages, in detail . Other topics are DOM usage, JavaScript security, regular expressions, form development, data validation, and the use of JavaScript libraries.
 
Learning OutcomesCTPOTOA
Upon successful completion of the course, the students will be able to :
LO - 1 : To have enough knowledge to develop applications in Python1,3,71,
LO - 2 : Being able to write interactive user programs (either through forms or console) in the Python programming language1,3,71,
LO - 3 : Being able to utilize Python libraries1,3,71,
LO - 4 : Enabling the ability to work with non-built-in packages or modules1,3,71,
CTPO : Contribution to programme outcomes, TOA :Type of assessment (1: written exam, 2: Oral exam, 3: Homework assignment, 4: Laboratory exercise/exam, 5: Seminar / presentation, 6: Term paper), LO : Learning Outcome

 
Contents of the Course
1. Installation of Testing and Development Environments for Python 2. print Function, Escape Sequences, Comment Lines, input Function 3. Variables, Type Conversions, Control Structures, Operators 4. Loop Control Structures, Error Handling 5. Strings, String Methods, Formatting Strings 6. Lists, Tuples, List Methods, Tuple Methods 7. Number Systems, Numbers, Basic File Operations, File Methods 8. Binary Files, Character Encoding, Bytes, Byte Arrays, Dictionaries, Dictionary Methods 9. Sets, Set Methods, Functions 10. Built-in Functions, Advanced Functions 11. Modules, Object-Oriented Programming, Classes 12. Object-Oriented Programming; Class and Instance Attributes, Class and Instance Methods, _init_ function and self 13. Object-Oriented Programming; @classmethod @staticmethod and alternative constructors, Class members, Inheritance 14. Packages
 
Course Syllabus
 WeekSubjectRelated Notes / Files
 Week 1About Python, How to Install and Run Python, Python 3, Interactive Python
 Week 2print Function; sep, end, file, flush parameters, Escape Sequences, Comment and Documentation Statements, Getting User Input with the input Function
 Week 3Variables, Type Conversions, eval, exec, and format Functions, Conditional Statements (if, elif, else), Operators (Arithmetic, Comparison, Bool, Assignment, Membership, Identity)
 Week 4Loops (while, for), the range Function, the pass statement, the break statement, the continue statement, the else statement, Error Handling (try except, try except as, try except else, try except finally), the raise and assert Functions
 Week 5Working with Strings: Accessing, Slicing, Reversing, Sorting in Alphabetical Order, Modifying. dir, enumerate, and help functions. String Methods (replace, split, rsplit, splitlines, lower, upper, islower, isupper, endswith, startswith, capitalize, title, swapcase, casefold, strip, lstrip, rstrip, join, count, index, rindex, find, rfind, center, rjust, ljust, zfill, partition, rpartition,...) Formatting Strings and the format Function
 Week 6Lists: list Function, Accessing List Elements, Modifying List Elements, Adding Elements to a List, Merging Lists, Removing Items from a List, Deleting Lists, Copying Lists, List Comprehensions Tuples: Tuple Definition, Accessing Tuple Elements List Functions (append, extend, insert, remove, reverse, pop, sort, index, count, copy, clear) Tuple Functions (index, count)
 Week 7Number Systems (Decimal, Octal, Hexadecimal, Binary). Converting Number Systems (bin, hex, oct, int functions). Numbers and Arithmetic Functions (abs, divmod, max, min, sum). Basic File Operations (File; creation, writing, reading, closing, moving the cursor forward and backward, making changes). Characteristics of File Methods (closed, readable, writable, truncate, mode, name, encoding).
 Week 8Binary Files (Analysis of PDF and Image Files), Character Encoding (repr, ascii, ord, and chr functions). Bytes and Byte Arrays. bytes, decode, and fromhex functions, and Methods of Byte Arrays. Dictionaries (Definition, Accessing Elements, Adding Elements, Modifying Elements, Dictionary Comprehensions). Dictionary Methods (keys, values, items, get, clear, copy, fromkeys, pop, popitem)
 Week 9Midterm Exam
 Week 10Sets (Creation, Comprehensions) Set Methods (clear, copy, add, difference, discard, remove, intersection, union, pop) Functions (Definition, Invocation, Parameters and Arguments, Positional Parameters, Named Parameters, Default Valued Parameters, Variable Number of Positional Parameters, Variable Number of Named Parameters, the return statement, the global statement)
 Week 11Built-in Functions (abs, round, all, any, ascii, repr, bool, bin, bytes, bytearray, chr, list, set, tuple, complex, float, int, str, dict, ord, oct, hex, eval, exec, dir, filter, map, len, open, pow, reversed, sorted, slice) Advanced Functions (lambda functions, recursive functions, nested functions, Generators (Definition, yield statement, next statement, yield from statement))
 Week 12Modules (What is a Module, Built-in Modules, Importing Modules (import module_name, from module_name import ..., from module_name import ... as different_name, from module_name import *)), Special Attributes of Modules (doc, name, loader, spec, package), Object-Oriented Programming (Introduction, Classes, Class Definition)
 Week 13Object-Oriented Programming (Class Attributes, Instantiation of Classes, Instance Attributes, Instance Methods, init Function and self Statement)
 Week 14Class Methods, @classmethod Decorator and cls Statement, Static Methods, @staticmethod Decorator, @property Decorator) Class Members (Public, Private, Name Mangling) Inheritance (Base Classes, Types of Inheritance, super Function, object Class, Multiple Inheritance)
 Week 15 Packages (What is a Package, Types of Packages (Standard Packages, Third-party Packages), Importing Packages (import package, import package.module, from package import module, from package.module import attribute_or_method, from package.module import *))
 Week 16Final Exam
 
Textbook / Material
1https://python-istihza.yazbel.com/
 
Recommended Reading
1Su, G. 2018; Python Öğreniyorum, Kodlab Yayın Dağıtım
 
Method of Assessment
Type of assessmentWeek NoDate

Duration (hours)Weight (%)
Mid-term exam 9 1 50
End-of-term exam 16 2 50
 
Student Work Load and its Distribution
Type of workDuration (hours pw)

No of weeks / Number of activity

Hours in total per term
Yüz yüze eğitim 2 14 28
Sınıf dışı çalışma 3 14 42
Arasınav için hazırlık 2 6 12
Arasınav 1 1 1
Dönem sonu sınavı için hazırlık 3 6 18
Dönem sonu sınavı 2 1 2
Total work load103