Sărbătorim SysAdmin Day: Reducere de peste 605€ pentru toți viitori administratori

Cursul Graphic Applications Development

Acest curs abordează tehnici pentru crearea de programe grafice pe platforma desktop, în principal aplicații cu interfață grafică cu utilizatorul (GUI).

În timpul cursului, Tkinter, este abordat, în primul rând, ca un cadru care este încorporat în toate distribuțiile Python și care vă permite să vă familiarizați cu toate conceptele necesare pentru grafica viitoare din aplicații. Sunt prezentate concepte esențiale ale programării grafice, cum ar fi emiterea evenimentelor, detectarea și procesarea acestora, crearea buclei principale a unei aplicații, înțelegerea și controlul acesteia, precum și crearea și utilizarea diverselor controale grafice ale utilizatorilor. Cursul se concentrează, de asemenea, pe programarea multithreaded combinată cu grafică, tot prin cadrul Tkinter.

Deși cursul se concentrează pe cadrul Tkinter, conținutul său include și alte cadre grafice, instrumente și biblioteci, permițând conținutului său nu numai să creeze aplicații standard de afaceri, ci și conținut specializat, cum ar fi jocuri, instrumente și diverse alte ajutoare, iar cursanților li se oferă posibilitatea de a alege tehnologia care li se pare cea mai interesantă și care le satisface cel mai mult nevoile.

Deși dedicat lucrului cu grafică, cursul combină, de asemenea, elemente acoperite din alte cursuri, cum ar fi gestionarea datelor și programarea rețelei, astfel încât asimilarea sa este de fapt unul dintre punctele finale ale scării studierii unei anumite ramuri tehnologice.

Sunteţi interesat de acest curs? Îl puteţi parcurge în cadrul acestor programe LINK Academy: Python Development Program.

Descrierea și obiectivele cursului Graphic Applications Development

Scopul cursului este pregătirea cursantului să creeze aplicații grafice și să le înțeleagă complet. După finalizare, cursantul va ști cum funcționează aplicațiile grafice pe platformele desktop. El va putea recunoaște și explica modul în care sunt produse și difuzate elemente grafice pe ecran sau părți ale acestuia. Vor putea crea componente grafice, să le explice comportamentele și să le folosească în funcție de nevoile proiectului.

El va fi familiarizat cu procedura de a efectua operațiuni asincrone în medii grafice și va ști să aplice soluții la efectele cauzate de astfel de operațiuni.

Cursantul va putea crea, recunoaște și utiliza bucla principală a aplicației grafice, dar va și putea regla rata de actualizare a ecranului.

Pe lângă lucrul cu grafica, după finalizarea cursului, cursantul va putea folosi conexiunea la un sistem de gestionare a bazelor de date sau la servicii de rețea pentru a actualiza aplicația și a o face funcțională.

Cursul Graphic Application Development vă răspunde la următoarele întrebări:

1.Ce este GUI?

Interfața grafică cu utilizatorul a fost dezvoltată în anii '70 în laboratoarele de dezvoltare American Xerox, iar succesul comercial l-a obținut în sistemul de operare Macintosh de la Apple și Microsoft Windows. Motivele dezvoltării acestei abordări au fost multe, iar cel mai important este utilizarea ineficientă a interfețelor bazate pe liniile de comandă. 

Din acel moment, interfețele grafice cu utilizatorul devin un standard în programarea aplicativă, cu care utilizatorul final are posibilitatea să gestioneze intuitiv calculatorul și alte dispozitive, prin manipularea directă a butoanelor, a barelor de derulare verticale etc. În ultimul timp a devenit prezent și trendul interfețelor grafice cu utilizatorul unde utilizatorul gestionează aceste elemente prin tehnologia touchscreen, precum trendul de utilizare a comenzilor sonore. 

2. Care biblioteci din Python permit crearea aplicațiilor GUI?

Când vine vorba de cadrele de lucru GUI (GUI frameworks), pentru Python există un șir de opțiuni. Dintre toate, Tkinter este singura încorporată, adică vine odată cu instalarea Python. Câteva dintre aceste cadre de lucru se pot folosi și pe alte platforme, iar unele au fost dezvoltate special pentru anumite platforme. 

Unele din cadrele de lucru GUI pe care le vom aborda sunt: Kivy, PyQT, WxPython și Tkinter. Prin exemple vom aborda exemplul inițial Hello World pentru fiecare dintre aceste cadre de lucru, iar în rest ne vom focusa pe Tkinter. Numele provine de la cuvintele Tk interface. Interfața grafică Tk a fost dezvoltată inițial pentru Unix ca supliment pentru limbajul de programare TCL (tool command language) și a devenit popular printre programatori în anii '90.

3. Ce elemente există în aplicațiile grafice?

