Czy dobrzy programiści muszą mieć składnię na końcu języka podczas pisania kodu? Co robisz z nich, jeśli szukają prostych rzeczy w Internecie? Czy są dobre czy złe (może wiedzą, gdzie szukać)? Czy programiści powinni mieć dobrą pamięć? Czy to cecha dobrego programisty?
self-improvement
maz3tt
źródło
źródło
Odpowiedzi:
Moja filozofia programowania polega na tym, że jest to „stan umysłu”, a reszta to „tylko składnia”. (tj. nie (jak) ważne)
To powiedziawszy, nie należy szukać prostych rzeczy. Przynajmniej nie dla języków, z którymi regularnie pracujesz. Nie ma nic złego w konieczności odświeżania, a umiejętność znajdowania informacji to z pewnością dobra umiejętność. Jednak podstawowa składnia powinna być zdecydowanie dobrze znana. W przeciwnym razie spędzasz zbyt dużo czasu na wyszukiwaniu i zbyt mało czasu na programowanie.
źródło
To zależy od tego, co masz na myśli, ale krótka odpowiedź brzmi „tak”.
Czy programiści zapomną tu i tam o średniku lub ortezie? Pewnie. Czy zamierzają sprawdzić składnię instrukcji switch, ponieważ prawdopodobnie rzadko go używają? Cóż, ja tak. Czy będę pracować z ActionScript, ale zamiast tego będę pisać jak Java? Zdecydowanie. Przyzwyczajenie się do pisania w innym języku może trochę potrwać, zwłaszcza jeśli pracujesz z innym językiem od lat.
Prawdziwą troską powinno być to, czy programista nie potrafi odgadnąć składni, nawet przy pomocy IDE. Jeśli dana osoba nie wie, do czego służy średnik lub jakie są te fantazyjne nawiasy klamrowe, oznacza to, że ma więcej do zrobienia.
źródło
switch
następuje coś w nawiasach, następnie nawias otwierający, następniecase
etykieta, której nie ma w nawiasach, następnie dwukropek, a następnie stwierdzenia zwykle terminowane średnikami. I nie zapominajmy obreak
stwierdzeniach. To dzięki wysiłkowi i sile woli w końcu go zapamiętałem i wciąż muszę od czasu do czasu sprawdzać; tylko dla pewności.Z pewnością byłbym zaskoczony, gdyby w przeciwnym razie dobry programista rutynowo szukał składni języka, w którym biegle posługiwał się. Oczywiście mogą istnieć przypadki narożne, które w rzeczywistości nie są tak często używane w praktyce, że byłoby to całkowicie do przyjęcia aby dobry programista ich nie znał, ale z reguły biegły programista nie musi wyszukiwać składni. Musi wyszukiwać funkcje i klasy z bibliotek :)
źródło
std::string
.Jeśli jesteś w sytuacji, w której regularnie zmieniasz języki lub pracujesz w 3 lub 4 językach jednocześnie, niewiele możesz na to poradzić. Przez pewien czas pracowałem nad projektami, które wymagały ciągłego przełączania i zacząłem nazywać siebie „programistą referencyjnym”, który musiał szukać czegoś więcej, niż bym wolał.
źródło
Piszę C ++ od ponad 15 lat, ale wciąż nie znam na pamięć niektórych jego tajemniczych składni.
Jak ponownie utworzyć instancję szablonu funkcji? Jaka jest składnia częściowej specjalizacji szablonu zawierającego argument szablon-szablon? I nie zaczynaj mnie od deklarowania funkcji, która zwraca wskaźnik do tablicy wskaźników do funkcji, które pobierają tablice wskaźników do ...
Podejrzewam, że na tym świecie jest co najwyżej jeden lub dwa tuziny ludzi (jeśli w ogóle są), którzy naprawdę znają całą składnię C ++ na pamięć. I prawdopodobnie wszyscy zarabiają na tym pisząc nakładki na kompilatory C ++.
źródło
Ciekawi mnie tutaj „składnia” Googlinga.
Podejrzewam (i obawiam się), że nie mówimy o tym, jakie parametry przyjmuje połączenie (ponieważ większość IDE poprosi cię tam, żebyś ich nie przeglądał), ale faktyczne „jak to zrobić”.
IDE sprawiło, że niepotrzebne staje się zapamiętywanie dokładnych nazw i list parametrów w taki sposób, jaki był wymagany, i to sprawia, że wielu ludzi jest nieco leniwych, ale to w porządku.
Ale potrzebujesz czegoś do Google? Dla mnie to zwykle nie jest składnia, to po prostu coś, czego tak naprawdę nie znasz, albo znasz tylko z ukrycia.
Oczywiście nie oznacza to, że nie jest źle mieć Google. Języki mogą być dość szerokie i niewiele osób wie wszystko, ale powiedziałbym, że jeśli twierdzisz, że jesteś biegły w języku, Google powinien być wyjątkiem, a nie regułą. .
Dla mnie, chyba że robisz coś stosunkowo nietypowego, lub może jesteś zardzewiały z językiem po okresie robienia czegoś innego, jeśli twierdzisz, że „znasz” język, nie powinieneś być googlingiem w więcej niż 10% rzeczy co najwyżej, a to powinny być naprawdę bardzo konkretne rzeczy.
W odniesieniu do pomysłu, że chodzi tu o dobrą pamięć, tak naprawdę nie jest. Chodzi o rodzaj instynktownego odczucia, które daje ci coś, co naprawdę (raczej niż powierzchownie) znasz. Nie uważam, że wiem, jak ugotować Melanzane Parmigiana bez przepisu, że mam dobrą pamięć, to znak, że rozumiem, jak gotować to danie - to subtelnie różne rzeczy.
Poza tym, zadaj sobie to pytanie, czy spodziewałbyś się pójść do kuchni restauracji i znaleźć szefa kuchni, który ciągle patrzy na książkę kucharską? Lub zobaczyć, jak mechanik pracuje nad twoim samochodem, przeglądając instrukcję Hayesa dla tego modelu? Gdybym zobaczył którąś z tych rzeczy, byłbym bardzo niespokojny, jak dobra była ta osoba.
źródło
syntax != api
Moim zdaniem nie. Nie jest to składnia, która jest ważna, ale twoja logika w kierunku rozwiązania problemu lub osiągnięcia celu. Jeśli podejrzewasz, że pracujesz w wielu językach, to naturalne, że czasami nie pamiętasz dokładnej składni.
źródło
Składnia to tylko widok na podstawową semantykę języka, ponieważ programowanie polega na użyciu podstawowych cegieł semantycznych do zbudowania czegoś. Jeśli nie rozumiesz podstawowych pojęć używanych przez język, nie ma znaczenia, jak dobrze zapamiętujesz składnię, Twój kod będzie strasznym bałaganem. Jak ktoś kiedyś powiedział: „Dobrzy programiści mają w głowie tłumacza i kompilator”. Zauważ, że nie ma wzmianki o składni, ponieważ tam nie dzieje się prawdziwa praca.
źródło