IOS programer - tečaj 57.780 rub. iz GeekBrains, usposabljanje 6 mesecev, datum: 10. junij 2023.
Miscellanea / / December 05, 2023
Osnove programiranja
Osnove programiranja
Tečaj je namenjen osebam brez izkušenj s programiranjem. Za začetek učenja je dovolj imeti računalniško znanje na ravni najbolj navadnega uporabnika. Vse usposabljanje bo potekalo v brskalniku in vam ne bo treba namestiti dodatne programske opreme. Spoznali boste, kaj je program, kako se izvaja in se seznanili z osnovnimi operacijami v programiranju. V dostopnem jeziku bomo govorili o osnovnih podatkovnih tipih, nizih, razvejanosti, zankah in funkcijah. Pridobili boste izkušnje pri reševanju preprostih, a zanimivih problemov, ki vam bodo dali osnovo za učenje reševanja veliko resnejših problemov.
Lekcija 1. Program, spremenljivke in podatkovni tipi
Po lekciji boste imeli predstavo o tem, kaj je program, da je sestavljen iz navodil in podatkov, se boste naučili skalarne podatkovne vrste v JS, lahko napišete program, ki pomnoži dve števili, ki ju vnese uporabnik, in natisne rezultat.
Lekcija 2. Diagrami poteka in veje
Po lekciji boste imeli predstavo o tem, kako vizualizirati algoritme z uporabo diagramov poteka, razumeli boste delo primerjalnih operaterjev, razumeli, kako uporabljati razvejanje in katere težave rešuje
Lekcija 3. Cikli
Po tej lekciji boste razumeli, kako vizualizirati ciklične algoritme z uporabo diagramov poteka, kako uporabljati zanke in katere težave rešujejo.
Lekcija 4. Funkcije
Po lekciji boste imeli predstavo o tem, katere težave se rešujejo z vstavljanjem kode v funkcije, in lahko ustvarite funkcije, vključno s tistimi, ki sprejemajo argumente.
Lekcija 5. Nizi
Po lekciji boste imeli predstavo o tem, kakšne težave rešujejo nizi, lahko ustvarite nize, dodajate in sprejemate njegove elemente.
Osnove jezika Swift. 1 mesec.
Sodobne tehnologije programiranja za Apple na Swift 5.2, Xcode 11
Swift je Applov nov jezik, ki se je pojavil sredi leta 2014. Kljub svoji novosti se hitro razvija in vključuje vse najboljše programske konstrukcije, izposojene iz številnih sodobnih jezikov. Trenutno je na trgu le nekaj strokovnjakov, ki poznajo Swift. Ta tečaj vam bo pomagal pri učenju sintaksnih osnov Swifta in pridobivanju dobrih programskih izkušenj v jeziku.
Lekcija 1. Uvod v programiranje
Uvodna lekcija. Spoznavanje jezika. Osnovni tipi podatkov. Xcode, igrišče. Spremenljivke, konstante in zbirke podatkov. Odpravljalnik napak.
Lekcija 2. Swift sintaksa in osnovni operatorji
Nadaljevanje študija jezikovnih skladenjskih struktur in osnovnih operatorjev
Lekcija 3. Kompleksni podatkovni tipi
Uvod v kompleksne podatke. Strukture. Prestopi. Lastnosti in metode. Konstruktor.
Lekcija 4. Uvod v OOP - Objektno orientirano programiranje
Kako opisati predmete resničnega sveta in jih ustvariti v skladu z opisom. Razredi in predmeti. Dedovanje. ARC in uvod v upravljanje pomnilnika.
Lekcija 5. OOP: zahteve razreda, protokoli, razširitve, polimorfizem, kompozicija
Opisujemo zahteve za razrede. Protokoli. Razširitve. Polimorfizem. Sestava.
Lekcija 6. Napredni OOP
Tehnike pravih gurujev. Generiki. Zapirala Naročanje. Funkcije višjega reda.
Lekcija 7. Upravljanje napak v aplikaciji
Naučimo se iskati napake in predvideti njihov nastanek. Poskusi/ulovi izjeme. Napaka.
Lekcija 8. Posvetovanje z učiteljem
Git. Osnovni tečaj
Osnove Git
13 videov vas bo naučilo osnov dela s sistemom za nadzor različic Git. Izvedeli boste, zakaj je pomembna v sodobnem razvoju. Naučite se osnovnih pojmov: repozitorij, objave, veje in oznake. Glavne ključne operacije: ustvarjanje in kloniranje repozitorija, združevanje vej, poizvedovanje po zgodovini sprememb in še veliko več. Po usposabljanju boste pripravljeni uporabljati Git za pripravo domačih nalog za tečaje programiranja v katerem koli jeziku. Poleg tega se boste približali intervjuju, kjer se več vprašanj običajno osredotoča na nadzor različic.
Lekcija 1. Uvod v Git
Lekcija 2. Namestitev in konfiguracija Git
Lekcija 3. Osnovni terminalski ukazi
Lekcija 4. Delo z repozitoriji v Gitu
Lekcija 5. Upravljanje datotek repozitorija
Lekcija 6. Zgodovina sprememb
Lekcija 7. Delo z vejami skladišča
Lekcija 8. Objava repozitorija
Lekcija 9. Podružnice se združijo
Lekcija 10. Upravljanje različic
Lekcija 11. Ustvarjanje zahteve za vlečenje
Lekcija 12. Kompleksne operacije
Lekcija 13. Delo z repozitoriji Fork
Osnove baze podatkov. 20 lekcij.
Oblikovanje baze podatkov in poizvedbe SQL
Podatkovne baze (DB) so sistemi za shranjevanje in obdelavo podatkov, do katerih se dostopa z uporabo jezika SQL (Structured Query Language). Vsako sodobno spletno mesto, igra ali namizna aplikacija potrebuje shranjevanje podatkov. Trenutno obstaja veliko različnih sistemov za upravljanje baz podatkov (DBMS), med katerimi je najbolj priljubljen MySQL. “Osnove baze podatkov” je 20 intenzivnih video lekcij (po 10 minut), kjer bomo na primeru spletne trgovine s poizvedovalnim jezikom SQL šli skozi vse faze načrtovanja baze podatkov. Po tem tečaju boste znali uporabljati različne baze podatkov, kot sta MS SQL in Postgre Sql, saj je sintaksa SQL zanje praktično enaka.
Lekcija 1. Relacijske baze podatkov
Kakšna je razlika med bazo podatkov in DBMS; katere baze podatkov imenujemo relacijske; pregled sodobnih DBMS.
Lekcija 2. Namestitev DBMS
Namestitev MySql DBMS in grafične aplikacije Mysql Workbench.
Lekcija 3. Oblikovanje baze podatkov, običajni obrazci
Oblikovanje podatkov v Excelu; normalne oblike; primarni ključ.
Lekcija 4. SQL ukaz CREATE
Ustvarjanje tabel v GUI MySql Workbench; ukaz CREATE; tipi podatkov; delo v konzoli.
Lekcija 5. Ukaz SQL INSERT
Polnjenje tabel s podatki z uporabo grafičnega vmesnika; ukaz INSERT; SAMODEJNO POVEČANJE.
Lekcija 6. Ukaza SQL SELECT in WHERE
Prejemanje in filtriranje podatkov z uporabo ukazov SQL SELECT in WHERE; preverjanje NULL; filtriranje podatkov po več pogojih.
Lekcija 7. Ukazi SQL DISTINCT, ORDER BY, LIMIT
Prejemanje in filtriranje podatkov z uporabo ukazov SQL DISTINCT in LIMIT; razvrščanje z ukazom ORDER BY.
Lekcija 8. Ukaza SQL DELETE in UPDATE
Posodabljanje in brisanje podatkov z uporabo SQL ukazov DELETE in UPDATE; filtriranje podatkov z uporabo WHERE IN.
Lekcija 9. Doslednost podatkov
Koncept konsistentnosti ali konsistentnosti podatkov.
Lekcija 10. Zunanji ključ
Koncept tujega ključa in omejitve vrednosti stolpcev; TUJE KLJUČNE OMEJITVE.
Lekcija 11. Ustvarjanje tabel z razmerjem mnogo proti mnogo
Dodajanje košarice v bazo spletne trgovine.
Lekcija 12. Sestavljeni primarni ključ
Uporaba sestavljenega primarnega ključa pri načrtovanju tabele z razmerjem mnogo proti mnogo.
Lekcija 13. Združevanje podatkov iz več tabel
Pridobivanje podatkov iz več med seboj povezanih tabel; nedoslednost pristopa z uporabo več SELECT-ov.
Lekcija 14. Operator INNER JOIN
Združevanje podatkov iz več tabel z uporabo operatorja INNER JOIN.
Lekcija 15. Operatorji LEFT JOIN, RIGHT JOIN
Združevanje podatkov iz več tabel z uporabo operatorjev LEFT JOIN in RIGHT JOIN.
Lekcija 16. operater UNION
Združevanje rezultatov več poizvedb SQL z uporabo operatorja UNION.
Lekcija 17. Funkcije združevanja
Združevalne funkcije COUNT, SUM, MIN, MAX.
Lekcija 18. Operator GROUP BY
Združite izbran niz vrstic z uporabo klavzule GROUP BY.
Lekcija 19. Indeksi
Filtriranje v GROUP BY z uporabo HAVING; povečanje hitrosti izvajanja poizvedb z uporabo indeksov.
Lekcija 20. Transakcije
Koncept transakcije; izjava o POSLU; Zahteve ACID za transakcijski sistem.
Uporabniški vmesnik iOS aplikacij. 1 mesec.
Swift 5.2 Xcode 12
Katere so glavne značilnosti večine sodobnih mobilnih aplikacij? Interakcija s storitvijo. Prikaz in spreminjanje podatkov na zunanjem strežniku! Brez uporabniškega vmesnika ni aplikacij. To je obraz vašega projekta. Uporablja se lahko za privabljanje in ohranjanje uporabnikov. Z vzpostavitvijo povezave s storitvijo lahko organizirate interakcijo uporabnikov med seboj ali z vašim podjetjem.
Lekcija 1. Oblikovanje vmesnika, 1. del. Analiza osnovnih omrežnih zmogljivosti in njihova uporaba v praksi
Analiza glavnih zmogljivosti omrežja in njihova uporaba v praksi.
Lekcija 2. Oblikovanje vmesnika, 2. del. Dodajanje zaslonov. Prehodi med zasloni. UINavigationController. Segue
Dodajanje zaslonov. Prehodi med zasloni. UnavigationController. Segue.
Lekcija 3. Oblikovanje vmesnika, 3. del. Podatke prikažemo v obliki tabele. UITableViewController, UITableViewCell, UICollectionViewController, UICollectionViewCell
Podatke prikažemo v obliki tabele. UITableViewController, UITableViewCell, UICollectionViewController.
Lekcija 4. Ustvarjanje komponent uporabniškega vmesnika po meri
Risanje s CoreGraphics. @IBDesignable in @IBInspectable. CALayer: sence, obrobe, maska, gradient. Preoblikovanje. Obdelava uporabniških potez. UIControl. Videz UIA.
Lekcija 5. Posvet z učiteljem 1
Lekcija 6. Prilagajanje zbirk
Ustvarjanje celic tabele po meri, pogledov glave in noge. Ustvarjanje zbirnih celic po meri, dodatni pogledi. Delo z UICollectionViewFlowLayout. Ustvarjanje postavitve pogleda zbirke po meri.
Lekcija 7. Animacije, 1. del. Preproste animacije UIView. Animirajte prehode med UIViews. Animacije plasti. Pomladne animacije
Preproste animacije UIView. Animirajte prehode med UIViews. Animacije plasti. Pomladne animacije.
Lekcija 8. Animacije, 2. del. Animacijske skupine. Bezierove krivulje in njihova animacija. 3D animacije. UIViewPropertyAnimator
Animacije ključnih okvirjev. Animacijske skupine. Bezierove krivulje in njihova animacija. 3D animacije. UIViewPropertyAnimator.
Lekcija 9. Animacija prehodov med zasloni
Animirajte prehode med UIViewController. Interaktivni prehodi med krmilniki pogleda. Ustvarjanje lastnega nadaljevanja.
Lekcija 10. Posvet z učiteljem 2
Odjemalec-strežnik iOS aplikacije. 1 mesec.
Swift 5.2, Xcode 12
Obvladali boste tehnike za razvoj visoko obremenjenih aplikacij. Delali boste z datotekami in arhivi. Naučite se upravljati procese v ozadju, optimizirajte aplikacijo za nalaganje velikih količin podatkov. Spoznali boste tudi metode za razvoj aplikacij z univerzalnim vmesnikom. Pridobite izkušnje z Googlovo priljubljeno zaledno storitvijo Firebase. Sodelovali boste tudi v procesu objave aplikacije v AppStore.
Lekcija 1. Uporaba vzorcev Observer, Singleton in Delegate
Preučujemo implementacijo najbolj priljubljenih vzorcev v iOS. Spoznajmo NotificationCenter.
Lekcija 2. Mreženje
Učenje dela z omrežnimi zahtevami. Anatomija zahtev HTTP. Pregled orodij in knjižnic za delo z omrežnimi zahtevami. Pošiljanje zahtev prek URLSession.
Lekcija 3. Preslikava json
Pretvorimo odgovor json strežnika v objekte aplikacije. Anatomija zapisa json. Serializacija JSON.
Lekcija 4. Shranjevanje podatkov
Pregled orodij in knjižnic za trajno shranjevanje podatkov v aplikaciji. Uporabniške privzete nastavitve, datoteke. CoreData. SQLite, Realm, Keychain.
Lekcija 5. Posvet z učiteljem 1
Lekcija 6. Realm - objektni sistem za upravljanje baze podatkov
Podroben pregled Realm. Shranjevanje, pridobivanje, brisanje, filtriranje podatkov
Lekcija 7. Obvestila v Realm
Spremljanje sprememb v Realmu. Samodejna posodobitev uporabniškega vmesnika.
Lekcija 8. Zaledje Firebase
Za shranjevanje podatkov aplikacije uporabljamo zunanji strežnik. Obvladovanje ogrodja Firebase. Povezujemo mehanizma “Registracija” in “Autorizacija uporabnika”.
Lekcija 9. Mehanika App Store
Aplikacijo objavimo v App Store. Raziskujemo možnosti monetizacije mobilnih aplikacij.
Lekcija 10. Posvet z učiteljem 2
Učinkovitost aplikacij iOS. 1 mesec.
Swift 5.2 Xcode 12
Tečaj bo zajemal koncepte in tehnologije večnitnosti, predpomnjenja in odpravljanja težav, povezanih z delovanjem uporabniškega vmesnika.
Lekcija 1. Vzporedno programiranje. nit.
Uvod v koncepte večnitne in asinhrone kode. Upravljanje pretoka. RunLoop. nit.
Lekcija 2. Vzporedno programiranje. GCD
Preučujemo knjižnico Grand Central Dispatch in poenostavljamo upravljanje toka.
Lekcija 3. Vzporedno programiranje. NSOoperacija
Uvod v knjižnico NSOperation za organiziranje večnitne kode in vzporedno izvajanje nalog.
Lekcija 4. Posvetovanje
Lekcija 5. Asinhrona koda. Koncepti prihodnosti in obljub
Uvod Obljuba/koncept prihodnosti Malo teorije Praksa
Lekcija 6. Vadi delo z UITableView in UICollectionView
Iščemo težave pri delovanju tabel in zbirk. Opustimo AutoLayout v korist postavitve na okvirjih. Podatke obdelujemo v vzporedni niti in predpomnimo slike.
Lekcija 7. Vzorci virov novic
Vzorec povleci za osvežitev. Neskončen vzorec drsenja. Izračunajte velikost celice za prihodnje naložene slike.
Lekcija 8. Posvetovanje
Algoritmi in podatkovne strukture. Osnovni tečaj.. 1 mesec.
Učinkovite rešitve računalniških težav
Temeljni predmet "načrpa" osnovno znanje računalništva. Omogoča razumevanje delovanja programskega jezika ter ukazov in rešitev, uporabljenih v kodi. Na primeru jezika C bodo učenci lahko »začutili« mehanizme, ki so osnova sodobnih okvirov. Tečaj podaja znanja, ki razlikujejo programerja od “uporabnika”, ki piše kodo.
Lekcija 1. Preprosti algoritmi
Uvod v C. Strukture. Algoritmi.
Lekcija 2. Asimptotična kompleksnost algoritma. Rekurzija
Asimptotična kompleksnost algoritma. Rekurzivno iskanje. Hanojski stolp.
Lekcija 3. Iskanje v nizu. Preproste vrste
Iskanje v enodimenzionalnem nizu. Interpolacijsko iskanje. Razvrščanje matrike.
Lekcija 4. Dinamično programiranje. Iskanje po vrnitvi
Največje skupno podzaporedje. Dinamično programiranje. Iskanje nazaj. Problem z osmimi kraljicami.
Lekcija 5. Dinamične podatkovne strukture
Sklad, čakalna vrsta. Ustvarjanje sklada z uporabo matrike. Dinamične podatkovne strukture.
Lekcija 6. Drevesa
Binarna iskalna drevesa. Zgoščevalna funkcija. MD5. Zgoščene tabele.
Lekcija 7. Grafi. Algoritmi na grafih.
Grafi, prečkanje grafov po širini in globini. Valovni algoritem. "Pohlepni algoritmi".
Lekcija 8. Kompleksne vrste
Hoare sortiranje (Hitro sortiranje). Razvrščanje kopice in razvrščanje spajanja. CountingSort. Algoritem s seznamom (golobarsko razvrščanje). Razvrščanje blokov.
Pripravništvo pri GeekBrains. 2 meseca.
V obliki webinarja
Med prakso bodo morali študenti na daljavo delati na odprtokodnem projektu ali startupu. Študenti bodo morali izbrati med nizom projektov, ki so na voljo za razvoj. Študenti se bodo naučili delati v timu, komunicirati z drugimi razvijalci, izdelki in vodje projektov, oblikovalci, bodo proučili fleksibilne metodologije, ogrodje SCRUM in osvojili principe delo na daljavo. Rezultat prakse je sposobnost timskega dela, dopolnitev portfelja in možnost, da delo na projektu navedete kot temeljno delovno izkušnjo v svojem življenjepisu. Praksa poteka v obliki občasnega dela na daljavo, tedenski statusni sestanki z učiteljem v obliki spletnega seminarja.
Lekcija 1. Spoznavanje, izbira projekta
Kakšne so vloge v razvoju? Produktni vodja, projektni vodja, razvijalec, oblikovalec. Kaj je MVP. Arhitektura sodobne storitve. Kako razvijalci komunicirajo med seboj. REST API, spletna vtičnica. Backend, Frontend, mobilne aplikacije. Arhitektura mikrostoritev. Osnove dela na daljavo. Prijavite se za ekipe.
Lekcija 2. Metodologije razvoja
Pregled metodologij. Cascade (slap), Agile manifest, Kanban, Scrum. Kje in za kaj se uporabljajo. Mešane metodologije.
Lekcija 3. SCRUM metodologija
Delajte z uporabo SCRUM. Načrtovanje sprinta. Negovanje zaostankov. Sprint cilj. Prirastek. Prilagodljiva metodologija v pogojih dela na daljavo. Sledilci opravil (Trello, Favro)/
Lekcija 4. Preslikava uporabniške zgodbe
Vrste nalog. Razčlenitev nalog. Preslikava uporabniških zgodb. Delo na uporabniških zgodbah. Delo s tehničnimi specifikacijami z uporabo slapa in prilagodljivih metodologij.
Lekcija 5. Odgovornost, motivacija, osebna rast
S čim in kako se motivirati. Kakšne so stopnje motivacije? Kako ne izgoreti v službi. In kako ne pozabiti na delo.
Lekcija 6. Pisanje življenjepisa
Kako napisati življenjepis, da ga HR ne zavrne. Kako zainteresirati delodajalca. Kako dokazati veščine, pridobljene v študiju, če še nimate ustreznih delovnih izkušenj.
Lekcija 7. Predhodni povzetek, priprava na zagovor projekta
Analiza študentskih življenjepisov. Predhodni povzetek. Nekaj o startupih, monetizaciji, investitorjih.
Lekcija 8. Povzetek, prikaz končnega projekta
Demonstracija delujočega prototipa s strani študentov. Razprava o dobljenih rezultatih. Povratna informacija učitelja. Ločilne besede.