Programski jezik C - Monde Diplomatique
Download
Report
Transcript Programski jezik C - Monde Diplomatique
PROGRAMIRANJE - ZAKAJ IN
VSAJ KAJ
Podrobneje:
glej Programiranje_zakaj_in_kaj.pdf
ter prosojnice: Programski jeziki osnove.ppt
Zakaj neki programirati?
Danes je učenje programiranja povsem
odveč in potrata časa.
Za vse, kar želimo narediti z računalnikom,
so na voljo ustrezna orodja.
Znanje programiranja je odveč.
Programiranje je potrebno le kot zelo
specialistično znanje skupinice
strokovnjakov, ki pišejo programe, ki jih
potem običajni uporabniki uporabljamo.
Matija Lokar, 2007
Izbira programskega jezika
Le za učenje osnov
Precej nepomembna
Stvar osebnega okusa, okolja, dostopnosti,
mode, ...
Za "pravo" programiranje
Okolje
Razvojna orodja
Vrsta problema
Skupni gradniki, enostaven prehod iz enega
v drugi jezik
Matija Lokar, 2007
Osnovni gradniki
Konstante
števila, nizi, logične vrednosti
Spremenljivke
Prireditev, izrazi
Branje in izpisovanje
Vejitev – pogojni stavek
Zanke
Funkcije, metode, podprogrami, ...
Objekti in objektno programiranje
Sestavljene podatkovne strukture
Matija Lokar, 2007
Od problema do programa
Problem
Algoritem (postopek reševanja problema)
Zapis v programskem jeziku – uporaba
ukazov, ki jih znamo izvesti
Prevajanje v obliko, ki jo razume procesor
(izvajalec ukazov)
Izvajanje
Ali rešitev ustreza problemu?
Matija Lokar, 2007
Programski jeziki
Ogromno jezikov:
pascal, basic, cobol, Smalltalk, C#, ada, ...
Različne zvrsti
Generacije jezikov
Objektni (predmetni) jeziki, funkcijski jeziki, ...
Programski jezik C#
Prevajalniki
Avtomatska pretvorba iz zapisa v jezik procesorja
Programi
Podatki: izvorna koda
Rezultati: prevedena koda
Kot za pripravo besedil obstajajo različni urejevalniki,
tudi tu obstajajo različni prevajalniki
Vsi zapis v programskem jeziku C# prevedejo v
obliko, ki jo razume procesor (ni čisto res, a ...)
Matija Lokar, 2007
Prvi program
Priprava
Izvorna koda: Prvi.cs
Prevajanje
Izvajanje
Okolje, ki nudi možnost izvajanja vseh teh
korakov
7
Prvi program Visual C#EE
Visual C# Express Edition
Urejevalnik
Že pripravljeno okolje za prevajanje
Dostop:
http://www.microsoft.com/express/vcsharp/
Prvi.cs
Prevedemo
8
9
10
Prvi program
using System;
class Program
{
static void Main(string[] args) {
// Prvi program v C#
Console.WriteLine("Moj prvi program v C#!");
Console.ReadLine();
}
}
11
Prevajanje / zagon
Matija Lokar, 2007
Kaj je algoritem?
Algoritem je postopek, ki nam korak za korakom pove,
kako rešiti dani problem
Za dani problem v splošnem obstaja veliko algoritmov, ki
določijo postopek, s katerim rešimo problem
Npr. obstaja veliko algoritmov za izračun produkta dveh
števil:
Tabela poštevanke (primerno le za majhna števila)
Pisno množenje
Množenje z uporabo logaritmov.
Uporaba računala.
Uporaba postopkov vgrajenih v računalnik.
...
Matija Lokar, 2007
Kaj je algoritem
navodilo, kako opraviti določen postopek
KAJ storiti, KAKO to storiti
Končno zaporedje ukazov, ki, če jih
ubogamo, opravijo neko nalogo
Značilnosti algoritma
ima podatke
vrne rezultat (število, risba na zaslonu, izdelan
izdelek, ...)
je natančno določen
se vedno konča
mogoče ga je opraviti
Matija Lokar, 2007
Učenje programskih jezikov
Učenje izražanja določenega algoritma
Zasnova algoritma: enostavna, enostavni
problemi, ...
Učenje zapisovanja algoritma v dan jezik
Matija Lokar, 2007
Jezik
Sintaksa
Kako je sestavljen jezik
stavek, imeti napak polno.
Naravni jeziki: dokaj ohlapna sintaksa, z leti
spreminjajoča se
Semantika
Kaj sintaktično pravilen stavek pomeni
Sintaktično pravilni stavki lahko povejo
nesmisel.
Vsota števil 2 in 3 je 7.
Danes je padlo pol metra snega.
Konj ima zeleno nabrušen rep.
Matija Lokar, 2007
Sintaksa
Pravila, kako mora biti sestavljen program
stroga pravila omogočajo avtomatično
prevajanje
prevajalnik odkrije sintaktične napake
Napake v sintaksi:
javi prevajalnik
zgled
Matija Lokar, 2007
Semantika
Sintaktično pravilen, a drugače napačen program
class Narobe_semantika {
// Sintaktično pravilen, a semantično napačen program
static void Main(string[] g){
System.Console.WriteLine("Vsota stevil 2 + 3 = " + 2 * 3);
}
}
class Narobe_semantika2 {
// Sintaktično pravilen, a semantično napačen program
static void Main(string[] g) {
System.Console.WriteLine("Vsota stevil 2 + 3 = " + 2 + 3);
}
}
Matija Lokar, 2007
Semantika
Napake v semantiki:
razumevanje problema
Tehnike priprave programov
Strukturirano programiranje
Problem razgrajujemo na zaključene podprobleme, ki jih
razgrajujemo naprej
Ekstremno programiranje
...
Najprej pripravimo testne primere in pričakovane odgovore
Preverjanje, preverjanje, preverjanje
Ne moremo preveriti, ali program dela prav, lahko pa
ugotovimo, da ne dela prav
Matija Lokar, 2007