SW wykład 1 - Wielki Cel: Różnice pomiędzy wersjami

Z Studia Informatyczne
Przejdź do nawigacjiPrzejdź do wyszukiwania
Arturas (dyskusja | edycje)
Nie podano opisu zmian
Tarlecki (dyskusja | edycje)
Nie podano opisu zmian
Linia 3: Linia 3:
[[Grafika:sw0104.png|frame|center|]]
[[Grafika:sw0104.png|frame|center|]]


Tutaj opis do slajdu
 
Wielkim celem projektowania uniwersalnych, powszechnie akceptowanych i
wykorzystywanych języków programowania staje się opracowanie języka
wspierającego wszystkie fazy budowania programu. Niezbędne aspekty
takiego projektu naszym zdaniem obejmować powinny:
 
* oczywiście, ścisłą definicję składni języka (jakie napisy dopuszczamy jako dobrze zbudowane programy);
 
* definicję semantyki dla programów tego języka;
 
* system logiczny, niezbędny dla wyrażania własności programów w tym języku i dowodzenia, że budowane przez nas programy spełniają wymagane przez użytkownika własności;
 
* dobry opis zasad "dobrego" budowania programów w tym języku, w tym przedstawienie poszczególnych konstrukcji programistycznych i zasad ich wykorzystywania;
 
* oczywiście, dobrą implementację tego języka, umożliwiającą efektywne wykonywanie zapisanych w nim programów;
 
* no i możliwie rozbudowane środowisko programistyczne, zawierające narzędzia wspierające pracę programisty z tym językiem programowania.
 
Rolę tych składowych omawiamy kolejno poniżej. Państwu pozostawiamy
ocenę, na ile poszczególne języki programowania zapewniają dostępność
tych składowych --- choć wielość dziś wykorzystywanych i wciąż
projektowanych języków programowania nie pozostawia wątpliwości, że
żaden z nich nie realizuje wszystkich tych celów w pełni.

Wersja z 11:02, 17 sie 2006

<<powrót do strony wykładu

Wstęp Literatura Programy Programy, sprzeczne oczekiwania WielkiCel Składnia Semantyka Pragmatyka Logika Metodyka Implementacja Formalna semantyka Przykład Przykład, c.d. Przykład, reguła dowodzenia Uzasadnianie poprawności Plan zajęć


Wielkim celem projektowania uniwersalnych, powszechnie akceptowanych i wykorzystywanych języków programowania staje się opracowanie języka wspierającego wszystkie fazy budowania programu. Niezbędne aspekty takiego projektu naszym zdaniem obejmować powinny:

  • oczywiście, ścisłą definicję składni języka (jakie napisy dopuszczamy jako dobrze zbudowane programy);
  • definicję semantyki dla programów tego języka;
  • system logiczny, niezbędny dla wyrażania własności programów w tym języku i dowodzenia, że budowane przez nas programy spełniają wymagane przez użytkownika własności;
  • dobry opis zasad "dobrego" budowania programów w tym języku, w tym przedstawienie poszczególnych konstrukcji programistycznych i zasad ich wykorzystywania;
  • oczywiście, dobrą implementację tego języka, umożliwiającą efektywne wykonywanie zapisanych w nim programów;
  • no i możliwie rozbudowane środowisko programistyczne, zawierające narzędzia wspierające pracę programisty z tym językiem programowania.

Rolę tych składowych omawiamy kolejno poniżej. Państwu pozostawiamy ocenę, na ile poszczególne języki programowania zapewniają dostępność tych składowych --- choć wielość dziś wykorzystywanych i wciąż projektowanych języków programowania nie pozostawia wątpliwości, że żaden z nich nie realizuje wszystkich tych celów w pełni.