Jak zbudować dynamiczną stronę internetową: 4 kroki (ze zdjęciami)

Spisu treści:

Jak zbudować dynamiczną stronę internetową: 4 kroki (ze zdjęciami)
Jak zbudować dynamiczną stronę internetową: 4 kroki (ze zdjęciami)

Wideo: Jak zbudować dynamiczną stronę internetową: 4 kroki (ze zdjęciami)

Wideo: Jak zbudować dynamiczną stronę internetową: 4 kroki (ze zdjęciami)
Wideo: Jak założyć własne konto e mail 2024, Może
Anonim

Zagadnienia tego tematu są tak szerokie i zróżnicowane pod względem możliwych podejść, że każda realistyczna odpowiedź na nieuniknione pytania może jedynie wskazać ogólną drogę.

Obecnie wiele osób chce i ma nadzieję tworzyć dynamiczne (oparte na danych) witryny internetowe, których architektury z łatwością uwzględniają nowe materiały, poprawki i interakcje z użytkownikami. na przykład wikiHow jest dynamiczną stroną internetową. Chociaż cel projektów wysokiej jakości jest w zasięgu wszystkich sumiennych ludzi, błędem byłoby niedocenienie tego, co ostatecznie jest bardzo trudnym zadaniem, szczególnie w przypadku obiektów technicznych każdego przyszłego projektu. Nawet najprostsze dynamiczne prezentacje w sieci wymagają odpowiednich umiejętności w różnych dyscyplinach.

W realizacji niezbędnych celów nikt nie może odejść od dobrego projektu bazy danych. Samo przygotowanie się w tej dyscyplinie jest pokaźną (ale nie wykluczającą) pracą. Kiedy już mamy podsumowanie celów projektu, musimy wyobrazić sobie solidne sposoby ich osiągnięcia. Następnie mamy do wyboru języki lub narzędzia programowania oparte na wizji idealnej architektury projektu.

Widzenie całego obrazu od samego początku jest więc najważniejszą umiejętnością ze wszystkich.

Kroki

Zbuduj dynamiczną stronę internetową Krok 1
Zbuduj dynamiczną stronę internetową Krok 1

Krok 1. Zastanów się, jakie narzędzia i procesy pozwolą Ci osiągnąć cele

Ponieważ centralnym rdzeniem każdej dynamicznej obecności w sieci jest baza danych i przetwarzanie danych, naszym pierwszym ważnym celem jest podjęcie dalekosiężnych decyzji dotyczących silnika bazy danych. Nie jest dobrym pomysłem mieć nadzieję, że mimochodem podejmiemy taką decyzję w jakiś pozorny, najbardziej rozsądny, wstępny sposób.

  • Istotnym celem tej pierwszej decyzji jest zaplanowanie naszego projektu w taki sposób (za pomocą narzędzi i silników baz danych), który będzie wspierał Twoje potrzeby na całej drodze przez przyszłość, w której, ponieważ podjąłeś właściwe wstępne decyzje, będziesz skutecznie budować na początkowym fundamencie, skutecznie i bez ewentualnych przeszkód. Oznacza to, że na przykład w idealnym przypadku wybrany silnik bazy danych nie jest po prostu łatwym lub pozornie prostym do wdrożenia dzisiaj; od samego początku musi to być silnik, który będzie wspierał Twoje dalsze wymagania w zakresie przetwarzania.
  • Czasami względy handlowe dodatkowo wpływają na takie wybory. Jakie silniki są intensywne (i kosztowne)? Jakie silniki są praktycznie bezobsługowe we wdrożeniach utrzymujących cele przetwarzania, które musi utrzymać Twój ewentualny projekt? Ogólnie rzecz biorąc, wzorem do naśladowania jest wybór silnika na podstawie jednej z dwóch możliwych dyspozycji.
  • Aby to zrobić, musisz najpierw określić swoje podstawowe potrzeby w zakresie stołu. Profesjonalista nie będzie musiał nawet tworzyć tej mapy (niezależnie od tego, czy w grę wchodzą setki czy tysiące tabel), ponieważ zwykle natychmiast zobaczą, czy architektura i przyszłe potrzeby, które będziesz musiał obsłużyć, wymagają intensywnego odczytu lub zapisu. Następnie wybierzesz odpowiednią bazę danych, opierając się na tym ogólnym usposobieniu, a być może dalej na podstawie osobistego gustu i doświadczenia, ponieważ praca z odpowiednimi narzędziami programistycznymi może być wskazana. MySQL to typowy wybór w przypadku implementacji wymagających intensywnego odczytu. Wielu programistów szuka w bazach danych, takich jak PostgreSQL, niezawodnych implementacji wymagających intensywnego zapisu. Rozwijamy nasze dyspozycje w stosunku do tak ważnych narzędzi poprzez staranne badania i czerpiąc z doświadczeń ogólnej branży programistycznej. Kosztów można ogólnie uniknąć, ponieważ dostępne są bezpłatne wdrożenia bardzo dobrych narzędzi. To, czego szukamy, to wydajność w środowiskach o dużym natężeniu odczytu lub zapisu, niezawodność, łatwość i minimalizacja administracji oraz gotowa integracja z przyszłymi narzędziami programistycznymi.
