PHP, HTML, JavaScript i dobre praktyki pisania


10

Uświadomiłem sobie, że muszę zapisać specyfikację konwencji dotyczącą HTML, JavaScript i kodowania PHP dla mnie i mojego zespołu.

W tworzeniu stron internetowych, podobnie jak w C ++, zdecydowanie jestem fanem wcięć i komentarzy.

Niemniej jednak często w mojej pracy napotykam HTML + JavaScript + kod PHP, który nagle wywołuje ból głowy.

Staram się, aby mój kod był czytelny, ale to, co wydaje mi się lepsze (wcięcie i komentowanie) wydaje się nie fascynować moich kolegów z drużyny, więc zastanawiałem się, czy jest jakaś najlepsza lub przynajmniej wspólna dobra praktyka podczas pisania „hybrydy” „dokumenty takie jak dzisiejsze strony internetowe, które z dnia na dzień stają się coraz bardziej złożone.

Zdaję sobie sprawę z tego, że prawdopodobnie dzisiejszy kod stron internetowych jest nieco skomplikowany, ale zastanawiam się, czy istnieje już dobra konwencja dotycząca tych aspektów.

Odpowiedzi:


19

Kilka ogólnych zasad, których przestrzegam:

Generał

  • Wcięcia mają 4 spacje.
  • Wcięcie nowych poziomów
  • Komentarze to <~ 80 znaków z poziomu wcięcia. Jeśli mam dwa poziomy (8 spacji), oznacza to, że zatrzymanie kursora będzie wynosić około 88 znaków.
  • Użyj komentarzy wieloliniowych. Wolę wygląd, ale jest to subiektywna kwestia.
  • Skomentuj teraz, a później później, gdy nie masz pojęcia, co się dzieje.
  • Szelki w stylu Allmana . Jest czystszy i bardziej czytelny. Subiektywne .

JavaScript

  • Użyj biblioteki. W szczególności jQuery jest bardzo dobry. Eliminuje wszystkie bóle głowy w różnych przeglądarkach.
  • Zrozum, że identyfikatory dotyczą poszczególnych elementów, klasy dotyczą stylów. Identyfikatory nie powinny być używane więcej niż raz na stronie i będą do nich przymocowane specjalne zaczepy. Używaj klas do takich rzeczy jak nawigacja.
  • Nasze źródło na metody. Kuszące jest umieszczenie całego kodu w bindwywołaniu, jednak umieszczenie go we własnej funkcji zwiększy elastyczność kodu.
  • Używaj funkcji zamiast evals. To znaczy setTimeout(function(){ /* Do something */ }, 1000);zamiastsetTimeout('doSomething', 1000);
  • Użyj zmiennych lokalnych z var.

HTML

  • Znaczniki semantyczne. Użyj odpowiednich tagów. Nie umieszczaj <br />tam, aby dodać miejsce, dostosować marginesy i reguły CSS.
  • Wszystkie tagi są pisane małymi literami .
  • Wszystkie tagi powinny kończyć się tagiem zamykającym lub być samozamykające .
  • Skorzystaj z klas dla podobnego układu. Mieć kilka predefiniowanych klas podoba hide, clear, error, etc.
  • Wszystko (wraz ze skryptami) powinno wejść <head>. Martw się o optymalizację (przenoszenie rzeczy), gdy stanowi to problem.
  • Zewnętrzne arkusze stylów i źródło JavaScript są koniecznością, chyba że są specyficzne dla strony.

PHP

  • Frameworki są dobre, polecam CodeIgniter.
  • Jeśli nie chcesz używać frameworka, spróbuj użyć najnowszej możliwej wersji PHP. (Oznacza to 5.3).
  • Użyj includesna swoją korzyść.
  • Wyczyść zastrzyki lub użyj przygotowanych oświadczeń.
  • Wykonaj, jeśli zostaną sprawdzone wstępnie zabezpieczone wartości błędów.

    $logged_in = false;
    if(check_user($user))
    {
         $logged_in = true;
         $user = load_user($_SESSION);
    }
    
  • Poznaj różnicę między pojedynczymi i podwójnymi cudzysłowami. W miarę możliwości używaj pojedynczych cudzysłowów.
  • Nie odbijaj HTML.

4
Doskonała lista. Do PHP dodam 1) użyj szablonów, nie mieszaj php i html (przynajmniej w aplikacjach) 2) nie używaj obejmuje () jako wywołań funkcji 3) trzymaj jak najwięcej kodu poza zakresem globalnym, jak to możliwe.
GrandmasterB

