Znasz jakieś sztuczki podświetlania składni C#? [zamknięte]

Zazwyczaj wolę kodować z czarnym tłem i białym / kolorowym tekstem, ale nigdy nie poświęciłem czasu na zmianę podświetlania składni w Visual Studio.

Wczoraj, kiedy w końcu do niego dotarłem, jedną z moich zmian była zmiana typów użytkowników i typów użytkowników (typów wartości) na różne kolory. Nie zdając sobie z tego sprawy, używałem typu struct do przekazywania i zwracania danych z metod więcej niż bym chciał.

Ta zmiana podświetlania składni sprawiła, że stało się to bardzo widoczne co się działo. Więc zacząłem się zastanawiać, czy istnieją inne ustawienia, które mogłyby zapewnić podobną pomoc.

Ja też zazwyczaj ustawiam swoją dokumentację i komentarze na coś bardziej wypranego i pasywnego, aby rzeczywisty kod przeskakiwał bardziej na Ciebie i sprawiał, że szybkie przeszukiwanie kodu było szybsze.

Czy masz jakieś inne wskazówki, które mogą pomóc wykryć problemy lub uczynić rzeczy bardziej czytelnymi?

Uwaga: (widziałem Ten post , ale szukam raczej porad, które są funkcjonalne i zapewniają pomoc, a nie czysto kosmetyczne preferencje.)

Author: Ben S, 2009-03-06

12 answers

Sprawiam, że struny wyglądają okropnie. Żółte tło. Śmiałe. Czerwony pierwszy plan. Przypomnij mi, że ciągi kodowania twardego są ogólnie złe i spróbuj jak najwięcej, aby to zminimalizować!

 35
Author: Rad,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-03-06 17:16:04
  • dla czytelności -

Polecam ciemne (ale nie czarne) tło i jasny (ale nie biały) tekst. Wyższy kontrast jest łatwy dla oczu, ale zbyt duży kontrast daje mi (osobiście) ból głowy w czasie. Zgadzam się również w 100% z Twoim komentarzem na temat używania wypranego koloru do dokumentów i komentarzy.

  • do zrozumienia kodu -

Zdecydowanie używaj różnych (nawet jeśli tylko nieznacznie) różnych kolorów dla typów użytkowników, delegatów i typów wartości. To sprawia, że pękają i naprawdę pomaga, gdy próbujesz szybko zrozumieć Kod innych ludzi.

Również popieram komentarz o wyróżnianiu literałów ciągów. Niekoniecznie używam okropnych kolorów, ale mam je w oddzielnym kolorze od wszystkich moich innych kolorów, więc są bardzo zauważalne.

Lubię też mieć cyfry jako osobny kolor. Wiele razy liczby mają te same problemy co literały ciągów, a ich oddzielne zabarwienie sprawia, że wyróżniają się dla mnie i pomaga wskazać mi miejsca, w których powinienem zastąpić literał liczbowy stałą, właściwością itp.

  • do refaktoryzacji -

Odkryłem, że pomaga mi mieć oddzielny motyw dostępny, gdzie kolory są przesadzone (jasny niebieski zamiast wyciszonego niebieskiego kolorowania dla interfejsów, na przykład) do refaktoryzacji. Używam tego samego podstawowego schematu kolorów, którego zwykle używam, ale z "jaśniejszymi" kolorami dla każdego z typów. (Nie lubię zmieniać schematów kolorów - mój mózg jest rodzaj przewodowy do mojego standardowego zestawu kolorów-przełączanie mi nie służy). Posiadanie jaśniejszych wersji sprawia, że wszystko jest" pop " trochę bardziej, więc jest to miłe dla refaktoryzacji lub próby zrozumienia cudzego kodu.

 14
Author: Reed Copsey,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-03-11 20:52:17

Ludzie zebrali całe "motywy" dla Visual Studio. Uważam, że wprowadzenie nowego tematu ustawień co 6-12 miesięcy daje wszystkim nową perspektywę, chociaż co prawda jest bardzo niewiele tematów, które lubię (Zwykle przełączam się między tylko dwoma różnymi).

