Tässä jaksossa käydään läpi C#:n rajapinnat sekä lambda-lausekkeet.
Rajapinnat ovat tapa tehdä tyyppiyhteensopivuus eri luokille jotka eivät ole samassa periytymishierarkiassa. Rajapintojen avulla voidaan toteuttaa myös Dependency Injection -design pattern.
C#-kielessä on ollut alusta saakka delegaattimääritys joka mahdollistaa metodiosoitteiden tallettamisen muuttujiin. Näin metodeja voidaan kutsua epäsuorasti ja luokat voivat välittää omia metodejaan keskenään. Luokkien välinen kommunikointi onkin usein tehty delegaattien avulla. Lambda-lausekkeen avulla voidaan tehdä metodeja joilla ei ole erityistä nimeä ja joiden käyttökohta on yleensä hyvin paikallinen. Lambda-lausekkeet lyhentävät ohjelmakoodia erittäin paljon varsinkin LINQ:n yhteydessä ja jokaisen C#-ohjelmoijan pitää osata käyttää lambda-lauseita.
PRO Live: .NET: Projektit ja Visual Studio
PRO Live: .NET: C# perusrakenteet
PRO Live: .NET: C# Olio-ohjelmointi
PRO Live: .NET: C# Poikkeuskäsittely ja attribuutit
PRO Live: .NET: C# Generics ja struct
PRO Live: .NET: Kokoelmaluokat ja taulukot
PRO Live: .NET: C# Rajapinnat ja lambda
PRO Live: .NET: LINQ
PRO Live: .NET: Task/async/await
PRO Live: .NET: DLL
PRO Live: .NET: EF – Entity Framework
PRO Live: .NET: WPF
PRO Live on kouluttajan vetämä online-täsmäkoulutus valittuun aiheeseen. Pääset puolessatoista tunnissa kouluttajan johdolla kiinni aiheeseen nopeasti ja sinulla on aikaa myös kysyä juuri sinua askarruttavia asioita. Kouluttaja on koonnut sinulle valmiiksi paketin, josta saat heti hyödyn irti.
Avainsanat: C#, delekaatti, event, inderface, Lambda, rajapinta
Heikin pitämien kurssien aihevalikoima on ollut vähintäänkin laaja. Pääsääntöisesti kurssit ovat olleet ohjelmointikursseja, mutta myös tietokantojen ohjelmointikurssit ja SQL-kieli kuuluvat valikoimaan. Heikki on paljon mukana asiakasprojekteissa koodaamassa, mistä saatu oppi antaa hyvää kokemusta kurssien pitämiseen.
FM, MCPD, MCTS, MCT, CSM, SCJP, senior-konsultti. C#, C/C++ -kielten, .NET Framework/Coren, Visual Studion, tietokantaohjelmoinnin, Web Back-Endin, Azuren ja yleisen sovelluskehityksen asiantuntija.