Zbuduj dynamiczną stronę internetową Krok 2
Zbuduj dynamiczną stronę internetową Krok 2

Krok 2. Wybierz swoje narzędzia programistyczne

Przy wyborze narzędzi do tworzenia oprogramowania należy wziąć pod uwagę dwa wzorce. Pozornie „łatwe” narzędzia rzadko są w rzeczywistości łatwe, gdy projekt nieuchronnie przełamuje obsadę wzorców programistycznych i funkcjonalnych, do których „łatwe” narzędzia są zazwyczaj ograniczone. Jeśli chcesz zrobić coś poza „łatwymi” narzędziami, takimi jak włączenie parametru języka lub tłumaczenia do dynamicznie generowanych adresów URL, może to być o wiele trudniejsze do osiągnięcia w „łatwych” narzędziach, które mogą wymagać niezwykle zaawansowanych umiejętności programowania, tak jak tak samo jak nakłonić łatwy wzór do robienia bardziej złożonych rzeczy. Musimy opanować nasze narzędzia, aby budować dobre projekty. Nie oznacza to, że proste narzędzia są najlepszym wyborem, a najbardziej wyrafinowane – trudną propozycją. Pułapka „łatwego” rozwoju na ogół zawiera ograniczenia, których pokonanie staje się bardzo kosztowne w nieuniknionej ewolucji projektów. Generalnie powstaje ogromna różnorodność takich narzędzi, które rzekomo odpowiadają na takie potrzeby. Ale wzór trwałości narzędzi zdradza pozorny fakt osiągnięcia tego celu; tak więc, ogólnie rzecz biorąc, stwierdzamy, że najbardziej wyrafinowane i potężne narzędzia, podążające za dobrymi wzorcami (lub dostępnością obiektów i bibliotek), nie tylko łagodzą praktycznie nieuniknione przeszkody dla łatwych narzędzi, ale także sprawiają, że „dotarcie tam” jest znacznie prostszym procesem. Gdy przyjrzymy się zakresowi dostępnych narzędzi, to na ogół mniej kompleksowe modele prezentowane są w początkowych koncepcjach rozwoju, a lepsze koncepcje oferują narzędzia powstające później (w przeciwnym razie nie miałyby szans na przetrwanie na rynkach, które już zostały zdobyte). Jeśli wybierzemy rzekomo łatwe narzędzie, to tym, czego szukamy, jest wzorzec rozwoju, który jest zarówno sprawny, jak i bez przeszkód. Paradoksem dla neofity jest więc trudność widzenia na tyle daleko, że możemy dostrzec przeszkody programowe dla danego zestawu narzędzi. Niektórzy uważają, że najlepsze narzędzia są najpotężniejsze i najmniej restrykcyjne pod względem podejścia projektowego. Swoboda rozwijania tego, czego się chce i potrzebuje, często oznacza przełamanie ogólnego modelu pozornie prostych narzędzi, których wyzwania mogą praktycznie złamać mózg najbardziej wytrawnego i wyrafinowanego inżyniera oprogramowania, ponieważ odniesienie sukcesu w takim obiekcie oznacza uczynienie „prostym” model zrobić coś, czego może nie mieć natywnej zdolności do wspierania. Czy na przykład "Ruby" jest naprawdę łatwiejszym narzędziem niż podstawowy C++ lub C#? Nie. Niezupełnie, zwłaszcza jeśli musisz przełamać prosty model Rubiego, aby zapewnić istotną funkcjonalność. Podobnie jak Ruby, GCC jest darmowe dla Linuksa i OSX. Ruby pojawia się również w systemie OSX - po prostu musisz go odkryć w swoim systemie. Spośród rzekomo prostszych narzędzi moim osobistym wyborem jest Ruby. Spośród naprawdę wyrafinowanych narzędzi, C++ i C# będą królować długo w przyszłości; a prawda jest taka, że są to jedyne narzędzia rozwoju bez przeszkód. Więc usiądź prosto i przygotuj się na poważną naukę, ponieważ niezależnie od drogi, którą wybierzesz, będziesz musiał opanować nie tylko swoje narzędzia, ale także potencjalnie ograniczające modele, którymi te narzędzia mogą cię ostatecznie obciążyć. Ruby jest prawdopodobnie znacznie czystszy niż prawie wszystkie jego „łatwe” odpowiedniki. C++ to narzędzie nieskrępowanej doskonałości; w rzeczywistości doświadczeni guru zrealizują niezrównane projekty prawdopodobnie z dużo mniejszą trudnością, niż mogliby osiągnąć te same cele za pomocą rzekomo łatwego narzędzia. W końcu programiści, którzy odbiegają od tej obserwacji, płacą pewną cenę: albo wybierają najbardziej sprzyjające „łatwe” narzędzie, albo mniej martwią się o wolność od obciążenia najbardziej wyrafinowanego narzędzia. W tym drugim przypadku opanujesz szybkie obiekty CGI, bierzesz piłkę i biegniesz. Ogromne koncepcje są często wdrażane przy użyciu niewielkiej ilości kodu. Tak, proste narzędzia twierdzą to samo, ale poprzez oddzielenie od nas pozornych trudności w taki sposób, że odejście od ich zwykle osobliwego wzorca stwarza bardzo trudne wyzwania inżynieryjne, oprócz utrudnień wydajności, które rozwiązuje C++.

