Wiem, jak zaczynamy od JavaScript, wycinamy i wklejamy snippit, aby zyskać trochę funkcjonalności po stronie klienta lub weryfikacji.
Ale jeśli podążasz tą ścieżką, próbując wdrożyć bogate zachowanie interaktywne, nie potrwa długo, zanim zdasz sobie sprawę, że tworzysz Big Ball Of Mud.
Jaka jest zatem ścieżka do wiedzy specjalistycznej w programowaniu warstwy interakcji? Jakie książki, samouczki, ćwiczenia i procesy przyczyniają się do możliwości programowania solidnego, łatwego w utrzymaniu języka JavaScript?
Wszyscy wiemy, że praktyka jest ważna w każdym przedsięwzięciu, ale szukam ścieżki podobnej do odpowiedzi tutaj: /programming/2573135/
javascript
software-craftsmanship
Eric Wilson
źródło
źródło
Odpowiedzi:
przeczytaj kod innych ludzi ( DUŻO ) i spróbuj zrozumieć, co robią i dlaczego to robią. Napisz własny kod ( DUŻO ) wypróbuj nowe koncepcje i pomysły, przede wszystkim graj i baw się dobrze. Najlepszym sposobem, aby coś poprawić, jest ćwiczyć, ćwiczyć, a następnie ćwiczyć trochę więcej.
Czytaj książki, samouczki, artykuły, blogi, kanały RSS itp.
Stwórz projekt do pracy w wolnym czasie. Jeśli nie możesz o czymś wymyślić, znajdź projekt open source, nad którym możesz być zainteresowany.
nie zniechęcaj się, a przede wszystkim pamiętaj, że „mistrzostwo” nie jest celem, ale podróżą - weź je we własnym tempie, baw się dobrze i ciesz się scenerią. Jeśli potraktujesz to zbyt poważnie, zostaniesz spalony, a to nie przyniesie nic dobrego.
źródło
Kilka linków do opanowania JS
Jak myślisz, jakie „ ukryte funkcje ” JavaScript powinien wiedzieć każdy programista?
Zaawansowane pytania do wywiadu JavaScript
Najlepsze zasoby do nauki JavaScript - filmy JavaScript Douglasa Crockforda
Na jakie pytania powinien odpowiedzieć programista JavaScript?
Nauka zaawansowanego JavaScript
6 zaawansowanych technik JavaScript, które powinieneś znać
źródło
Po pierwsze, musisz wiedzieć, jaki będzie twój cel w nauce JavaScript. Jeśli chcesz tylko sprawdzić poprawność danych wejściowych i nieco ułatwić interfejs użytkownika użytkownikowi, to naprawdę nie musisz mieć dogłębnej znajomości języka, jeśli używasz frameworków takich jak jQuery .
To powiedziawszy, jeśli chcesz dobrze zrozumieć JavaScript, spróbuj napisać rozszerzenie do istniejącej struktury, która implementuje przydatne narzędzie.
Jeśli chodzi o książki i inne zasoby, tak naprawdę nie słyszałem wiele na temat przydatnych książek i ogólnie nauczyłem się tego języka, chociaż próbowałem rozwiązywać problemy i sprawdzać, czy mój kod jest czysty zgodnie z JSLint . Połączenie interesującego problemu (np. Rozszerzenia frameworka), JSLint i wystarczającej ilości czasu, aby uzyskać solidną praktykę, prawdopodobnie będzie najlepszym wyborem pod względem nauki języka.
źródło
Zanim nauczysz się któregokolwiek ze szczegółów programowania (DOM itp.), Naucz się podstawowego języka. Możesz się uczyć na wiele sposobów - książek, filmów itp. Oczywiście będziesz musiał czytać i pisać kod.
ECMAScript (to nazwa standardu językowego - javascript odnosi się do kilku implementacji) jest bardzo interesującym językiem. Jest to dynamiczny, funkcjonalny i oparty na prototypach język obiektowy, dlatego powinieneś poświęcić trochę czasu na zrozumienie zasad tych paradygmatów.
Naucz się korzystać z interaktywnej konsoli w przeglądarce (w Chromium możesz uzyskać do niej dostęp, naciskając Ctrl+ Shift+ J), który jest podobny do narzędzi takich jak IRB i interaktywny interpreter Pythona. Jest to przydatne do testowania funkcji języka i debugowania.
Użyj JSLint aby sprawdzić jakość kodu.
Kiedy zaczniesz robić „prawdziwy” rozwój przy użyciu DHTML, ułatw sobie życie, korzystając z frameworka, takiego jak JQuery , aby poradzić sobie z frustrującymi problemami w różnych przeglądarkach.
źródło
Można tu zastosować wiele technik, które czynią programistę ekspertem w danym języku, chociaż javascript ma kilka pereł, które pozwalają na niezwykłe efekty. Być może jedną z największych przeszkód, które musiałem pokonać przy użyciu javascript, było cofnięcie mojej mentalności programowania w języku „C”, co oznacza, że tysiące małych funkcji było ciasnych w jednym pliku js.
Niektóre ogólne porady to abstrakty, gdy tylko możesz, i staraj się tworzyć zajęcia, kiedy tylko możesz zorganizować ogólne zachowanie. Utwórz nowe pliki js dla dowolnej funkcji, które można wykorzystać z dobrym skutkiem w innych plikach js (z uzasadnionego powodu) i, jeśli to możliwe, unikaj zmiennych globalnych. Gorąco poleciłbym nauczyć się jQuery, jeśli jeszcze tego nie zrobiłeś. To narzędzie, które pokochałem i teraz nie obejdzie się bez niego. Jest to niezwykle elastyczne rozszerzenie javascript, które pozwala ogromnie uprościć kod, co jest dobre dla uproszczenia i pozwala na szybkie i wydajne kodowanie. jQuery zawiera dużą bibliotekę wtyczek, która pozwala robić wiele rzeczy, które nie mogłyby być bardziej imponujące, gdybyś zrobił to we flashu. Sprawdzić interfejs użytkownika jQuerydla całego systemu motywów witryny, umożliwiając efektywną modyfikację całego układu witryny bez konieczności wykonywania wielu czynności. Zawiera wiele efektów animacji i poręczne kontrolki powszechnie stosowane na stronach internetowych (selektor daty, przycisk, pasek postępu itp.), Z których większość można aktywować za pomocą jednego wiersza javascript.
Mam nadzieję, że to pomaga!
źródło
Wiele z tego, co robisz w JavaScript, jest zasadniczo powiązane z DOM, CSS i kompatybilnością z przeglądarkami, więc zrozumienie DOM jest jednym z podstawowych wymagań do opanowania JavaScript.
Poznanie podstawowych funkcji języka, takich jak orientacja obiektowa oparta na prototypach, anonimowe funkcje i bardziej ogólne funkcje języka, takie jak pętle, warunki itp., Są kluczem do zrozumienia każdego czytanego kodu, który nie wchodzi w interakcje z DOM / CSS .
Będziesz także musiał nauczyć się standardowej biblioteki językowej, np. String i Math oraz innych podstawowych funkcji obiektu.
Powinieneś także przestudiować algorytmy, jeśli chcesz uzyskać prawdziwe i pełne zrozumienie tego, jak się rzeczy mają, i jak wdrożyć bardziej zaawansowane rozwiązania, ta wiedza ma podstawowe znaczenie dla zrozumienia zaawansowanego programowania i wykracza poza składnię specyficzną dla języka.
źródło
Przeczytaj kod używanych bibliotek. Czytanie źródła jQuery lub Prototypu nauczy Cię przebojów na temat tego, co faktycznie dzieje się w javascript i dom. Badaj techniki stosowane przez biblioteki, abyś mógł je zrozumieć. Rozpocznij od przeczytania mikrostruktury na stronie http://microjs.com/ . Upewnij się, że patrzysz na rzeczywiste źródło, a nie tylko na pliki rozproszone. (jQuery ma kilkanaście plików źródłowych, ale są one składane w procesie kompilacji).
źródło
JavaScript jest obecnie stosowany w wielu obszarach programistycznych.
Dlatego uważam, że istnieje więcej specjalizacji javascript. Zależy to od tego, od czego chcesz zacząć, ale możesz być pewien, że każdy z tych 4 wymienionych wyżej elementów da ci inne wyzwanie - ok, może pola 8 i pola phonegap mogą być podobne, ale reszta jest inna -.
Jeśli mówimy o środowisku przeglądarki, poznanie, jak powinna być zorganizowana prawie każda aplikacja internetowa, może być jedną ze ścieżek. Podążam tą ścieżką i eksperymentuję z własnymi pomysłami, sprawdzając repozytorium git popularnych bibliotek organizacji kodu, takich jak dojo, szkielet, ember itp.
Jeśli mówimy o środowisku węzła js, to inna historia. Nie zajmujemy się minimalizacją i rozmiarem pliku. Tworząc całe aplikacje w węźle, budując systemy, strony, interfejs API REST, jest tam wiele rzeczy do odkrycia.
Jeśli mówimy o świecie mobilnym, przychodzi na myśl optymalizacja. Przyspieszone właściwości CSS3, animacje, zdarzenia dotykowe i próba użycia tej samej architektury co sieć z bardziej wyspecjalizowanymi komponentami interfejsu użytkownika to świetne rzeczy na początek.
Podsumowując, podobnie jak inni odpowiedzieli, eksperymentowanie z własnym kodem, a kodem innych jest najlepszym sposobem na zaangażowanie się, śledzenie nowości i kto wie, może wymyślenie kolejnej wielkiej rzeczy.
Kolejną rzeczą, która pomaga, jest praca w zespole i zrozumienie różnic między twoim sposobem a sposobem pisania kodu przez zespół. Praca w zespole programistów javascript zmusi cię do napisania lepszego kodu i udokumentowania go. Myślę, że nie ma lepszego sposobu na poznanie architektury aplikacji niż pisanie wiki o tym, co zamierzasz wdrożyć lub już zaimplementowałeś.
źródło
Nienawidziłem JavaScript, dopóki nie odkryłem jQuery. Teraz go uwielbiam i używam go cały czas. Prawdopodobnie za dużo.
źródło