Struktura programa

Programski jezici se mogu klasifikovati u više kategorija po više različitih kriterijuma. Jedan od često korišćenih kriterijuma je i zavisnost od „mašine“ na kojoj se izvršava. Tako postoje:

·         Mašinski zavisni i

·         Mašinski nezavisni jezici.

U mašinski zavisne jezike svrstavaju se jezici koji su u direktnoj zavisnosti sa procesorom na kome se program izvršava. To znači da se za pisanje programa na tim jezicima mora poznavati struktura procesora za koji se jezik piše i da program napisan za jedan procesor ne može se izvršavati na nekom drugom procesoru.

Mašinski nezavisni jezici su programski jezici visokog nivoa ili proceduralno orjentisani programski jezici, kao i programski jezici veoma visokog nivoa, tj aplikativni ili problemski orjentisani programski jezici. 

Sa razvojem programskih jezika uporedo je išao i razvoj programskih paradigmi (programskih modela) i stilova programiranja. Tako imamo sledeće vrste programiranja: modularno, strukturno, rekuzivno, objektno, logičko, paralelno, simboličko itd. 

Najznačajnije programske paradigme među programskim jezicima višeg nivoa su proceduralna i objektno orjentisana

Tradicionalno proceduralno programiranja se sastoji od niza funkcija i njihovih poziva, dok se objektno orjentisano bazira na objektima i njihovoj međusobnoj komunikaciji. Objektno orjentisano programiranje bolje i skladnije oslikava realni svet i omogućava logičnije projektovanje i realizaciju programa. Naravno, jedan problem se može rešiti i pomoću tradicionalnog i proceduralnog programiranja i pomoću objektnog programiranja. Razlike su samo u naporu koji se ulaže u razvoj a kasnije i održavanje programa. Programski jezik C#.NET omogućava objektno orjentisano programiranje. Još jedna značajna novina C# je i mogućnost razvijanja različitih vrsta aplikacija: konzola, Windows, Web. C# spada u kategoriju najpopularnijih programskih jezika.

            Svaki programski jezik ima elemente koji ga karakterišu i to su:

·         Azbuka,

·         Rezervisane reči,

·         Konstante,

·         Promenljive.

Azbuku programskog jezika C# čine mala i velika slova engleskog alfabeta, cifre, specijalni znaci (npr. aritmetičke operacije, relacije, itd.) i razdelnici (tačka, dvotačka, tačka zarez itd.).