Zbuduj dynamiczną stronę internetową Krok 3
Zbuduj dynamiczną stronę internetową Krok 3

Krok 3. W trakcie rozwiązywania tych pytań nieuchronnie musimy zbadać podstawowe modele lub wzorce rozwoju projektów natury, które chcemy zrealizować

Oznacza to zdobycie najlepszej literatury dla narzędzi, które chcemy porównać, i przynajmniej nadanie naszej koncepcji takiej formy, w jakiej może ona przybrać dany zestaw narzędzi w porównaniu z innymi. Zanim na przykład wybierzesz Rubiego, możesz zapoznać się z ważnymi książkami, takimi jak "Język programowania Ruby" i "Zwinne tworzenie stron internetowych z Rails". Twoja wstępna analiza musi nie tylko dostatecznie opanować narzędzia, ale musi także przewidywać, w jaki sposób możesz się tam dostać – w jaki sposób możesz zapewnić pożądaną funkcjonalność za pomocą wybranego narzędzia. To trudne zadanie dla wtajemniczonego. Jeśli zamierzasz porównać rzekomo łatwe środowisko programistyczne z najlepszym z najlepszych, będziesz musiał również ocenić najlepsze narzędzia C. Jeśli naprawdę chcesz być doświadczonym inżynierem, wybierzesz C ze względu na jego wolność od ograniczeń. Czy C naprawdę jest trudniejsze? Nie. Składnia to składnia. W końcu musisz opanować wyrażanie tej samej funkcjonalności; i prawdę mówiąc, rodzina języków C jest doskonała. Trudną rzeczą w osiąganiu doskonałości od samego początku w C++ jest oddanie rąk do modeli, na których być może trzeba będzie budować. Wspaniałym początkiem prawie 15 lat temu były oryginalne komponenty FastCGI, które były dostępne w CPPBuilderze firmy Borland - prawdopodobnie wciąż najlepszym C++ dla Windows. Nawet nowicjusze C mogą zajść daleko z takimi podejściami obiektowymi, ponieważ ogólny model podtrzymywania funkcjonalności jest wbudowany w rzeczy, z którymi pracujesz. Twoja praca jest o wiele bardziej płynna niż na przykład w Rubim, kiedy możesz złamać lub przekroczyć model Ruby w swoim podejściu. Z drugiej strony, techniki rusztowań Rails przyśpieszają dużo pracy dla neofity, wtedy i tylko wtedy, gdy projekt pasuje do ogólnej formy Ruby i Rails. Wprowadź na przykład podstawowe zabezpieczenia, które są rozpoznawane we wszystkich twoich interfejsach Rubiego, a następną rzeczą, o której wiesz, jest ponowne napisanie tysiąca linii automatycznie wygenerowanego kodu Rubiego dla każdej tabeli negocjowanej przez twoją aplikację. Czy to proste? Cóż, robię to za pomocą edytora Windows o nazwie NoteTab Pro, działającego na projektach Ruby rezydujących na systemie OSX; a wyrafinowane makra wprowadzają moje poprawki być może w sekundę, dostosowując tysiąc linii kodu do prawie dwukrotności. Jednak dotyczy to stosunkowo prostej, podstawowej funkcjonalności, do której ograniczony jest projekt. Faktem jest, że w C++ możemy napisać własne obiekty, które radzą sobie z tymi zadaniami naprawdę uniwersalnie - nigdy nie trzeba by nawet replikować tego procesu. Więc to są kompromisy. W końcu C zorientowane obiektowo jest najpotężniejsze i najbardziej wydajne. Co oznacza, że jest też najmniej pracy.

