dotnetomaniak.pl - Artykuły z tagiem interfacedotnetomaniak.pl - Artykuły z tagiem interface2024-03-29T13:35:27Zhttps://dotnetomaniak.pl/Tags/interfaceCopyright (c) dotnetomaniak.pldotnetomaniak.pl Atom Generatordotnetomaniak.pl webmasteradmin@dotnetomaniak.plhttps://dotnetomaniak.pl/Assets/Images/fav.icohttps://dotnetomaniak.pl/Assets/Images/dotnetomaniak_logo-negatyw_small.png18025https://dotnetomaniak.pl/vs-Contravariance-vs-Covariance-the-easier-part-1-A-Girl-Among-Geeks<in T> vs <out T> - Contravariance vs Covariance – (the easier) part 1. – A Girl Among Geeks2019-05-28T23:46:59Z<div><div><div style="float:right"><img alt ="" src="http://dotnetomaniak.pl/Data/Thumbnails/small_9iQx25bys0WFe44PVNPQUQ.png"/></div><div>Have you ever seen these mysterious ‘in’ and ‘out’ keywords in generic interfaces’ definitions? If so, you’ve probably already checked what it means, but if not… You better read this and the next post. So today we will talk about the basics of variance in our own generic interfaces.</div></div><div style="padding-top:4px"><a rev="vote-for" href="https://dotnetomaniak.pl/vs-Contravariance-vs-Covariance-the-easier-part-1-A-Girl-Among-Geeks"><img alt="Podbij ↑" src="https://dotnetomaniak.pl/image.axd?url=https%3a%2f%2fagirlamonggeeks.com%2f2019%2f05%2f29%2fvs-in-generic-interfaces-contravariance-vs-covariance-the-easier-part-1%2f" style="border:0px"/></a></div></div>AGirlAmongGeekshttps://dotnetomaniak.pl/Users/BR4sTPFFt06GUon4bGbBcQ2019-05-29T05:56:36Zhttps://dotnetomaniak.pl/vs-Contravariance-vs-Covariance-the-easier-part-1-A-Girl-Among-Geeks11220Have you ever seen these mysterious ‘in’ and ‘out’ keywords in generic interfaces’ definitions? If so, you’ve probably already checked what it means, but if not… You better read this and the next post. So today we will talk about the basics of variance in our own generic interfaces.https://agirlamonggeeks.com/2019/05/29/vs-in-generic-interfaces-contravariance-vs-covariance-the-easier-part-1/http://dotnetomaniak.pl/Data/Thumbnails/small_9iQx25bys0WFe44PVNPQUQ.pnghttps://dotnetomaniak.pl/Wzorzec-projektowy-Twoim-wzorcem-cz-3-Budowniczy-nomesscodeWzorzec projektowy Twoim wzorcem cz. 3. Budowniczy - nomesscode2018-09-23T18:01:11Z<div><div><div style="float:right"><img alt ="" src="http://dotnetomaniak.pl/Data/Thumbnails/small_9hQjKcK50kCWAZDI1XGy7g.png"/></div><div>Dzisiaj czas na kolejny wpis poświęcony wzorcom kreacyjnym, a konkretnie na omówienie wzorca projektowego Builder. Builder jest wzorcem, który dzieli implementację obiektu na etapy.</div></div><div style="padding-top:4px"><a rev="vote-for" href="https://dotnetomaniak.pl/Wzorzec-projektowy-Twoim-wzorcem-cz-3-Budowniczy-nomesscode"><img alt="Podbij ↑" src="https://dotnetomaniak.pl/image.axd?url=http%3a%2f%2fnomesscode.pl%2fwzorzec-projektowy-twoim-wzorcem-cz-3-budowniczy%2f" style="border:0px"/></a></div></div>igorzyskohttps://dotnetomaniak.pl/Users/ZZW0KXvZzEqeulFaAqwn7A2018-09-24T07:02:11Zhttps://dotnetomaniak.pl/Wzorzec-projektowy-Twoim-wzorcem-cz-3-Budowniczy-nomesscode21020Dzisiaj czas na kolejny wpis poświęcony wzorcom kreacyjnym, a konkretnie na omówienie wzorca projektowego Builder. Builder jest wzorcem, który dzieli implementację obiektu na etapy.http://nomesscode.pl/wzorzec-projektowy-twoim-wzorcem-cz-3-budowniczy/http://dotnetomaniak.pl/Data/Thumbnails/small_9hQjKcK50kCWAZDI1XGy7g.pnghttps://dotnetomaniak.pl/Interfejsy-w-C-jak-i-kiedy-ich-uzywacInterfejsy w C# - jak i kiedy ich używać?2018-08-22T20:12:24Z<div><div><div style="float:right"><img alt ="" src="http://dotnetomaniak.pl/Data/Thumbnails/small_WIFmLCBcmUGw0Hk9UyTU_w.png"/></div><div>Na każdym etapie swojej kariery programista patrzy na interfejsy zupełnie inaczej.
Programista rozpoczynający przygodę z programowaniem nawet jeśli zrozumie technikę działania interfejsów, to prawdopodobnie w perspektywie całej architektury aplikacji nie będzie do końca przekonany o sensie ich używania.
Starszy programista z kolei dostrzeże wiele ich zalet, a wręcz konieczność ich stosowania..</div></div><div style="padding-top:4px"><a rev="vote-for" href="https://dotnetomaniak.pl/Interfejsy-w-C-jak-i-kiedy-ich-uzywac"><img alt="Podbij ↑" src="https://dotnetomaniak.pl/image.axd?url=http%3a%2f%2fnomesscode.pl%2finterfejsy-w-csharp-jak-i-kiedy-ich-uzywac%2f" style="border:0px"/></a></div></div>igorzyskohttps://dotnetomaniak.pl/Users/ZZW0KXvZzEqeulFaAqwn7A2018-08-24T07:44:10Zhttps://dotnetomaniak.pl/Interfejsy-w-C-jak-i-kiedy-ich-uzywac12350Na każdym etapie swojej kariery programista patrzy na interfejsy zupełnie inaczej.
Programista rozpoczynający przygodę z programowaniem nawet jeśli zrozumie technikę działania interfejsów, to prawdopodobnie w perspektywie całej architektury aplikacji nie będzie do końca przekonany o sensie ich używania.
Starszy programista z kolei dostrzeże wiele ich zalet, a wręcz konieczność ich stosowania..http://nomesscode.pl/interfejsy-w-csharp-jak-i-kiedy-ich-uzywac/http://dotnetomaniak.pl/Data/Thumbnails/small_WIFmLCBcmUGw0Hk9UyTU_w.pnghttps://dotnetomaniak.pl/TechOT-Programista-a-UI-Junior-NET-Dev[TechOT] Programista a UI | Junior .NET Dev2017-03-16T18:32:42Z<div><div><div style="float:right"><img alt ="" src="http://dotnetomaniak.pl/Data/Thumbnails/small_RwN-JJ1UDkOIqzdkiQ-NEg.png"/></div><div>Bawiąc się z interfejsem w aplikacji mobilnej naszła mnie refleksja. Dlaczego programiści nie chcą tworzyć ładnego UI?</div></div><div style="padding-top:4px"><a rev="vote-for" href="https://dotnetomaniak.pl/TechOT-Programista-a-UI-Junior-NET-Dev"><img alt="Podbij ↑" src="https://dotnetomaniak.pl/image.axd?url=http%3a%2f%2fjuniornetdev.pl%2f2017%2f03%2ftechot-programista-a-ui%2f" style="border:0px"/></a></div></div>juniornetdevhttps://dotnetomaniak.pl/Users/A5KCjhBSL0uO8idwJW38oA2017-03-18T08:00:34Zhttps://dotnetomaniak.pl/TechOT-Programista-a-UI-Junior-NET-Dev11280Bawiąc się z interfejsem w aplikacji mobilnej naszła mnie refleksja. Dlaczego programiści nie chcą tworzyć ładnego UI?http://juniornetdev.pl/2017/03/techot-programista-a-ui/http://dotnetomaniak.pl/Data/Thumbnails/small_RwN-JJ1UDkOIqzdkiQ-NEg.pnghttps://dotnetomaniak.pl/How-to-use-an-interface-to-automate-workHow to use an interface to automate work!2017-02-22T21:21:06Z<div><div><div style="float:right"><img alt ="" src="http://dotnetomaniak.pl/Data/Thumbnails/small_FvIkYJ3Lf0eK-jl2aFPkbg.png"/></div><div>W trakcie prac nad dosyć skomplikowanym systemem walidacyjnym zastosowałem interfejsy i System.Reflection aby uprościć wywoływanie kolejnych reguł biznesowych.</div></div><div style="padding-top:4px"><a rev="vote-for" href="https://dotnetomaniak.pl/How-to-use-an-interface-to-automate-work"><img alt="Podbij ↑" src="https://dotnetomaniak.pl/image.axd?url=http%3a%2f%2fblog.mariuszklimek.eu%2fadventures-in-c-sharp%2fautomate-work-with-interface%2f" style="border:0px"/></a></div></div>mauriceklimekhttps://dotnetomaniak.pl/Users/pwCToOP3tkyBMB8sq-nU5Q2017-02-27T19:09:14Zhttps://dotnetomaniak.pl/How-to-use-an-interface-to-automate-work22590W trakcie prac nad dosyć skomplikowanym systemem walidacyjnym zastosowałem interfejsy i System.Reflection aby uprościć wywoływanie kolejnych reguł biznesowych.http://blog.mariuszklimek.eu/adventures-in-c-sharp/automate-work-with-interface/http://dotnetomaniak.pl/Data/Thumbnails/small_FvIkYJ3Lf0eK-jl2aFPkbg.pnghttps://dotnetomaniak.pl/Otwarte-karty-Jaroslaw-StadnickiOtwarte karty | Jarosław Stadnicki2016-08-03T08:06:25Z<div><div><div style="float:right"><img alt ="" src="http://dotnetomaniak.pl/Data/Thumbnails/small_kjywOoSqVEiF-Ed_LX77RQ.png"/></div><div>Public, Protected, Private
Do czego służą modyfikatory dostępu? Do ograniczania dostępu do metod, pól i właściwości klas (C#). Ograniczenie to sprawdzane jest w trakcie kompilacji i gdy sięgasz za daleko taki komunikat pojawia się na ekranie:
Error CS0122 ‚Test.fooPrivate()’ is inaccessible due to its protection level.
Ale wystarczy odrobina refleksji tu i tam i można spokojnie olać modyfikatory:
Klasa Test (@21) to twór na potrzeby przykładu. Wcześniej (@9) tworzę in...</div></div><div style="padding-top:4px"><a rev="vote-for" href="https://dotnetomaniak.pl/Otwarte-karty-Jaroslaw-Stadnicki"><img alt="Podbij ↑" src="https://dotnetomaniak.pl/image.axd?url=http%3a%2f%2fjaroslawstadnicki.pl%2f2016%2f08%2fotwarte-karty%2f" style="border:0px"/></a></div></div>macabre13https://dotnetomaniak.pl/Users/fhlqNErsNUqYrZJbiIHNYA2016-08-12T06:52:29Zhttps://dotnetomaniak.pl/Otwarte-karty-Jaroslaw-Stadnicki11690Public, Protected, Private
Do czego służą modyfikatory dostępu? Do ograniczania dostępu do metod, pól i właściwości klas (C#). Ograniczenie to sprawdzane jest w trakcie kompilacji i gdy sięgasz za daleko taki komunikat pojawia się na ekranie:
Error CS0122 ‚Test.fooPrivate()’ is inaccessible due to its protection level.
Ale wystarczy odrobina refleksji tu i tam i można spokojnie olać modyfikatory:
Klasa Test (@21) to twór na potrzeby przykładu. Wcześniej (@9) tworzę in...http://jaroslawstadnicki.pl/2016/08/otwarte-karty/http://dotnetomaniak.pl/Data/Thumbnails/small_kjywOoSqVEiF-Ed_LX77RQ.pnghttps://dotnetomaniak.pl/IoC1-Dependency-Injection-MD-Tech-BlogIoC[1] - Dependency Injection - MD Tech Blog2016-03-11T09:08:58Z<div><div><div style="float:right"><img alt ="" src="http://dotnetomaniak.pl/Data/Thumbnails/small_XQslUxfy8U2QnbGvN3tQvA.png"/></div><div>Zanim omówimy czym jest IoC i jak będę go używał, zacznijmy od tego czym jest Dependency Injection. Głównie chodzi o to, żeby rozdzielić implementacje poszczególnych klas. (...)</div></div><div style="padding-top:4px"><a rev="vote-for" href="https://dotnetomaniak.pl/IoC1-Dependency-Injection-MD-Tech-Blog"><img alt="Podbij ↑" src="https://dotnetomaniak.pl/image.axd?url=http%3a%2f%2fwww.md-techblog.net.pl%2f%3fp%3d1261" style="border:0px"/></a></div></div>manio143https://dotnetomaniak.pl/Users/03m9PeuZaE-jS6REtyFJMg2016-03-14T15:55:01Zhttps://dotnetomaniak.pl/IoC1-Dependency-Injection-MD-Tech-Blog11650Zanim omówimy czym jest IoC i jak będę go używał, zacznijmy od tego czym jest Dependency Injection. Głównie chodzi o to, żeby rozdzielić implementacje poszczególnych klas. (...)http://www.md-techblog.net.pl/?p=1261http://dotnetomaniak.pl/Data/Thumbnails/small_XQslUxfy8U2QnbGvN3tQvA.pnghttps://dotnetomaniak.pl/SharpOffice-IBlessed-blogoslawione-interfesjy-MD-Tech-Blog[SharpOffice] IBlessed - błogosławione interfesjy - MD Tech Blog2016-03-09T15:30:46Z<div><div><div style="float:right"><img alt ="" src="http://dotnetomaniak.pl/Data/Thumbnails/small_bYPA5xh1qUu0aXO3p1Ikiw.png"/></div><div>Nie zdawałem sobie sprawy jak bardzo łatwiej pisać kod w oparciu o interfejsy. Zamiast tworzyć od razu klasy i martwić się ich implementacją, możemy odłożyć to zadanie na przyszłość. Dzięki temu można stworzyć hierarchię zależności między typami, nie martwiąc się zbytnio wnętrzem interfejsu.</div></div><div style="padding-top:4px"><a rev="vote-for" href="https://dotnetomaniak.pl/SharpOffice-IBlessed-blogoslawione-interfesjy-MD-Tech-Blog"><img alt="Podbij ↑" src="https://dotnetomaniak.pl/image.axd?url=http%3a%2f%2fwww.md-techblog.net.pl%2f2016%2f03%2fiblessed-blogoslawione-interfesjy%2f" style="border:0px"/></a></div></div>manio143https://dotnetomaniak.pl/Users/03m9PeuZaE-jS6REtyFJMg2016-03-10T21:03:57Zhttps://dotnetomaniak.pl/SharpOffice-IBlessed-blogoslawione-interfesjy-MD-Tech-Blog1890Nie zdawałem sobie sprawy jak bardzo łatwiej pisać kod w oparciu o interfejsy. Zamiast tworzyć od razu klasy i martwić się ich implementacją, możemy odłożyć to zadanie na przyszłość. Dzięki temu można stworzyć hierarchię zależności między typami, nie martwiąc się zbytnio wnętrzem interfejsu.http://www.md-techblog.net.pl/2016/03/iblessed-blogoslawione-interfesjy/http://dotnetomaniak.pl/Data/Thumbnails/small_bYPA5xh1qUu0aXO3p1Ikiw.pnghttps://dotnetomaniak.pl/Powiedz-nie-newPowiedz nie new...2015-03-30T20:41:52Z<div><div><div style="float:right"><img alt ="" src="http://dotnetomaniak.pl/Data/Thumbnails/small_ie7P7nzrlkanGHOdUZ4L9w.png"/></div><div>Ale o czym dzisiaj, dzisiaj o obcisłości po angielsku w programowaniu. Słowo tight będzie jednym z bohaterów wpisu. A nawet tight coupling, czyli coś mocno wiążącego. Co tak mocno wiąże w programowaniu? Moim zdanie new jest temu winny. Wiąże bowiem ono ze sobą klienta, klasę którą korzysta z new aby zaspokoić swoje potrzeby, oraz dostarczyciela usługi, czyli klasę, która jest w stanie zaspokoić tę (tą) potrzebę.</div></div><div style="padding-top:4px"><a rev="vote-for" href="https://dotnetomaniak.pl/Powiedz-nie-new"><img alt="Podbij ↑" src="https://dotnetomaniak.pl/image.axd?url=http%3a%2f%2fjstadnicki.blogspot.com%2f2015%2f03%2fpowiedz-nie-new.html" style="border:0px"/></a></div></div>rroszczykhttps://dotnetomaniak.pl/Users/2o4PgKTTaUiL_ds1o3Nhxg2015-04-08T07:22:18Zhttps://dotnetomaniak.pl/Powiedz-nie-new45450Ale o czym dzisiaj, dzisiaj o obcisłości po angielsku w programowaniu. Słowo tight będzie jednym z bohaterów wpisu. A nawet tight coupling, czyli coś mocno wiążącego. Co tak mocno wiąże w programowaniu? Moim zdanie new jest temu winny. Wiąże bowiem ono ze sobą klienta, klasę którą korzysta z new aby zaspokoić swoje potrzeby, oraz dostarczyciela usługi, czyli klasę, która jest w stanie zaspokoić tę (tą) potrzebę.http://jstadnicki.blogspot.com/2015/03/powiedz-nie-new.htmlhttp://dotnetomaniak.pl/Data/Thumbnails/small_ie7P7nzrlkanGHOdUZ4L9w.pnghttps://dotnetomaniak.pl/IT-blog-by-Gosia-InterfejsyIT blog by Gosia - Interfejsy2013-08-20T04:48:29Z<div><div><div style="float:right"><img alt ="" src="http://dotnetomaniak.pl/Data/Thumbnails/small_9B6XFEIpSU-66VL0N-nELA.png"/></div><div>Interfejs nie zawiera żadnego kodu użycia, a jedynie specyfikacje metod i ich właściwości. Poprzez dziedziczenie interfejsu przez klasę lub strukturę możemy zagwarantować implementacje danych zachowań. Dobrą praktyką jest, aby interfejsy zaczynały się od dużej litery I. Również samo Visual Studio daje nam kilka gotowych interfejsów, które jak widać poniżej, zaczynają się od duże litery I.
Definicję interefejsu zapisujemy za pomocą slowa kluczowego interface. Np:interface ICzlowiek
{
}
Interfejs...</div></div><div style="padding-top:4px"><a rev="vote-for" href="https://dotnetomaniak.pl/IT-blog-by-Gosia-Interfejsy"><img alt="Podbij ↑" src="https://dotnetomaniak.pl/image.axd?url=http%3a%2f%2fgosiaborzecka.net%2finterfejsy" style="border:0px"/></a></div></div>gosiahttps://dotnetomaniak.pl/Users/Rta-yiTbjUy80KsmkvVtLQ2013-08-29T16:20:23Zhttps://dotnetomaniak.pl/IT-blog-by-Gosia-Interfejsy12410Interfejs nie zawiera żadnego kodu użycia, a jedynie specyfikacje metod i ich właściwości. Poprzez dziedziczenie interfejsu przez klasę lub strukturę możemy zagwarantować implementacje danych zachowań. Dobrą praktyką jest, aby interfejsy zaczynały się od dużej litery I. Również samo Visual Studio daje nam kilka gotowych interfejsów, które jak widać poniżej, zaczynają się od duże litery I.
Definicję interefejsu zapisujemy za pomocą slowa kluczowego interface. Np:interface ICzlowiek
{
}
Interfejs...http://gosiaborzecka.net/interfejsyhttp://dotnetomaniak.pl/Data/Thumbnails/small_9B6XFEIpSU-66VL0N-nELA.pnghttps://dotnetomaniak.pl/Piotr-Zielinski-Interfejsy-implementacja-jawna-vs-niejawnaPiotr Zieliński » Interfejsy: implementacja jawna vs. niejawna2012-10-29T20:41:27Z<div><div><div style="float:right"><img alt ="" src="http://dotnetomaniak.pl/Data/Thumbnails/small_9gf6UO1zz0OnGMjqQOoUcQ.png"/></div><div>W C# można implementować interfejsy na dwa sposoby: jawny oraz niejawny. Rozważmy poniższy interfejs:interface ISerializable
{
void Serialize(string path);
}
Implementacja jawna:class ExplicitImplementation:ISerializable
{
#region ISerializable Membersvoid ISerializable.Serialize(string path)
{
thrownew NotImplementedException();
}
#endregion
}
Implementacja niejawna:class ImplicitImplementation:ISerializable
{
#region ISerializable Membersvoid ISerializable.Serial...</div></div><div style="padding-top:4px"><a rev="vote-for" href="https://dotnetomaniak.pl/Piotr-Zielinski-Interfejsy-implementacja-jawna-vs-niejawna"><img alt="Podbij ↑" src="https://dotnetomaniak.pl/image.axd?url=http%3a%2f%2fwww.pzielinski.com%2f%3fp%3d1387" style="border:0px"/></a></div></div>pzielinskihttps://dotnetomaniak.pl/Users/uL1CEj4isEuRvajW8gS3pQ2012-11-08T15:41:50Zhttps://dotnetomaniak.pl/Piotr-Zielinski-Interfejsy-implementacja-jawna-vs-niejawna21320W C# można implementować interfejsy na dwa sposoby: jawny oraz niejawny. Rozważmy poniższy interfejs:interface ISerializable
{
void Serialize(string path);
}
Implementacja jawna:class ExplicitImplementation:ISerializable
{
#region ISerializable Membersvoid ISerializable.Serialize(string path)
{
thrownew NotImplementedException();
}
#endregion
}
Implementacja niejawna:class ImplicitImplementation:ISerializable
{
#region ISerializable Membersvoid ISerializable.Serial...http://www.pzielinski.com/?p=1387http://dotnetomaniak.pl/Data/Thumbnails/small_9gf6UO1zz0OnGMjqQOoUcQ.pnghttps://dotnetomaniak.pl/Me-z-NET-tete-a-tete-Interfejs-chcialbym-sprostowac-to-nie-jest-klasa-bazowaMe z .NET tete-a-tete » Interfejs (chciałbym sprostować), to nie jest klasa bazowa2012-10-22T20:49:22Z<div><div><div style="float:right"><img alt ="" src="http://dotnetomaniak.pl/Data/Thumbnails/small_lkexZfos2UaObcQGMsFO4w.png"/></div><div>W zeszłym tygodniu na dotNETomaniaku wypromowano artykuł na temat interfejsów. Zapoznałem się z nim i odnoszę wrażenie, że autor nie rozumie w pełni roli interfejsu i myli go z klasą bazową. O taką pomyłkę rzeczywiście nietrudno, wiele klas buduje bowiem swoją funkcjonalność na podstawie interfejsów, ale to nie oznacza automatycznie, że interfejs jest ich przodkiem, zaczynem.
Trzeba zacząć od tego, że choć interfejs umieszcza się w definicji klasy tak samo jak klasę dziedziczoną...</div></div><div style="padding-top:4px"><a rev="vote-for" href="https://dotnetomaniak.pl/Me-z-NET-tete-a-tete-Interfejs-chcialbym-sprostowac-to-nie-jest-klasa-bazowa"><img alt="Podbij ↑" src="https://dotnetomaniak.pl/image.axd?url=http%3a%2f%2fpaskol.robi.to%2f%3fp%3d736" style="border:0px"/></a></div></div>PaSkolhttps://dotnetomaniak.pl/Users/sUBC3E7R3EOSh3kdRdSDew2012-11-01T20:42:56Zhttps://dotnetomaniak.pl/Me-z-NET-tete-a-tete-Interfejs-chcialbym-sprostowac-to-nie-jest-klasa-bazowa2970W zeszłym tygodniu na dotNETomaniaku wypromowano artykuł na temat interfejsów. Zapoznałem się z nim i odnoszę wrażenie, że autor nie rozumie w pełni roli interfejsu i myli go z klasą bazową. O taką pomyłkę rzeczywiście nietrudno, wiele klas buduje bowiem swoją funkcjonalność na podstawie interfejsów, ale to nie oznacza automatycznie, że interfejs jest ich przodkiem, zaczynem.
Trzeba zacząć od tego, że choć interfejs umieszcza się w definicji klasy tak samo jak klasę dziedziczoną...http://paskol.robi.to/?p=736http://dotnetomaniak.pl/Data/Thumbnails/small_lkexZfos2UaObcQGMsFO4w.pnghttps://dotnetomaniak.pl/Programowanie-w-NET-O-interfejsach-raz-jeszczeProgramowanie w .NET: O interfejsach raz jeszcze2012-10-16T18:39:13Z<div><div><div style="float:right"><img alt ="" src="http://dotnetomaniak.pl/Data/Thumbnails/small_IRnsVDO6FEG4zRAAuVTsfQ.png"/></div><div>O interfejsach napisano już wiele artykułów. Postaram się dlatego podejść do tego zagadnienia od innej strony. Na początek pytanie: czym różni się metoda wirtualna od implementacji metody z interfejsu? Mogło by się zdawać, że są to bardzo podobne operacje.</div></div><div style="padding-top:4px"><a rev="vote-for" href="https://dotnetomaniak.pl/Programowanie-w-NET-O-interfejsach-raz-jeszcze"><img alt="Podbij ↑" src="https://dotnetomaniak.pl/image.axd?url=http%3a%2f%2fpatryknet.blogspot.com%2f2012%2f10%2fo-interfejsach-raz-jeszcze.html" style="border:0px"/></a></div></div>psz750https://dotnetomaniak.pl/Users/dJmbAXo8w06UvXwoag8pUA2012-10-25T14:32:53Zhttps://dotnetomaniak.pl/Programowanie-w-NET-O-interfejsach-raz-jeszcze21970O interfejsach napisano już wiele artykułów. Postaram się dlatego podejść do tego zagadnienia od innej strony. Na początek pytanie: czym różni się metoda wirtualna od implementacji metody z interfejsu? Mogło by się zdawać, że są to bardzo podobne operacje.http://patryknet.blogspot.com/2012/10/o-interfejsach-raz-jeszcze.htmlhttp://dotnetomaniak.pl/Data/Thumbnails/small_IRnsVDO6FEG4zRAAuVTsfQ.pnghttps://dotnetomaniak.pl/Jawna-implementacja-interfejsow-jako-rozwiazanie-konfliktu-nazw-Developer-notesJawna implementacja interfejsów jako rozwiązanie konfliktu nazw « Developer notes2012-08-25T06:47:46Z<div><div><div style="float:right"><img alt ="" src="http://dotnetomaniak.pl/Data/Thumbnails/small_RIyAoeUi0EChy0p9B3xyGQ.png"/></div><div>Implementując w danej klasie kilka interfejsów możemy spotkać się z sytuacją, w której różne interfejsy będą posiadały składowe o tych samych nazwach. A co jeżeli metoda jednego z interfejsów ma inne przeznaczenie niż metoda innego i ich kod powinien być różny? Rozwiązaniem tego problemu jest jawna implementacja interfejsów.</div></div><div style="padding-top:4px"><a rev="vote-for" href="https://dotnetomaniak.pl/Jawna-implementacja-interfejsow-jako-rozwiazanie-konfliktu-nazw-Developer-notes"><img alt="Podbij ↑" src="https://dotnetomaniak.pl/image.axd?url=http%3a%2f%2fmndevnotes.wordpress.com%2f2012%2f08%2f25%2fjawna-implementacja-interfejsow-jako-rozwiazanie-konfliktu-nazw%2f" style="border:0px"/></a></div></div>psz750https://dotnetomaniak.pl/Users/dJmbAXo8w06UvXwoag8pUA2012-09-03T19:34:37Zhttps://dotnetomaniak.pl/Jawna-implementacja-interfejsow-jako-rozwiazanie-konfliktu-nazw-Developer-notes21010Implementując w danej klasie kilka interfejsów możemy spotkać się z sytuacją, w której różne interfejsy będą posiadały składowe o tych samych nazwach. A co jeżeli metoda jednego z interfejsów ma inne przeznaczenie niż metoda innego i ich kod powinien być różny? Rozwiązaniem tego problemu jest jawna implementacja interfejsów.http://mndevnotes.wordpress.com/2012/08/25/jawna-implementacja-interfejsow-jako-rozwiazanie-konfliktu-nazw/http://dotnetomaniak.pl/Data/Thumbnails/small_RIyAoeUi0EChy0p9B3xyGQ.pnghttps://dotnetomaniak.pl/C-Interfejsy-ktore-warto-znac-Alt-Control-DeleteC# - Interfejsy które warto znać - Alt Control Delete2012-05-07T07:06:13Z<div><div><div style="float:right"><img alt ="" src="http://dotnetomaniak.pl/Data/Thumbnails/small_wPPx4aUFqkeippmgoAJjCQ.png"/></div><div>W obecnym czasie, z bardzo rozwiniętymi środowiskami programistycznymi, takimi jak choćby Visual Studio, czy też Eclipse, bardzo łatwo jest rozpocząć swoją przygodę z programowaniem, które w tym przypadku czasem bardziej przypomina zabawę z klockami, niż rzeczywiste .
Jednak nastawiając się na bezmyślne składanie klocków, szybko można obudzić się z przysłowiową , w sytuacji gdy zajdzie potrzeba modyfikacji lub rozszerzenia tak radośnie tworzonego kodu, a warto zaznaczyć, że nieumiejętnie sklejony kod może wymagać całkowitej reorganizacji, czy wręcz nawet przepisania w sytuacji gdy zajdzie potrzeba rozszerzenia bieżących funkcjonalności oprogramowania.
Jak sobie zatem z wszystkim poradzić? Przede wszystkim warto sięgnąć po wzorce projektowe, o których na łamach Alt Control Delete już nie raz wspominałem. Pomocne będą również tytułowe interfejsy przygotowane przez twórców języka, które jak dobrze wiadomo leżą u podstaw Polimorfizmu, a odpowiednio zastosowane mają naprawdę spory sens i możliwości - znacznie większe niż by się z pozoru wydawało.
Dziś postaram się zatem przedstawić Wam kilka interfejsów, które mnie osobiście szczególnie okazały się przydatne.</div></div><div style="padding-top:4px"><a rev="vote-for" href="https://dotnetomaniak.pl/C-Interfejsy-ktore-warto-znac-Alt-Control-Delete"><img alt="Podbij ↑" src="https://dotnetomaniak.pl/image.axd?url=http%3a%2f%2fwww.altcontroldelete.pl%2fartykuly%2fc-interfejsy-ktore-warto-znac-%2f" style="border:0px"/></a></div></div>Yurashttps://dotnetomaniak.pl/Users/1cnucJRn6UOcZ9xI-lViXA2012-05-16T17:09:55Zhttps://dotnetomaniak.pl/C-Interfejsy-ktore-warto-znac-Alt-Control-Delete44750W obecnym czasie, z bardzo rozwiniętymi środowiskami programistycznymi, takimi jak choćby Visual Studio, czy też Eclipse, bardzo łatwo jest rozpocząć swoją przygodę z programowaniem, które w tym przypadku czasem bardziej przypomina zabawę z klockami, niż rzeczywiste .
Jednak nastawiając się na bezmyślne składanie klocków, szybko można obudzić się z przysłowiową , w sytuacji gdy zajdzie potrzeba modyfikacji lub rozszerzenia tak radośnie tworzonego kodu, a warto zaznaczyć, że nieumiejętnie sklejony kod może wymagać całkowitej reorganizacji, czy wręcz nawet przepisania w sytuacji gdy zajdzie potrzeba rozszerzenia bieżących funkcjonalności oprogramowania.
Jak sobie zatem z wszystkim poradzić? Przede wszystkim warto sięgnąć po wzorce projektowe, o których na łamach Alt Control Delete już nie raz wspominałem. Pomocne będą również tytułowe interfejsy przygotowane przez twórców języka, które jak dobrze wiadomo leżą u podstaw Polimorfizmu, a odpowiednio zastosowane mają naprawdę spory sens i możliwości - znacznie większe niż by się z pozoru wydawało.
Dziś postaram się zatem przedstawić Wam kilka interfejsów, które mnie osobiście szczególnie okazały się przydatne.http://www.altcontroldelete.pl/artykuly/c-interfejsy-ktore-warto-znac-/http://dotnetomaniak.pl/Data/Thumbnails/small_wPPx4aUFqkeippmgoAJjCQ.pnghttps://dotnetomaniak.pl/Klasa-object-klasy-abstrakcyjne-interfejsy-i-struktury-w-CKlasa object, klasy abstrakcyjne, interfejsy i struktury w C#2012-03-15T11:17:24Z<div><div><div style="float:right"><img alt ="" src="http://dotnetomaniak.pl/Data/Thumbnails/small_ISsF9mtGJU-vGy5RVN5FgA.png"/></div><div>Można by rzec ,,Im głębiej w las tym ciemniej”. Po zapoznaniu się ze wcześniejszymi artykułami na temat Klas w C# i Dziedziczenia przyszedł czas na klasę object, klasy abstrakcyjne, instancje i struktury. Może nie są to bardzo trudne zagadnienia ale jeżeli poznasz je i zrozumiesz będziesz mógł tworzyć programy wydajniejsze i bardziej skąplikowane. Zapraszam do lektury.</div></div><div style="padding-top:4px"><a rev="vote-for" href="https://dotnetomaniak.pl/Klasa-object-klasy-abstrakcyjne-interfejsy-i-struktury-w-C"><img alt="Podbij ↑" src="https://dotnetomaniak.pl/image.axd?url=http%3a%2f%2fkodzimy.net%2fcsharp%2f2011%2f11%2f04%2fklasa-object-klasy-abstrakcyjne-instancje-i-struktury-w-csharp%2f" style="border:0px"/></a></div></div>kodzimy-nethttps://dotnetomaniak.pl/Users/qNR6FhI4cUWor0emPZeutQ2012-03-24T18:08:27Zhttps://dotnetomaniak.pl/Klasa-object-klasy-abstrakcyjne-interfejsy-i-struktury-w-C13060Można by rzec ,,Im głębiej w las tym ciemniej”. Po zapoznaniu się ze wcześniejszymi artykułami na temat Klas w C# i Dziedziczenia przyszedł czas na klasę object, klasy abstrakcyjne, instancje i struktury. Może nie są to bardzo trudne zagadnienia ale jeżeli poznasz je i zrozumiesz będziesz mógł tworzyć programy wydajniejsze i bardziej skąplikowane. Zapraszam do lektury.http://kodzimy.net/csharp/2011/11/04/klasa-object-klasy-abstrakcyjne-instancje-i-struktury-w-csharp/http://dotnetomaniak.pl/Data/Thumbnails/small_ISsF9mtGJU-vGy5RVN5FgA.pnghttps://dotnetomaniak.pl/C-Interfejsy-z-czym-to-sie-je-Arvangen[C#] Interfejsy – z czym to się je? « Arvangen2011-11-25T15:22:37Z<div><div><div style="float:right"><img alt ="" src="http://dotnetomaniak.pl/Data/Thumbnails/small_anEhFimzwUGVlnvnBnRx8g.png"/></div><div>Z serii: artykuły dla zielonych, może komuś pomoże zrozumieć czym są interfejsy w technologii .NET</div></div><div style="padding-top:4px"><a rev="vote-for" href="https://dotnetomaniak.pl/C-Interfejsy-z-czym-to-sie-je-Arvangen"><img alt="Podbij ↑" src="https://dotnetomaniak.pl/image.axd?url=http%3a%2f%2farvangen.wordpress.com%2f2011%2f11%2f25%2fc-interfejsy-z-czym-to-sie-je%2f" style="border:0px"/></a></div></div>Arvangenhttps://dotnetomaniak.pl/Users/N6H3HD3ZIU22pIvniWVpdw2011-12-03T23:15:00Zhttps://dotnetomaniak.pl/C-Interfejsy-z-czym-to-sie-je-Arvangen13250Z serii: artykuły dla zielonych, może komuś pomoże zrozumieć czym są interfejsy w technologii .NEThttp://arvangen.wordpress.com/2011/11/25/c-interfejsy-z-czym-to-sie-je/http://dotnetomaniak.pl/Data/Thumbnails/small_anEhFimzwUGVlnvnBnRx8g.pnghttps://dotnetomaniak.pl/Piotr-Zielinski-Jak-serializowac-interfejsy-w-CPiotr Zieliński » Jak serializować interfejsy w C#?2011-10-20T17:51:54Z<div><div><div style="float:right"><img alt ="" src="http://dotnetomaniak.pl/Data/Thumbnails/small_FcYyse49qEmyxQszk1PMHg.png"/></div><div>XMLSerializer jest bardzo wygodnym sposobem zapisu klas w formie pliku XML. Rozważmy następujący przykład:publicinterface IData
{
// jakies dekleracjestring Text{get;set;}
}
publicclass Data: IData
{
publicstring Text{get{...}set{...}}
}
publicclass ClassA
{
public IData Data{get;set;}
}
Niestety po próbie serializacji dostaniemy wyjątek mówiący, że nie można zapisywać interfejsu. Jaka jest odpowiedź na pytanie zadanie w poście? NIE da się!
W poście mam zamiar pokazać wyłącznie pewne sposob...</div></div><div style="padding-top:4px"><a rev="vote-for" href="https://dotnetomaniak.pl/Piotr-Zielinski-Jak-serializowac-interfejsy-w-C"><img alt="Podbij ↑" src="https://dotnetomaniak.pl/image.axd?url=http%3a%2f%2fwww.pzielinski.com%2f%3fp%3d952" style="border:0px"/></a></div></div>pzielinskihttps://dotnetomaniak.pl/Users/uL1CEj4isEuRvajW8gS3pQ2011-10-30T15:02:14Zhttps://dotnetomaniak.pl/Piotr-Zielinski-Jak-serializowac-interfejsy-w-C13090XMLSerializer jest bardzo wygodnym sposobem zapisu klas w formie pliku XML. Rozważmy następujący przykład:publicinterface IData
{
// jakies dekleracjestring Text{get;set;}
}
publicclass Data: IData
{
publicstring Text{get{...}set{...}}
}
publicclass ClassA
{
public IData Data{get;set;}
}
Niestety po próbie serializacji dostaniemy wyjątek mówiący, że nie można zapisywać interfejsu. Jaka jest odpowiedź na pytanie zadanie w poście? NIE da się!
W poście mam zamiar pokazać wyłącznie pewne sposob...http://www.pzielinski.com/?p=952http://dotnetomaniak.pl/Data/Thumbnails/small_FcYyse49qEmyxQszk1PMHg.png