Pytania otagowane jako c#

C # to wieloparadygmatyczny, zarządzany obiektowy język programowania ze zbieraniem elementów bezużytecznych stworzony przez firmę Microsoft równolegle z platformą .NET



1
Testy integracji w projektach OSS - jak obsługiwać uwierzytelnianie stron trzecich?
Jednym z moich hobby (open source) jest narzędzie do tworzenia kopii zapasowych, które tworzy kopie zapasowe w trybie offline repozytoriów z GitHub, Bitbucket itp. Wywołuje API hostów, aby uzyskać listę repozytoriów, a następnie używa Git / Mercurial / cokolwiek do klonowania / przeciągnij repozytoria na komputer lokalny. Mam więc testy …

3
Czy warto używać konstruktorów i płynnych interfejsów z inicjatorami obiektów?
W Javie i C # można utworzyć obiekt z właściwościami, które można ustawić przy inicjalizacji, poprzez zdefiniowanie konstruktora za pomocą parametrów, zdefiniowanie każdej właściwości po skonstruowaniu obiektu lub użycie wzorca interfejsu konstruktora / płynu. Jednak C # 3 wprowadził inicjatory obiektów i kolekcji, co oznaczało, że wzorzec konstruktora był w …

4
Czy zagwarantowanie niezmienności jest uzasadnieniem ujawnienia pola zamiast właściwości?
Ogólne wskazówki dla C # to zawsze używać właściwości w polu publicznym. Ma to sens - wystawiając pole, ujawniasz wiele szczegółów implementacji. Za pomocą właściwości hermetyzujesz ten szczegół, aby był ukryty przed użyciem kodu, a zmiany implementacyjne są oddzielone od zmian interfejsu. Zastanawiam się jednak, czy czasami występuje ważny wyjątek …

3
Właściwość abstrakcyjna w klasie bazowej, aby zmusić programistę do jej zdefiniowania
Koduję za pomocą wzorca stanu dla urządzenia osadzonego. Mam podstawową / abstrakcyjną klasę o nazwie State, a następnie każda dyskretna (konkretna) klasa stanu implementuje abstrakcyjną klasę State. W klasie państwowej mam kilka metod abstrakcyjnych. Jeśli nie zaimplementuję metod abstrakcyjnych w klasie dyskretnej (konkretnej), Visual Studio wyświetli błąd podobny do tego: …


2
Czy nadawca zdarzenia powinien być zawsze obiektem ogólnym?
Podczas programowania zdarzeń w języku C # zaleca się utworzenie delegata w postaci: delegate XEventHandler(object sender, XEventArgs e); Moje pytanie jest na pierwszym argumencie delegata object sender. Czy zawsze musi być ogólny object? Posiadanie nadawcy typu objectzawsze skutkuje kodem podobnym do tego. val = ((ConcreteType)sender).Property; lub jeszcze bardziej gadatliwy ConcreteType …
10 c#  event 


1
Dlaczego miałbyś tworzyć skrypt wdrażania w PowerShell, gdy masz TFS?
Eksperymentuję z automatycznym wdrażaniem / ciągłą integracją i rozmawiałem z szefem mojego zespołu. Powiedziałem mu, że badam tworzenie skryptów kompilacji / wdrażania w PowerShell, a on powiedział, że automatyczne wdrażanie jest bardzo łatwe do skonfigurowania w TFS za pomocą GUI i powinienem to zbadać. Mam zerowe doświadczenie z TFS, z …

6
Po co deklarować zmienne blisko miejsca ich użycia?
Słyszałem, jak ludzie mówią, że zmienne powinny być deklarowane tak blisko ich użycia, jak to możliwe. Nie rozumiem tego Na przykład ta zasada sugeruje, że powinienem to zrobić: foreach (var item in veryLongList) { int whereShouldIBeDeclared = item.Id; //... } Ale z pewnością oznacza to, że intprzy każdej iteracji powstają …
10 c#  .net  variables 

3
Czy nadal muszę używać stałego punktu, aby zagwarantować, że komputery uzyskają taki sam wynik w przypadku operacji matematycznych?
Powiedziano mi, że większość współczesnych komputerów stosuje ten sam standard zmiennoprzecinkowy. Czy to oznacza, że ​​wszystkie otrzymają tę samą odpowiedź zmiennoprzecinkową dla danej operacji matematycznej, jeśli dane wejściowe są takie same? Pytam, ponieważ pracuję nad stworzeniem gry RTS w sieci, a zsynchronizowanie setek pozycji jednostek wydaje się kiepską drogą. Więc …


3
Anty-wzór
Czytałem w tym poście na temat anty-wzorca for-if i nie jestem pewien, czy rozumiem, dlaczego jest to anty-wzorzec. foreach (string filename in Directory.GetFiles(".")) { if (filename.Equals("desktop.ini", StringComparison.OrdinalIgnoreCase)) { return new StreamReader(filename); } } Pytanie 1: Czy to z powodu return new StreamReader(filename);wewnątrz for loop? lub fakt, że forw tym przypadku …

6
co może pójść nie tak w kontekście programowania funkcjonalnego, jeśli mój obiekt jest zmienny?
Widzę korzyści wynikające ze stosowania obiektów mutowalnych i niezmiennych, takich jak obiekty niezmienne, które zabierają wiele trudnych do rozwiązania problemów w programowaniu wielowątkowym ze względu na stan współdzielenia i zapisu. Wręcz przeciwnie, zmienne obiekty pomagają radzić sobie z tożsamością obiektu, zamiast tworzyć nowe kopie za każdym razem, a tym samym …

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.