Interfețele grafice sunt alcătuite din elemente. Deși există interfețe grafice cu utilizatorul gestionate de utilizator prin interfața touch, în acest curs ne vom focusa pe aplicațiile desktop GUI și pe elementele lor. Aplicațiile desktop astfel create respectă paradigma WIMP, care este prescurtarea de la: window, icon, menus, pointer. Paradigma WIMP a fost dezvoltată în Xerox PARC și popularizată de Macintosh de la Apple (în 1984), care a adăugat conceptele „benzi de meniu” și gestionarea extinsă a ferestrelor. Stilul WIMP de a crea GUI a fost înlocuit de post-WIMP. Indiferent dacă este vorba de stilul WIMP sau post-WIMP, conceptul este destul de similar. Unele din elementele stilului WIMP ale aplicației GUI se pot clasifica în următoarele categorii: 

  • fereastră (window);
  • meniuri;
  • iconițe;
  • controale (widgets);
  • taburi;
  • elemente de interacțiune. 
Graphic Applications Development

4. Ce este animația?

Animația este o metodă de afișare succesivă a unor desene, imagini și modele pentru a crea iluzia mișcării. Având în vedere că ochiul uman are capacitatea să „rețină” o imagine doar pentru o șaisprezecime de secundă atunci când imaginile se schimbă foarte repede, creierul le „unește” într-o singură imagine animată. În animația tradițională, imaginile erau desenate pe o bază de plastic transparentă și apoi fotografiate și afișate în film. Astfel au apărut primele benzi animate. În prezent, animațiile sunt generate prin grafica de calculator (CGI – computer-generated imagery). Animația se împarte în animații simple, tradiționale, pe calculator (digitală 2D, digitală 3D și înregistrarea mișcării) și cadru după cadru (stop motion).

5. Ce este Tkinter?

Tkinter este un modul Python încorporat pentru interfețele grafice. Deoarece Python se poate folosi pe mai multe platforme – același lucru este valabil și pentru aplicațiile Tkinter. Doar numele a rezultat din cuvintele Tk interface. Interfața grafică Tk a fost dezvoltată original pentru Unix ca supliment pentru limbajul de programare TCL (tool command language) și și-a câștigat popularitatea printre programatori în anii '90 ai secolului trecut. Face parte din bibliotecile Python standard începând cu versiunea 1.1 și ca atare permite crearea gratuită a aplicațiilor comerciale. Aplicația Tkinter se poate crea folosind o abordare funcțională și orientată pe obiecte. În acest curs vom crea aplicații folosind ambele abordări. 

6. Ce este conceptul I/O?

Intrarea (in) și ieșirea (out) sau I/O reprezintă comunicarea dintre sistemul de procesare, de exemplu un calculator și lumea externă. Intrarea (inputul) este semnalul primit de acest sistem, iar ieșirea (outputul) este semnalul trimis de sistemul respectiv. Semnalele sunt trimise de dispozitive și alte sisteme. Procesul I/O este asincron (independent) la majoritatea calculatoarelor moderne în sensul că timpul de execuție a operațiilor de pe unitatea de procesare centrală (CPU) și dispozitivele I/O este independent. 

Când vine vorba de CPU, acesta este sincron (simultan), unde unitatea de control execută fiecare comandă/instrucțiune într-un interval de timp stabilit de ceasul central al procesorului. Astfel, fiecare operație este executată la o oră specifică și are o anumită durată, deoarece fiecare comandă din codul mașinii (codul care se poate executa doar pe procesor) consumă un număr prestabilit de secunde din ceasul procesorului. 

7. Cum se implementează detectarea coliziunilor?

Despre conceptul de detectare a coliziunilor (collision detection) se poate discuta în două sau trei dimensiuni. Având în vedere că în Tkinter este posibilă numai animația 2D, ne vom concentra pe aceasta. Ca să asigurăm că într-un anumit spațiu poate fi un singur obiect, trebuie să implementăm detectarea coliziunilor, care se bazează pe geometria acestor obiecte și pe pozițiile lor. 

Există mai multe tehnici prin care se pot detecta coliziunile; acestea s-au dezvoltat cel mai mult datorită industriei jocurilor. Vom demonstra detectarea coliziunilor prin exemplul unui simplu joc în care scopul jucătorului este să adune cât mai multe puncte (cercuri) la întâmplare de pe canvas și vom discuta despre detectarea coliziunilor în contextul jocurilor, dar aceleași principii se aplică peste tot în animația digitală 2D. 

Planul și programa cursului:

Modulul 1 – Grafica de calculator 

  • Introducere în interfața grafică cu utilizatorul
  • Introducere în interfețele grafice Python și Tkinter 

Modulul 2 – Lucrul cu cadrul Tkinter 

  • Crearea intefeței grafice Tkinter
  • Lucrul cu controalele Tkinter
  • Gestionarea evenimentelor
  • Utilizarea pânzei 

Modulul 3 – Animație 

  • Concepte de animație
  • Gestionarea intrărilor și ieșirilor
  • Detectarea coliziunilor 

Participanți la cursul Graphic Applications Development

3 moduri de a obține un job bine plătit

Am pregătit un document în care puteţi descoperi trei moduri de a obţine un job bine plătit pentru profesioniştii care lucrează pe calculator. Descărcați raportul aici

Înscrierea pentru generaţia 2021/22 se face aici.

Pentru a afla totul despre înscriere, click aici.