Zbuduj dynamiczną stronę internetową Krok 4
Zbuduj dynamiczną stronę internetową Krok 4

Krok 4. Bez względu na wybór narzędzi programistycznych, nie ma sposobu, aby uniknąć uzależnienia od rozsądnego opanowania HTML i CSS

Ogólnie rzecz biorąc, doświadczeni programiści polegają na W3C.org w kwestii istotnych materiałów. Strona internetowa

Wideo - Korzystając z tej usługi, niektóre informacje mogą być udostępniane YouTube

Porady

  • Istotną częścią twojej misji będzie wtedy zdobycie najlepszych zasobów. Zacząłbym od Rubiego; a jeśli chcesz osiągnąć sukces, będziesz musiał ocenić zorientowane obiektowo języki C oraz środowiska, w których dobrze napisane projekty przewyższają wszystkich innych.
  • Nic zatem nie może zastąpić wyczerpujących badań i oceny.

Ostrzeżenia

  • Kolejną przeszkodą w prawdziwym opanowaniu prostych narzędzi jest nieprofesjonalne zachowanie na wielu forach. Istnieje ogromna różnica między profesjonalnym know-how a udawanymi umiejętnościami, które tak często mogą sprowadzić Cię daleko z właściwej drogi. Najlepszymi źródłami informacji są na ogół najbardziej doświadczeni koledzy, a nie udający mistrzowie rzekomo prostych narzędzi, którzy po prostu opowiadają się za trzymaniem się jednego dostępnego im wzorca. Głównym powodem, dla którego zamierzasz przesyłać pytania na fora, jest to, że będziesz musiał przekroczyć (a tym samym przełamać) model zawarty w rzekomo prostym podejściu. Kiedy nieuchronnie napotkasz te potrzeby, potrzebujesz najlepszej porady.
  • Nigdy nie myśl wtedy, że pozorny skrót faktycznie przyspiesza pracę. BARDZO często prawda jest odwrotna.

Zalecana: