Programator iOS - curs 57.780 rub. de la GeekBrains, antrenament 6 luni, Data: 10 iunie 2023.
Miscelaneu / / December 05, 2023
Bazele programării
Bazele programării
Cursul se adresează persoanelor fără experiență în programare. Pentru a începe să înveți, este suficient să ai cunoștințe de calculator la nivelul celui mai obișnuit utilizator. Toate antrenamentele vor avea loc în browser și nu va trebui să instalați software suplimentar. Veți afla ce este un program, cum este executat și vă veți familiariza cu operațiunile de bază în programare. Vom vorbi despre tipuri de date de bază, matrice, ramificări, bucle și funcții într-un limbaj accesibil. Vei dobandi experienta in rezolvarea unor probleme simple, dar interesante, care iti va oferi baza pentru a invata sa rezolvi probleme mult mai serioase.
Lectia 1. Program, variabile și tipuri de date
După lecție, veți avea o idee despre ce este un program, că este format din instrucțiuni și date, veți învăța tipuri de date scalare în JS, puteți scrie un program care înmulțește două numere introduse de utilizator și imprimă rezultat.
Lectia 2. Organigrame și ramuri
După lecție, veți avea o idee despre cum să vizualizați algoritmi folosind diagrame de flux, să înțelegeți munca operatorilor de comparație, să înțelegeți cum să utilizați ramificarea și ce probleme rezolvă
Lecția 3. Cicluri
După această lecție, veți înțelege cum să vizualizați algoritmii ciclici folosind diagrame, cum să utilizați bucle și ce probleme rezolvă.
Lecția 4. Funcții
După lecție, veți avea o idee despre ce probleme sunt rezolvate prin introducerea codului în funcții și veți putea crea funcții, inclusiv cele care preiau argumente.
Lecția 5. Matrice
După lecție, veți avea o idee despre ce probleme rezolvă matricele, veți putea crea matrice, adăugați și primiți elementele acesteia.
Bazele limbajului Swift. 1 lună.
Tehnologii moderne de programare pentru Apple pe Swift 5.2, Xcode 11
Swift este o nouă limbă de la Apple care a apărut la jumătatea anului 2014. În ciuda noutății sale, se dezvoltă rapid și include toate cele mai bune constructe de programare împrumutate din multe limbaje moderne. Există doar câțiva specialiști care cunosc Swift pe piață chiar acum. Acest curs vă va ajuta să învățați elementele fundamentale ale sintaxei Swift și să obțineți o bună experiență de programare în limbaj.
Lectia 1. Introducere în programare
Lecție introductivă. Cunoașterea limbii. Tipuri de date de bază. Xcode, Loc de joacă. Variabile, constante și culegeri de date. Depanator.
Lectia 2. Sintaxă Swift și operatori de bază
Studiul continuu al structurilor sintactice ale limbajului și al operatorilor de bază
Lecția 3. Tipuri de date complexe
Introducere în datele complexe. Structuri. Transferuri. Proprietăți și metode. Constructor.
Lecția 4. Introducere în OOP - Programare orientată pe obiecte
Cum să descrii obiecte din lumea reală și să le creezi conform descrierii. Clase și obiecte. Moştenire. ARC și o introducere în gestionarea memoriei.
Lecția 5. OOP: cerințe de clasă, protocoale, extensii, polimorfism, compoziție
Descriem cerințele pentru clase. Protocoale. Extensii. Polimorfismul. Compoziţie.
Lecția 6. OOP avansat
Tehnici de la guru adevărați. generice. Închideri Abonament. Funcții de ordin superior.
Lecția 7. Gestionarea erorilor aplicației
Învățăm să căutăm erorile și să anticipăm apariția lor. Încercați/prindeți excepții. Eroare.
Lecția 8. Consultație cu un profesor
Git. Curs de bază
Bazele Git
13 videoclipuri vă vor învăța elementele de bază ale lucrului cu sistemul de control al versiunilor Git. Veți afla de ce este important în dezvoltarea modernă. Învață conceptele de bază: repository, commit-uri, ramuri și etichete. Operații principale: crearea și clonarea unui depozit, îmbinarea ramurilor, interogarea istoricului modificărilor și multe altele. După antrenament, veți fi gata să utilizați Git pentru a pregăti teme pentru cursuri de programare în orice limbă. În plus, te vei apropia de interviu, unde mai multe întrebări se concentrează de obicei pe controlul versiunilor.
Lectia 1. Introducere în Git
Lectia 2. Instalarea și configurarea Git
Lecția 3. Comenzi terminale de bază
Lecția 4. Lucrul cu depozitele în Git
Lecția 5. Administrarea fișierelor de depozit
Lecția 6. Istoricul schimbărilor
Lecția 7. Lucrul cu ramurile depozitului
Lecția 8. Publicarea unui depozit
Lecția 9. Sucursala fuzionează
Lecția 10. Gestionarea versiunilor
Lecția 11. Crearea unei cereri de tragere
Lecția 12. Operații complexe
Lecția 13. Lucrul cu depozitele Fork
Bazele bazei de date. 20 de lecții.
Proiectare baze de date și interogări SQL
Bazele de date (DB) sunt sisteme de stocare și procesare a datelor care sunt accesate folosind limbajul SQL (Structured Query Language). Orice site web modern, joc sau aplicație desktop are nevoie de stocare de date. În prezent, există multe sisteme diferite de gestionare a bazelor de date (DBMS), cel mai popular fiind MySQL. „Noțiunile de bază ale bazei de date” sunt 20 de lecții video intensive (10 minute fiecare), în care vom parcurge toate etapele de proiectare a bazei de date folosind exemplul unui magazin online folosind limbajul de interogare SQL. După acest curs, veți putea folosi diverse baze de date, precum MS SQL și Postgre Sql, deoarece sintaxa SQL pentru acestea este practic aceeași.
Lectia 1. Baze de date relaționale
Care este diferența dintre o bază de date și un SGBD; ce baze de date se numesc relaționale; prezentare generală a SGBD-urilor moderne.
Lectia 2. Instalarea DBMS
Instalarea DBMS MySql și a aplicației grafice Mysql Workbench.
Lecția 3. Proiectare baze de date, forme normale
Proiectarea datelor in Excel; forme normale; cheia principala.
Lecția 4. Comanda SQL CREATE
Crearea de tabele în GUI MySql Workbench; comanda CREATE; tipuri de date; lucrează în consolă.
Lecția 5. Comanda SQL INSERT
Completarea tabelelor cu date folosind o interfață grafică; comanda INSERT; INCREMENT AUTO.
Lecția 6. Comenzile SQL SELECT și WHERE
Primirea și filtrarea datelor folosind comenzile SQL SELECT și WHERE; verificarea NULL; filtrarea datelor după mai multe condiții.
Lecția 7. Comenzi SQL DISTINCT, ORDER BY, LIMIT
Primirea și filtrarea datelor folosind comenzile SQL DISTINCT și LIMIT; sortarea folosind comanda ORDER BY.
Lecția 8. Comenzile SQL DELETE și UPDATE
Actualizarea și ștergerea datelor folosind comenzile SQL DELETE și UPDATE; filtrarea datelor folosind WHERE IN.
Lecția 9. Consistența datelor
Conceptul de consistență sau consistență a datelor.
Lecția 10. Cheie externă
Conceptul de cheie străină și restricții asupra valorilor coloanei; CONSTRINGRI CHEIE STRĂINE.
Lecția 11. Crearea de tabele cu o relație multi-la-mulți
Adăugarea unui coș la baza de date a magazinului online.
Lecția 12. Cheie primară compusă
Utilizarea unei chei primare compozite atunci când proiectați un tabel cu o relație multi-la-mulți.
Lecția 13. Îmbinarea datelor din mai multe tabele
Preluarea datelor din mai multe tabele interconectate; inconsecvența abordării folosind mai multe SELECT-uri.
Lecția 14. operator INNER JOIN
Unirea datelor din mai multe tabele folosind operatorul INNER JOIN.
Lecția 15. Operatorii LEFT JOIN, RIGHT JOIN
Unirea datelor din mai multe tabele folosind operatorii LEFT JOIN și RIGHT JOIN.
Lecția 16. operator UNION
Combinarea rezultatelor mai multor interogări SQL folosind operatorul UNION.
Lecția 17. Funcții de agregare
Funcții de agregare COUNT, SUM, MIN, MAX.
Lecția 18. operator GROUP BY
Grupați un set selectat de rânduri folosind clauza GROUP BY.
Lecția 19. Indici
Filtrarea în GROUP BY folosind HAVING; creșterea vitezei de execuție a interogărilor folosind indecși.
Lecția 20. Tranzacții
Conceptul de tranzacție; Declarație de TRANZACȚIE; Cerințe ACID pentru sistemul de tranzacții.
Interfața de utilizator a aplicațiilor iOS. 1 lună.
Swift 5.2 Xcode 12
Care sunt principalele caracteristici ale celor mai moderne aplicații mobile? Interacțiunea cu serviciul. Afișează și modifică datele pe un server extern! Nu există aplicații fără interfață cu utilizatorul. Aceasta este fața proiectului tău. Poate fi folosit pentru a atrage și reține utilizatorii. Prin implementarea unei conexiuni cu serviciul, puteți organiza interacțiunea utilizatorilor între ei sau cu afacerea dvs.
Lectia 1. Proiectarea interfeței, partea 1. Analiza capabilităților de bază ale rețelei și aplicarea lor în practică
Analiza principalelor capabilități ale rețelei și aplicarea lor în practică.
Lectia 2. Designul interfeței, partea 2. Adăugarea de ecrane. Tranziții între ecrane. UINavigationController. Segue
Adăugarea de ecrane. Tranziții între ecrane. UNavigationController. Segue.
Lecția 3. Designul interfeței, partea 3. Afișăm datele sub forma unui tabel. UITableViewController, UITableViewCell, UICollectionViewController, UICollectionViewCell
Afișăm datele sub forma unui tabel. UITableViewController, UITableViewCell, UICollectionViewController.
Lecția 4. Crearea componentelor UI personalizate
Desen cu CoreGraphics. @IBDesignable și @IBInspectable. CALayer: umbre, chenare, mască, gradient. Transformare. Procesarea gesturilor utilizatorului. UIControl. UIAspect.
Lecția 5. Consultarea cu profesorul 1
Lecția 6. Personalizarea colecțiilor
Crearea de celule personalizate de tabel, vederi antet și subsol. Crearea de celule de colecție personalizate, vizualizări suplimentare. Lucrul cu UICollectionViewFlowLayout. Crearea unui aspect personalizat de vizualizare a colecției.
Lecția 7. Animații, partea 1. Animații simple UIView. Animați tranzițiile între UIViews. Animații de straturi. Animații de primăvară
Animații simple UIView. Animați tranzițiile între UIViews. Animații de straturi. Animații de primăvară.
Lecția 8. Animații, partea a 2-a. Grupuri de animație. Curbele Bezier și animația lor. Animații 3D. UIViewPropertyAnimator
Animații ale cadrelor cheie. Grupuri de animație. Curbele Bezier și animația lor. Animații 3D. UIViewPropertyAnimator.
Lecția 9. Animație de tranziții între ecrane
Animați tranzițiile între UIViewController. Tranziții interactive între controlerele de vizualizare. Crearea propriei secvențe.
Lecția 10. Consultarea cu profesorul 2
Aplicații iOS client-server. 1 lună.
Swift 5.2, Xcode 12
Veți stăpâni tehnici de dezvoltare a aplicațiilor cu sarcină mare. Veți lucra cu fișiere și arhive. Învață să gestionezi procesele în fundal, să optimizezi aplicația pentru încărcarea unor cantități mari de date. Veți învăța și metode de dezvoltare a aplicațiilor cu o interfață universală. Obțineți experiență cu popularul serviciu de backend Firebase de la Google. De asemenea, veți participa la procesul de publicare a aplicației în AppStore.
Lectia 1. Folosind modelele Observer, Singleton și Delegate
Studiem implementarea celor mai populare modele în iOS. Să facem cunoștință cu NotificationCenter.
Lectia 2. Rețele
Învățați să lucrați cu solicitări de rețea. Anatomia solicitărilor HTTP. Prezentare generală a instrumentelor și bibliotecilor pentru lucrul cu solicitările de rețea. Trimiterea solicitărilor utilizând URLSession.
Lecția 3. Maparea json
Să convertim răspunsul json al serverului în obiecte de aplicație. Anatomia formatului json. Serializare JSON.
Lecția 4. Stocare a datelor
O prezentare generală a instrumentelor și bibliotecilor pentru stocarea persistentă a datelor într-o aplicație. UserDefaults, Fișiere. CoreData. SQLite, tărâm, breloc.
Lecția 5. Consultarea cu profesorul 1
Lecția 6. Realm - sistem de gestionare a bazelor de date cu obiecte
Revizuire detaliată a Realm. Salvarea, preluarea, ștergerea, filtrarea datelor
Lecția 7. Notificări în tărâm
Monitorizarea schimbărilor din Realm. Actualizare automată a interfeței de utilizare.
Lecția 8. Backend Firebase
Folosim un server extern pentru a stoca datele aplicației. Stăpânirea cadrului Firebase. Conectăm mecanismele „Înregistrare” și „Autorizare utilizator”.
Lecția 9. Mecanica App Store
Publicăm aplicația în App Store. Explorăm posibilitățile de monetizare a aplicațiilor mobile.
Lecția 10. Consultarea cu profesorul 2
Performanța aplicațiilor iOS. 1 lună.
Swift 5.2 Xcode 12
Cursul va acoperi conceptele și tehnologiile de multithreading, cache și depanare a problemelor legate de performanța interfeței cu utilizatorul.
Lectia 1. Programare în paralel. Fir.
Introducere în conceptele de cod multi-threaded și asincron. Managementul fluxului. RunLoop. Fir.
Lectia 2. Programare în paralel. GCD
Studiem biblioteca Grand Central Dispatch și simplificăm gestionarea fluxului.
Lecția 3. Programare în paralel. NSOperation
Introducere în biblioteca NSOperation pentru organizarea codului multi-threaded și executarea paralelă a sarcinilor.
Lecția 4. Consultare
Lecția 5. Cod asincron. Concepte de viitor și promisiuni
Introducere Promisiune/Concept de viitor Un pic de teorie Practică
Lecția 6. Practică lucrul cu UITableView și UICollectionView
Căutăm probleme în funcționarea meselor și colecțiilor. Renunțăm la AutoLayout în favoarea aspectului pe cadre. Procesăm datele într-un fir paralel și memorăm imaginile în cache.
Lecția 7. Modele pentru fluxuri de știri
Model trage pentru a reîmprospăta. Model de defilare infinit. Calculați dimensiunea celulei pentru viitoarele imagini încărcate.
Lecția 8. Consultare
Algoritmi și structuri de date. curs de baza.. 1 lună.
Soluții eficiente la problemele de calcul
Cursul fundamental „promovează” cunoștințele de bază ale informaticii. Oferă o înțelegere a modului în care funcționează limbajul de programare și a comenzilor și soluțiilor utilizate în cod. Folosind limbajul C ca exemplu, elevii vor putea „simți” mecanismele care stau la baza cadrelor moderne. Cursul oferă cunoștințe care diferențiază un programator de un „utilizator” care scrie cod.
Lectia 1. Algoritmi simpli
Introducere la C. Structuri. Algoritmi.
Lectia 2. Complexitatea asimptotică a algoritmului. Recursiune
Complexitatea asimptotică a algoritmului. Căutare recursiva. Turnul din Hanoi.
Lecția 3. Căutați într-o matrice. Soiuri simple
Căutați într-o matrice unidimensională. Căutare prin interpolare. Sortarea unei matrice.
Lecția 4. Programare dinamică. Cauta dupa retur
Cea mai mare succesiune comună. Programare dinamică. Căutare înapoi. Problema cu opt regine.
Lecția 5. Structuri dinamice de date
Stack, coada. Crearea unei stive folosind o matrice. Structuri dinamice de date.
Lecția 6. Copaci
Arbori binari de căutare. Funcția hash. MD5. Tabele de hash.
Lecția 7. Grafice. Algoritmi pe grafice.
Grafice, traversarea graficului în lățime și adâncime. Algoritmul undelor. „Algoritmi lacomi”.
Lecția 8. Soruri complexe
Hoare sort (sortare rapidă). Sortare în grămada și sortare Merge. CountingSort. Algoritm cu o listă (sortare în case). Sortare bloc.
Stagiu la GeekBrains. 2 luni.
În format webinar
În timpul stagiului, studenții vor trebui să lucreze de la distanță la un proiect Open Source sau startup. Studenților li se va cere să aleagă dintr-un set de proiecte disponibile pentru dezvoltare. Elevii vor învăța să lucreze în echipă, să comunice cu alți dezvoltatori, produse și managerii de proiect, designerii, vor studia metodologii flexibile, cadrul SCRUM și vor stăpâni principiile lucru la distanță. Rezultatul stagiului este capacitatea de a lucra în echipă, adăugarea unui portofoliu și oportunitatea de a indica munca la un proiect ca experiență de lucru de bază în CV-ul tău. Stagiul se desfășoară în format de lucru la distanță part-time, întâlniri săptămânale de status cu profesorul în format webinar.
Lectia 1. Să ne cunoaștem, să alegem un proiect
Ce roluri sunt în dezvoltare? Manager de produs, manager de proiect, dezvoltator, designer. Ce este MVP. Arhitectura serviciului modern. Cum interacționează dezvoltatorii între ei. REST API, Web Socket. Backend, Frontend, aplicații mobile. Arhitectura microservicii. Bazele muncii de la distanță. Înscrie-te pentru echipe.
Lectia 2. Metodologii de dezvoltare
Revizuirea metodologiilor. Cascade (cascada), manifest Agile, Kanban, Scrum. Unde și pentru ce sunt folosite. Metodologii mixte.
Lecția 3. Metodologia SCRUM
Lucrați folosind SCRUM. Planificarea sprintului. Îngrijirea restanțelor. Gol de sprint. Creştere. Metodologie flexibilă în condiții de lucru la distanță. Instrumente de urmărire a sarcinilor (Trello, Favro)/
Lecția 4. Maparea poveștii utilizatorului
Tipuri de sarcini. Descompunerea sarcinilor. Cartografierea poveștilor utilizatorilor. Lucrul la poveștile utilizatorilor. Lucrul cu specificațiile tehnice folosind metodologii în cascadă și flexibile.
Lecția 5. Responsabilitate, motivație, creștere personală
Ce și cum să te motivezi. Care sunt nivelurile de motivare? Cum să nu epuizezi la serviciu. Și cum să nu uităm de muncă.
Lecția 6. Scrierea unui CV
Cum să scrii un CV, astfel încât HR să nu-l respingă. Cum să interesezi un angajator. Cum să demonstrezi abilitățile dobândite în studii dacă nu ai încă experiență de lucru relevantă.
Lecția 7. Rezumat preliminar, pregătire pentru apărarea proiectului
Analiza CV-urilor elevilor. Rezumat preliminar. Câteva despre startup-uri, monetizare, investitori.
Lecția 8. Rezumând, demonstrând proiectul final
Demonstrarea unui prototip funcțional de către studenți. Discuție asupra rezultatelor obținute. Feedback din partea profesorului. Cuvinte de despărțire.