./ (directory)    <<    < back      Search       Optimization links    Igor Grešovnik    IGLib     
  
  

Course: C# for Scientists and Engineers

  This course teaches participants how to use the C# language and the .NET or Mono framework as development platform for scientific and engineering applications.


   Dragonfly Server Logo.            



Contents:

   
   Search  
    
     


  

About the Course

  This course is designed to teach scientists and engineers basics of using C# for development of their applications. The course was designed on basis of experience gained by development of the IGLib and various technical software derived form this library.

Documentation


  Core C# and .NET (Quick Reference).

  Faraz Rasheed: C# School (local), 2006.

  Srečo Uranič: C# .NET. A C# book in Slovene.

  Igor Grešovnik: Nasveti za programiranje vaj.


  See also:



Course Material for Download


  C# .NET projects for exercises.




Miscellaneous Information (in Slovene)


O tečaju

Tečaj bo potekal v sejni sobi Inštituta za kovinske materiale in tehnologije in bo v slovenščini. Tu nimamo na voljo računalnikov, zato naj udeleženci prinesejo s seboj prenosnike. Če kdo nima te možnosti, se bo pri delu pridružil komu, ki ima prenosnik. Pred tečajem si posnemite na prenosnik ali USB ključ vso gradivo za tečaj. Inštalirati si je potrebno tudi razvojno okolje Visual Studio za jezik C#, katerega osnovna verzija je prosto dostopna na Microsoftovih straneh. Za uporabo razvojnega okolja je potrebna brezplačna registracija preko računa Windowsl Live, ki si ga naredite, če ga še nimate.

Če uporbljate Linux, Mac OS ali kak drug operacijski sistem, ki ni MS Windows, lahko na tečaju uporabljate Mono, ki je prosta odprtokodna implementacija ogrodja in orodij kompatibilnih z .NET. Namesto Visual Studia boste v tem primeru uporabili razvojno okolje Mono develop. Projekti, ki jih bomo uporabili na tečaju, bi morali biti neposredno prenosljivi na Mono. Če niste vešči z razvojnimi okolji in imate to možnost, boste morda vseeno lažje delali z .NET in Visual Studiom.

Pri tečaju bomo spoznali osnove jezika C# in objektnega programiranja na vnaprej pripravljenih ilustrativnih primerih. Tečaj bo zelo praktično orientiran, na njem ne bo veliko razlaganja teorije, pač pa bo zgoščeno podano to, kar je pomembno za programiranje v praksi. Poudarek bo na znanju, ki ga potrebujemo za sodobno organiziran razvoj programske opreme, ki omogoča učinkovito izgradnjo kompleksnih sistemov.

Nekaj stvari bodo udeleženci tudi sami poskusili, vendar bo to v glavnem prepuščeno lastni iniciativi, ker želimo predelati veliko snovi v kratkem času. Zaradi tega je zelo priporočljivo, da udeleženci po vsakem delu tečaja ponovijo predelane stvari in jih dodatno pogledajo v literaturi ter kakšno stvar sami preizkusijo. V oporo temu bomo sproti predlagali ustrezne vaje za doma. Teh ne bomo posebej obravnavali na tečajih, so pa udeleženci prijazno vabljeni, da na tečaju postavijo vprašanja ali poročajo o morebitnih težavah, ki bi jih imeli pri programiranju.

Povzetek programa

Za ta tečaj nisem pripravil kakšnega posebnega programa, ker bo skupina precej heterogena in se bom moral sproti prilagajati. Navajam nekaj osnovnih značilnosti.

Tečaj bom vodil Igor Grešovnik.

Knjiga o C#

   Knjiga o C#, ki sem jo predlagal kot referenčno gradivo za tečaj, je zgoščena in brez pretiranega dolgovezenja, logično urejena ter vsebuje praktično vse, kar mora poznati nekdo, ki uporablja jezik za numerične aplikacije brez uporabniških vmesnikov in ostalih specializiranih funkcionalnosti. Knjiga vsebuje ravno pravšnje število primerov, kot je potrebno za ilustracijo uporabe.

   Na straneh 17-30 je razlaga osnovnih pojmov kot je okolje .NET ter opis tega, kako narediš enostavno C# aplikacijo v razvojnem okolju Visual Studio.

   Na straneh 23-52 je praktično vse, kar potrebuješ, da lahko uporabljaš C# na podoben način kot C ali FORTRAN (malo več informacij rabiš le o tabelah, kar je na straneh 129-134), tega je torej razmeroma malo in če znaš programirati v C ali C++, lahko to skoraj preskočiš.
Na straneh 53-189 je vse, kar potrebuješ, da lahko uporabljaš C# kot polno objektno orientiran jezik. Obravnavanje izjemnih situacij (Exception handling - strani 155-170) je tu že malo posebna tema, vendar precej pomembna, delegati (str. 171-189 - to je v C# ekvivalent kazalcev na funkcije iz C ali C++) pa so v C# sicer sestavni del jezika, vendar je njihovo razumevanje zares potrebno v redkih primerih.

  Strani od 190 naprej ne spadajo več v ožje območje jezika, ampak so tu opisi specifičnih tem, ki so del standardnih knjižnic v .NET (npr. uporabniški vmesniki, vmesniki z bazami podatkov, standardne datotečne operacije, večnitno programiranje in podobno). Od teh stvari so najbolj pomembne vhodnoizhodne operacije, torej 14. poglavje (str. 288-308, v preostanku poglavja do 321 so že zelo specifične teme, ki pridejo v poštev predvsem pri mrežnih aplikacijah, se pa ravno tu pokaže največja moč jezika in platforme).

Napotki za nadaljnje informacije


Programski jezik C# je zelo dobro podprt na straneh MSDN. Tu najdete pregledne informacije o vseh aspektih programskega jezika ter o knjižnicah .NET, ki jih uporabljamo pri programiranju s C# na operacijskih sistemih MS Windows (primer).

Na internetu obstaja precej strani s preglednimi primeri in kuharskimi recepti o tem, kako rešimo specifične probleme. Dobri strani s takšnmimi primeri sta C# corner z večinoma bolj elementarnimi primeri in CodeProject, kjer lahko najdete tudi precej kompleksne primere in kakšno zelo uporabno knjižnico.

Zelo uporabna stran s primeri je C# Examples, kjer je zbrana množica primerov, kako se v C# naredi najrazličnejše osnovne stvari (npr. naredi asinhrono metodo, prebere datoteko z interneta, formatira izpis števil ali datumov in podobno).

Za tiste, ki ste vešči programiranja v Javi, je odlično izhodišče primerjalni članek na angleški wikipedii Comparison of C Sharp and Java. Obstaja tudi primerjalni članek za Visual Basic.










Google
WWW    ../    ./     Igor at Arnes   Igor at Mrfreesite



  
 
  Maintained by Igor Grešovnik 
      
  Updated in September 2013  

Note: This site is under construction.      This page is under construction.
          Icon is missing. 



Number of accesses:     If you don't see the access counter properly then
        click on the link!    If you don't see the access counter properly then please follow this link!