Odpowiem na to w bardziej ogólny sposób - patrząc trochę na całe „ doświadczenie uczenia się w Uniksie ”.
W twoim przykładzie używasz dwóch narzędzi i widzisz, że język jest podobny. Po prostu nie wiadomo, kiedy dokładnie tego użyć. Oczywiście można oczekiwać, że struktura jest przejrzysta , dlatego prosimy nas o wyjaśnienie.
Przypadek z przestrzenią wokół =
jest tylko i przykładem - istnieje wiele podobnych, ale bot-dość przypadków.
Musi być w tym logika, prawda ?!
Te zasady , jak napisać kod dla niektórych narzędzi , muszli, bazy danych itp zależy tylko od tego, co to szczególne narzędzie wymaga .
Oznacza to, że narzędzia są całkowicie niezależne technicznie. Logiczna relacja że myślę, że można się spodziewać po prostu nie istnieje .
Oczywiste podobieństwo języków, które widzisz, nie są częścią wdrożenia programu . Podobieństwo istnieje, ponieważ programiści uzgodnili, jak to zrobić, spisując go dla określonego programu. Ale ludzie mogą się zgodzić tylko częściowo .
Relacja widzisz to kulturalny rzeczą - to ani częścią realizacji , ani w definicji języka .
A więc, skoro wymyśliliśmy teorię, co robić w praktyce?
Dużym krokiem jest zaakceptowanie , że oczekiwana spójność nie istnieje - co jest znacznie łatwiejsze, gdy rozumiemy przyczyny - mam nadzieję, że część teoretyczna pomoże w tym.
Jeśli masz dwa narzędzia, które nie używają tego samego języka konfiguracji (np. Oba skrypty bash), znajomość szczegółów składni jednego z nich nie pomaga w zrozumieniu drugiego;
Rzeczywiście będziesz musiał samodzielnie wyszukać szczegóły . Upewnij się, że wiesz, gdzie znajdziesz dokumentację referencyjną dla każdego z nich.
Z drugiej strony istnieje pewna spójność, której się nie spodziewałeś: w kontekście jednego narzędzia (lub różnych narzędzi używających tego samego języka) możesz być całkiem pewien, że składnia jest spójna.
W twoim mysql
przykładzie oznacza to, że możesz założyć, że wszystkie linie mają tę samą regułę. Zatem reguła brzmi: „spacja przed i po nie=
ma znaczenia ”.
Istnieją duże różnice w tym, jak trudno jest nauczyć się lub używać języka konfiguracji lub skryptów narzędzia.
Może to być coś w stylu „Wyświetl wartości foo w cmd-foo.conf, po jednej w wierszu.”.
Może to być pełny język skryptowy, który jest również używany w innym miejscu. Masz wtedy potężne narzędzie do pisania konfiguracji - w niektórych przypadkach jest to po prostu fajne, w innych naprawdę będziesz tego potrzebować.
Złożone narzędzia lub duże rodziny powiązanych narzędzi czasami używają bardzo złożonej specjalnej składni pliku konfiguracyjnego - (niektóre znane przykłady to sendmail
i vim
).
Inni używają ogólnego skryptujęzyk jako podstawa, i rozszerz ten język, aby zaspokoić specjalne potrzeby , czasami w skomplikowany sposób, w zależności od języka. Byłby to bardzo konkretny przypadek języka specyficznego dla domeny ( DSL ) .