õppeaine eesmärgid eesti k
Õppeaine eesmärk on arendada loogilist, analüütilist ja algoritmikeskset mõtlemist: oskust jaotada probleem sammudeks ja kirjeldada neid samme piisavalt täpselt, et arvuti neid täita suudaks. Anda praktiline programmeerimiskogemus, mis on vajalik väiksemate arvutuslike probleemide iseseisvaks lahendamiseks, kasutades päris tarkvaraarenduse töövahendeid - integreeritud arenduskeskkonda, versioonihaldust ja automaatset tagasisidet esitatud tööle.
õppeaine eesmärgid inglise k
The aim of this course is to develop logical, analytical and algorithm-centred thinking: the ability to break a problem into steps and to express those steps precisely enough for a computer to execute them. To give practical programming experience needed for solving smaller computational problems independently, using the tools of real software development - an IDE, version control, and automated feedback on submitted work.
õppeaine õpiväljundid eesti k.
Õppeaine läbinud üliõpilane:
- rakendab Pythoni põhikonstruktsioone väiksemate programmide koostamisel;
- kasutab programmeerimisülesandele sobivaid sisseehitatud andmestruktuure;
- lahendab iseseisvalt väiksemaid arvutuslikke probleeme funktsioonide, tsüklite või rekursiooni abil;
- töötleb teksti- ja CSV-faile, lugedes sisendandmeid ja kirjutades tulemusi;
- modelleerib lihtsaid objektorienteeritud lahendusi klasside, objektide, kompositsiooni ja pärimise abil;
- arendab dokumenteeritud ja koodistiili nõuetele vastavaid programme, kasutades silumisinfot, integreeritud arenduskeskkonda ja Giti.
õppeaine õpiväljundid ingl k.
After completing this course, the student:
- applies Python language constructs when writing small programs;
- uses built-in data structures appropriate to a given programming task;
- solves smaller computational problems independently by decomposing them into functions and using iteration or recursion;
- processes text and CSV-style files by reading input data and writing results;
- models simple object-oriented solutions with classes, objects, composition and inheritance;
- develops clean, documented programs using debugging feedback, an IDE and Git.
õppeaine sisu lühikirjeldus eesti k
Sissejuhatus programmeerimisse tulevastele arendajatele. Käsitletakse Pythoni programmeerimiskeele aluseid: muutujad, andmetüübid ja tüübiteisendus, matemaatilised ja loogilised avaldised, tingimuslaused ja juhtimisstruktuurid, sõned, tsüklid, rekursioon,
funktsioonid ning sisseehitatud andmestruktuurid järjend, ennik, sõnastik ja hulk.
Käsitletakse failide lugemist ja kirjutamist ning objektorienteeritud programmeerimise aluseid: klassid ja objektid, meetodid, kompositsioon ja pärimine.
Tudengid kirjutavad koodi kasutades integreeritud arenduskeskkonda (IDE). Nad esitavad oma tööd Giti kaudu, saades igale esitusele automaatse tagasiside. Esituste puhul tuleb lisaks funktsionaalsusele jälgida dokumenteerimist ja koodistiili. Kursuse käigus tutvustatakse koodi silumist, mis aitab tudengil diagnoosida vigu ja parandada oma koodi.
Õpitut rakendatakse päris programmeerimisülesannete lahendamisel. Tudeng omandab praktilise intuitsiooni erinevate andmestruktuuride tõhususe kohta - näiteks, et sõnastikust otsimine ei muutu andmemahu kasvades aeglasemaks. Algoritmilise keerukuse formaalne käsitlus jääb hilisematesse ainetesse.
õppeaine sisu lühikirjeldus ingl k
Introduction to programming for future developers. Students are taught fundamentals of the Python programming language, including variables, data types and type conversion, mathematical and logical expressions, conditionals and flow control, strings, loops, recursion, functions, and the built-in data structures list, tuple, dictionary and set.
The course covers reading and writing files, and the basics of object-oriented programming: classes and objects, methods, composition and inheritance.
Students write code using an integrated development environment (IDE). They submit their work through Git and receive automated feedback on each submission. In addition to functionality, submissions must follow documentation and code style requirements. During the course, students are introduced to debugging, which helps them diagnose defects and
fix their own code.
Learned skills are applied to solving actual programming tasks. Students gain a practical intuition for the efficiency of different data structures - for example, that dictionary lookup does not slow down as the data grows. Formal treatment of algorithmic complexity belongs to later courses.
õppevormid ja mahud
päevaõpe: nädalatunnid
4.0
sessioonõppe töömahud (semestris):
praktikume
3.0
praktikume
15.0