Zobacz artykuł Scotta na temat VS Themes: http://www.hanselman.com/blog/VisualStudioProgrammerThemesGallery.aspx

 11
Author: womp,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-03-11 20:44:08

Użyj jakiegoś ładnego koloru dla interakcji i brzydkiego dla klas zdefiniowanych przez użytkownika, który pomaga oddzielić rzeczy.

The Vibrant Ink theme ma w sobie naprawdę dobrze przemyślane rzeczy. Lubię nieco stonować kolory w ten sposób , ale to dobry początek.

 7
Author: Jon,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-03-11 20:51:23

Dlaczego nie widzisz, co Ci odpowiada? Jest fajny generator motywów na http://www.frickinsweet.com/tools/Theme.mvc.aspx

Pełne instrukcje na stronie, jak wykonać kopię zapasową bieżących ustawień i zaimportować utworzony.

 6
Author: Ash M,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-03-12 11:10:12

Spróbuj ustawić litery ciągów na jasnoczerwone tło z pogrubionym białym tekstem. To zachęci cię do nie używania magicznych strun =)

 2
Author: jonnii,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-03-06 17:16:36

To nie jest tak naprawdę podkreślanie, ale niedawno przełączyłem się na proporcjonalną czcionkę po przeczytaniu niektórych zaleceń i stwierdziłem, że jest zauważalnie lepsza.

Przed przełączeniem obawiałem się, że rzeczy nie ułożą się prawidłowo, ale po wypróbowaniu zdałem sobie sprawę, że działa dobrze bez widocznej wady. Tabulatory (lub spacje) tworzą linię bloków i słów, które powtarzają się w dół linii strony, ponieważ składają się z tych samych liter. Mój strach był wyimaginowany, bo w jakiś sposób myślałem, że będę potrzebował słowa do ułożenia, jeśli były inne . Tak nie jest.

Jedną z rzeczy, która uniemożliwia wyrównywanie słów, które są w środku wyrażeń, a nie po lewej stronie. Np. czcionką o stałej szerokości można wykonać:

string firstName     = "John";
string lastName      = "Smith";
int age              = 30;

Podczas gdy nie można tego zrobić proporcjonalną czcionką. Ale ta praktyka wydaje się rzadka w dzisiejszych czasach. Może bardziej w języku C lub assembly.

I tak polecam spróbować. Internet działa na czcionkach proporcjonalnych, dlatego warto używać o ile nie mają wad. Kiedy mi go polecono, twierdzili, że przyzwyczajenie się do niego zajmie tylko kilka dni i okazało się, że to prawda. Arial 11 point uważam za dobry wybór w Visual Studio.
 2
Author: LegendLength,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-03-18 10:18:21

Używam innego koloru dla klas i struktur.

 1
Author: Tony the Pony,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-03-16 17:55:26

Kolor ciągów jasny tak, że od razu zauważyć je w kodzie. Ja używam Zielonego do sznurka na czarnym. Na szarym używałem żółtego.

Btw robię to samo dla stałych, liczb itp.

 1
Author: Joan Venge,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-03-17 17:03:14

Bardzo lubię system koloryzacji Resharpera . Używając go, uzyskasz trochę więcej szczegółów ze swojego edytora. Na przykład: pola, miejscowości i parametry mają różne kolory. Nie mam pojęcia, dlaczego VS nie włączyło tego po wyjęciu z pudełka.

 1
Author: Justin R.,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-03-18 17:42:19

Zawsze ustawiam nawias pasujący do tła na coś czerwonego i dodaję pogrubienie. W ten sposób, kiedy zamykam Aparat ortodontyczny lub parens, widzę, z czym jest dopasowany.

 0
Author: JoshBerke,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-03-16 13:20:15

Myślę, że ważniejsze jest wybranie dobrej czcionki monospaced do programowania(mój wybór to Konsole, dla innych dobrych czcionek zajrzyj do tego artykułu o kodowaniu horroru).

Domyślny motyw Visual Studio jest całkiem dobry imho, może zbyt jasny, jeśli pracujesz w nocy.

 0
Author: Alekc,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-03-17 15:08:44