każdy, kto poleca CodeIgniter i jQuery, traci wszelką uczciwość w moich oczach.
mefisto

4
@teresko: Potępiasz, nie podając żadnych powodów ani alternatyw.
Josh K

+1. Lista spornych i dyskusyjnych punktów, ale mimo to całkiem dobra lista.
haylem

jQuery eliminuje wszystkie bóle głowy w różnych przeglądarkach?
James Adam

3

Inspiracja zawiera kilka lektur:

  • Zend Framework - styl kodowania php : lista praktyk pisania łatwego do utrzymania kodu php (formatowanie plików PHP, konwencje nazewnictwa, styl kodowania: tablice, łańcuch znaków, klasa, metoda np.).
  • Google - przewodnik po stylu kodu : Lista praktyk dotyczących pisania łatwego do utrzymania kodu javascript (Reguły: Constans, średniki, funkcja zagnieżdżona ..., Styl kodowania: Nazwy, Zakres, Ciąg, Pola widoczności itp.).

czy mógłbyś wyjaśnić więcej o tym, co robią te zasoby i dlaczego polecasz je jako odpowiedź na zadane pytanie? „Tylko odpowiedzi” nie są mile widziane na Stack Exchange
gnat

1
@gnat edytuj / poprawna odpowiedź
tomascejka

2

Trzymaj 3 osobno. Najmniej trudny do utrzymania kod, z którym mam do czynienia, to zawsze, gdy jest trochę PHP, które generuje wiele HTML i JavaScript, prawdopodobnie z pewnym SQLem rzuconym dla lepszej miary.

Utrzymanie ich wszystkich jako osobnych sprawi, że kod będzie łatwiejszy w utrzymaniu, a także sprawi, że sprawy będą znacznie usprawnione, jeśli będziesz mieć ludzi pracujących nad różnymi częściami aplikacji, takimi jak projektant, który musi pracować tylko z HTML / CSS.


2

Najprostszym sposobem na kodowanie aplikacji internetowej php jest z pewnością połączenie wszystkiego. Jeśli jednak robisz coś w ten sposób, szybko kończysz się niemożliwym do utrzymania bałaganem.

Oto kilka dobrych praktyk:

1) Umieść swój JavaScript w <head> dokumentu (lub jeszcze lepiej w osobnych plikach, do których odniesienia znajdują się w nagłówku). Dowiedz się, jak powiązać detektory zdarzeń w zdarzeniu document.onload, zamiast rozpraszać je w pliku HTML. (Jeszcze lepiej, naucz się używać frameworka takiego jak Jquery; dzięki temu JavaScript będzie o wiele ładniejszy).

2) Wyszukaj wzorce projektowe, takie jak MVC. Chcesz jak najbardziej oddzielić logikę biznesową napisaną w języku PHP od kodu HTML. Najlepiej byłoby, gdybyś użył ładnego języka szablonów do złożenia stron HTML; przynajmniej PHP w twoim HTML powinno być zwięzłe - głównie wywoływać zmienne i przeglądać listy, które są budowane gdzie indziej.

3) Komentarze, wcięcia ... te rzeczy to tylko podstawowe najlepsze praktyki programowania. Kiedy piszę HTML, zwykle pozwalam, aby długość linii przekraczała 80 znaków, tylko dlatego, że język jest cholernie gadatliwy, ale to jedyna tradycyjna praktyka, na którą powinieneś się przesuwać - jeśli reszta zespołu jest niechlujna, muszą go ssać i kształtować.


Niezły komentarz! Istnieje literówka: „Włóż JavaScript do dokumentu”
DL

Ups Dziękuję Ci. (Zapomniałem zakodować za pomocą nawiasów kątowych. Silly me.)
Poprawka 5-10

1
Javascript powinien znajdować się na końcu strony ze względu na wydajność.
Toby

0

Oto kilka ciekawostek:

JavaScript: Użyj varprzy inicjalizacji zmiennych.

HTML: dołącz skrypty na dole pliku, aby ładowały się jako ostatnie.

PHP: Podziel pliki. Nie umieszczaj wszystkich swoich klas w jednym pliku, tak jak w normalnym rozwoju C ++. Skomentuj jak najwięcej, a także zapisz cel swoich funkcji / klas.


Próbowałem postępować zgodnie z Przewodnikiem po stylu JavaScript w Google: google-styleguide.googlecode.com/svn/trunk/javascriptguide.xml
Fosco,
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.