programmēšana · Python · projekti - 11.–12. klasei

Programmēšana I

Pamatīgs ievadkurss programmēšanā ar Python: no pirmās koda rindiņas līdz web lietotnei ar datubāzi un portfolio ar 12 darbojošiem projektiem.

klase11.–12. klase
tehnoloģijasPython · SQL · Web
apjoms12 tēmas · 72 stundas
projektsPublicēta web lietotne
$ python main.py · PostgreSQL

Kursa tehnoloģijas

.py - Python 3.12 .sql - PostgreSQL .json - JSON · CSV faili pip - requests · Flask .git - Git · GitHub

Tēmu secība un savienojumi

Kurss ir sadalīts divās daļās. 1.–6. tēma veido Python valodas pamatu, 7.–12. tēma attīsta spēju veidot reālas, lielākas programmas.

Daļa I - Python pamati (1.–6. tēma)

01

Ievads programmēšanā un darba vide

VSCode un Python uzstādīšana, GitHub un GitHub Desktop, commit/push/pull darba plūsma, .gitignore, README un Markdown dokumentācija, MIT licence.

Git · GitHub · VSCode ↗ Projekts: Publiskā kodu krātuve
02

Python pamati un Ievade/Izvade

Mainīgie un datu tipi (int, float, str, bool), print() un input(), aritmētiskie un salīdzinājuma operatori, f-virknes, vienkāršas termināļa programmas.

03

Vadības struktūras un Validācija

if/elif/else nosacījumi, while un for cikli, break/continue, ievades validācija un kļūdu apstrāde ar try/except.

if · while · for · try/except ↗ Projekts: Skaitļu minēšanas spēle
04

Funkcijas un Modularitāte

def, parametri un atgriešanas vērtības, noklusētās vērtības, lambda funkcijas, programmas sadalīšana moduļos ar import, rekursija pamatlīmenī.

def · modulāritāte · rekursija ↗ Projekts: Teksta apstrādes rīks
05

Kolekcijas un Lietotāju viedoklis

Saraksti (list), vārdnīcas (dict), kopas (set), kortedži (tuple), sarakstu izpratne (list comprehension), iterēšana ar enumerate un zip.

list · dict · set · comprehension ↗ Projekts: Aptaujas un statistikas rīks
06

Datu pastāvība un Analīze

Failu lasīšana un rakstīšana (open, with), CSV un JSON datu formāti, datu kārtošana un filtrēšana, vienkārša statistika un kopsavilkumi.

faili · CSV · JSON · statistika ↗ Projekts: Quiz spēle ar Highscore CSV

Daļa II - Dziļāka programmēšana (7.–12. tēma)

07

Algoritmi un to efektivitāte

Meklēšanas algoritmi (lineārā, binārā), kārtošanas algoritmi (burbuļu, atlases, ievietošanas), Big-O jēdziens, rekursija dzilāk, laika un atmiņas sarežģītība.

binārā meklēšana · Big-O · rekursija ↗ Projekts: Koda lauzējs - AI efektivitāte
08

Projektēšana un Plānošana

Programmas arhitektūras plānošana, plūsmas diagrammas, pseido-kods, testēšanas pamati (unittest), koda pārskatīšanas (code review) kultūra, projektu vadība ar GitHub Issues.

unittest · diagrammas · Issues ↗ Projekts: Testēta utilīta ar dokumentāciju
09

Web Integrācija un Bibliotēkas

HTTP pieprasījumi ar requests, JSON API datu apstrāde, pip un virtuālā vide, Flask mikro-framework pamati, vienkārša web lietotne ar maršrutiem un veidlapām.

requests · Flask · API · venv ↗ Projekts: Web lietotnīte ar API
10

Datubāzes un PostgreSQL

Relāciju datubāzu pamati, SQL vaicājumi (SELECT, INSERT, UPDATE, DELETE), tabulu projektēšana, psycopg2 savienojums ar Python, CRUD operācijas lietotnē.

SQL · PostgreSQL · psycopg2 ↗ Projekts: CRUD lietotne ar datubāzi
11

Objektorientētā programmēšana

Klases un objekti (class, __init__), atribūti un metodes, mantošana (super()), kapselēšana, polimorfisms, SOLID principu ievads.

class · mantošana · OOP principi ↗ Projekts: OOP simulācija
12

Pilnvērtīga izstrāde un izvietošana

Noslēguma projekta izstrāde, kas apvieno Flask, PostgreSQL un OOP, lietotāju autentifikācija, lietotnes izvietošana mākonī (Render vai Railway), finālā koda pārskatīšana un prezentācija.

Flask · PostgreSQL · deploy · prezentācija Noslēguma projekts: Publicēta web lietotne

Projekti kursā

Pēc katras tēmas ir patstāvīgs projekts. Visi projekti tiek publicēti GitHub repozitorijā.

Saistītie kursi un nākamie soļi

Pēc Programmēšanas I tu vari turpināt ar Programmēšanu II, kur izstrādā 6 dažādu žanru spēles Godot dzinī ar C++.