01-intro-169-black

Programowanie Aplikacyjne (PAP)

  • Prezentowany przez: Julian Myrcha

  • Instytut Nauk Komputerowych

  • Data: 7 października 2024

Wstęp

  • Potrzeby procesowe, technologie i koszty jako główne aspekty programowania aplikacyjnego.

Generacje interfejsu użytkownika

Typy interfejsów

  • Batch mode: brak interakcji użytkownik - program.

  • Terminale w systemach informatycznych dla wielu użytkowników: interaktywne zapytania i odpowiedzi.

  • Graficzne Interfejsy Użytkownika (GUI): popularność i łatwość użycia.

Wady i zalety WIMP

  • WIMP (Windows, Icons, Menus, Pointer): tradycyjne podejście do GUI, korzystające z ikon, okien i menu.

  • Problemy ze złożonością i wydajnością.

Generacje GUI

  • Wprowadzenie różnych typów GUI, w tym interfejsów znakowych i graficznych.

  • Czołowe platformy: Python, Qt, i Windows Forms.

Programowanie zdarzeniowe

  • Programowanie oparte na zdarzeniach, kluczowy element nowoczesnych aplikacji.

  • Narzędzia RAD (Rapid Application Development) w kontekście programowania.

Różne typy aplikacji

Typy rozwiązania

  • Rozwiązania typowe: arkusze kalkulacyjne, edytory tekstu, komunikatory.

  • Rozwiązania dedykowane: aplikacje specjalistyczne, np. systemy projektowe.

  • Zarządzanie danymi i raportowanie: aplikacje do zarządzania danymi, generowanie raportów.

  • Rozwiązania biznesowe: kadry, płace, faktury.

Proces wytwarzania oprogramowania

Kroki poprzedzające projektowanie

  • Analiza wymagań: zrozumienie potrzeb.

  • Wybór architektury: wybór odpowiedniego modelu dla systemu.

  • Wybór technologii: decyzje dotyczące używanych narzędzi i języków programowania.

Koszty i wychodzenie z rynku

  • Sposoby obniżenia kosztów rozwiązania dedykowanego: użycie komponentów czy gotowych fragmentów kodu.

Wyzwania i trendy

Wyzwaniami

  • Szybciej rozwijające się technologie wymuszają adaptację.

  • Necesita dostosowania do zmieniającego się rynku oraz kosztów.

Trendy

  • Przykłady nowoczesnych rozwiązań: PHP, Java, JavaScript, Django.

Podsumowanie

  • Uproszczone tworzenie aplikacji poprzez RAD.

  • Znaczenie analizy, wyboru technologii, oraz architektury aplikacji.

  • Potrzeba ciągłego dostosowania do zmian na rynku oraz w technologiach.

Programy konsolowe i okienkowe

  • Wprowadzenie do sposobów pisania programów w różnych językach.

  • Przykłady użycia interfejsów użytkownika w programowaniu w konsoli oraz GUI.

Praktyczne przykłady

  • Zawarte są przypadki użycia języków programowania w kontekście GUI (Python wxPython, PyQt, etc.).

  • Wskazówki dotyczące projektowania GUI, reguły i standardy używane przy tworzeniu aplikacji.

Kod w Java i zarządzanie zdarzeniami

  • Przykłady kodu demonstrujące obsługę zdarzeń w GUI przy użyciu różnych języków programowania.

  • Implementacja prostych interfejsów użytkownika oraz ich wizualizacja.