Dinamik Veb Sayt Necə Yaranır: 4 Adım (Şəkillərlə birlikdə)

Mündəricat:

Dinamik Veb Sayt Necə Yaranır: 4 Adım (Şəkillərlə birlikdə)
Dinamik Veb Sayt Necə Yaranır: 4 Adım (Şəkillərlə birlikdə)

Video: Dinamik Veb Sayt Necə Yaranır: 4 Adım (Şəkillərlə birlikdə)

Video: Dinamik Veb Sayt Necə Yaranır: 4 Adım (Şəkillərlə birlikdə)
Video: İngilis dilində dinləmə bacarığını necə inkişaf etdirim | Poliqlot 2024, Bilər
Anonim

Bu mövzunun məsələləri mümkün yanaşmalarda o qədər geniş və müxtəlifdir ki, qaçılmaz suallara hər hansı bir real cavab yalnız ümumi yolu göstərə bilər.

Bu gün bir çox insanlar, arxitekturaları yeni materialları, düzəlişləri və ziyarətçilərin qarşılıqlı əlaqələrini asanlıqla özündə cəmləşdirən dinamik (məlumatlara əsaslanan) veb mövcudluqları qurmaq istəyir və ümid edir. wikiHow məsələn dinamik bir veb saytdır. Keyfiyyətli layihələrin məqsədi bütün çalışqan insanların əlində olsa da, sonda, xüsusən də hər hansı bir perspektivli layihənin texniki obyektlərində əhəmiyyətli dərəcədə çətin bir iş olduğunu qiymətləndirmək səhv olardı. Hətta ən sadə dinamik veb mövcudluğu da müxtəlif fənlər üzrə kifayət qədər bacarıq tələb edir.

Vacib məqsədlərə çatmaqda heç kim yaxşı verilənlər bazası dizaynından yayına bilməz. Özümüzü yalnız bu intizama hazırlamaq əsas işdir (lakin heç bir şərt qoymur). Layihə məqsədlərinin xülasəsini əldə etdikdən sonra, onlara çatmaq üçün sağlam vasitələr düşünməliyik. Sonra ideal layihə memarlığı vizyonuna əsaslanaraq seçmək üçün proqramlaşdırma dilləri və ya vasitələrimiz var.

O vaxtdan bəri bütün mənzərəni görmək ən vacib bacarıqdır.

Addımlar

Dinamik Veb Sayt Yaradın 1
Dinamik Veb Sayt Yaradın 1

Addım 1. Beyninizi hansı vasitələr və proseslərin hədəflərinizə çatacağına yönəldin

Hər hansı bir dinamik veb varlığının ən əsas nüvəsi verilənlər bazası və məlumatların işlənməsi olduğundan, ilk həyati məqsədimiz bir verilənlər bazası mühərriki ilə bağlı geniş qərar verməkdir. Təsadüfən belə bir qərarı təsəvvür edə biləcəyinizə ümid etmək yaxşı bir fikir deyil.

  • Bu ilk qərarın həyati məqsədi, layihənizi (alətlər və verilənlər bazası mühərrikləri ilə) gələcəkdə ehtiyaclarınıza cavab verən bir şəkildə planlaşdırmaqdır ki, doğru qərarlar verdiyiniz üçün səmərəli və son maneə olmadan, ilkin təməl üzərində səmərəli qurun. Bu o deməkdir ki, məsələn, seçdiyiniz verilənlər bazası mühərriki bu gün yerləşdirmək üçün asan və ya zahirən sadə deyil; əvvəldən aşağı emal tələblərinizi dəstəkləyəcək bir mühərrik olmalıdır.
  • Bəzən kommersiya mülahizələri bu cür seçimləri daha da təsir edir. Hansı mühərriklər davamlıdır (və bahalı)? Hansı mühərriklər, son layihənizin davam etməli olduğu emal məqsədlərini təmin edən tətbiqlərdə praktik olaraq iştirak etmirlər? Ümumiyyətlə, təqib edilməli olan model mühərrikinizi iki mümkün vəziyyətdən birinə əsaslanaraq seçməkdir.
  • Bunu etmək üçün əvvəlcə masanızın əsas ehtiyaclarını müəyyənləşdirməlisiniz. Bir mütəxəssisin bu xəritəni düzəltməsinə belə ehtiyac olmayacaq (yüzlərlə və ya minlərlə cədvəl olsa da), çünki dəstəkləməli olduğunuz memarlıq və gələcək ehtiyacların ya intensiv oxunub yazılmadığını dərhal görəcəklər. Müvafiq proqram inkişaf etdirmə vasitələri ilə işləmək əsas ola biləcəyi üçün bu ümumi mövqeyə və bəlkə də şəxsi zövqə və təcrübəyə əsaslanaraq uyğun bir verilənlər bazası seçəcəksiniz. MySQL intensiv oxumaq üçün adi seçimdir. Bir çox inkişaf etdirici etibarlı yazma intensiv tətbiqləri üçün PostgreSQL kimi verilənlər bazasına baxır. Diqqətlə araşdıraraq və ümumi proqram inkişaf sənayesinin təcrübə havuzundan istifadə edərək bu cür həyati vasitələrə münasibətimizi inkişaf etdiririk. Ümumiyyətlə, xərclərin qarşısını almaq olar, çünki çox yaxşı alətlərin pulsuz yerləşdirilməsi mövcuddur. Axtardığımız şey, ya oxumaq, ya da sıx mühitdə işləmək, etibarlılıq, idarəetmənin asanlığı və minimuma endirilməsi və gələcək proqram inkişaf etdirmə vasitələri ilə hazır inteqrasiyadır.
Dinamik bir veb sayt qurun Adım 2
Dinamik bir veb sayt qurun Adım 2

Addım 2. Proqram inkişaf etdirmə vasitələrinizi seçin

Proqram inkişaf etdirmə vasitələrini seçərkən nəzərə alınması lazım olan iki nümunə var. İddia edilən "asan" vasitələr nadir hallarda əslində asandır, çünki bir layihə qaçılmaz olaraq inkişaf və funksionallıq nümunələrini pozduqda "asan" vasitələr ümumiyyətlə məhduddur. Dinamik olaraq yaradılan URL -lərə dil və ya tərcümə parametri daxil etmək kimi "asan" vasitələrdən başqa bir şey etmək istəyirsinizsə, "asan" vasitələrdə yerinə yetirmək çox mürəkkəb proqramlaşdırma bacarıqları tələb edə biləcək qədər çətin ola bilər. daha mürəkkəb şeylər etmək üçün asan nümunəni aldatmaq kimi. Yaxşı layihələr qurmaq üçün alətlərimizə yiyələnməliyik. Bu asan alətləri ən yaxşı seçim və ya ən mürəkkəb alətləri çətin bir təklif halına gətirmir. "Asan" inkişaf tələsi ümumiyyətlə layihələrin qaçılmaz təkamülündə aradan qaldırılması çox baha başa gələn məhdudiyyətləri əhatə edir. Çox güman ki, bu cür ehtiyacları qarşılayan çoxlu sayda bu cür alətlər yaranır. Lakin alətlərin inadkarlıq nümunəsi bu məqsədə çatdığına dair bir həqiqətə xəyanət edir; və buna görə də, ümumiyyətlə, ən yaxşı və güclü vasitələrin yaxşı nümunələri (və ya obyektlərin və kitabxanaların mövcudluğunu) izləyərək, nəinki asan vasitələrin praktiki olaraq qaçılmaz maneələrini aradan qaldırdığını, eyni zamanda "ora çatmağı" daha sadə bir proses halına gətirdiyini görürük. Mövcud vasitələrin əhatə dairəsini araşdırdığımızda, ümumiyyətlə daha az əhatəli modellər ilkin inkişaf konsepsiyalarında təqdim olunur və daha yaxşı anlayışlar sonradan yaranan vasitələr tərəfindən təqdim olunur (ya da artıq qazanılan bazarlarda yaşamaq şansları olmayacaq). Demək olar ki, asan bir vasitə seçsək, axtardığımız şey həm maneəsiz, həm də sonsuz bir inkişaf modelidir. Neofit üçün paradoks, müəyyən bir alət dəsti üçün proqramlaşdırma maneələrini hiss edə biləcəyimiz qədər uzaqda görmək çətinliyidir. Bəzi insanlar, ən yaxşı vasitələrin layihə yanaşması baxımından ən güclü və ən az məhdudlaşdırıcı olduğuna inanırlar. İstədiyinizi və ehtiyac duyduğunuz şeyi inkişaf etdirmək azadlığı, çətinliklər ən təcrübəli və inkişaf etmiş bir proqram mühəndisinin beynini praktiki olaraq sındıra biləcək görünən sadə vasitələrin ümumi modelini pozmaq deməkdir, çünki belə bir obyektdə uğur qazanmaq "sadə" etmək deməkdir. model, dəstəkləmək üçün yerli qabiliyyəti olmayan bir şey edir. "Ruby", məsələn, əsas C ++ və ya C#-dən daha asan bir vasitədirmi? Xeyr. Həqiqətən deyil, xüsusən də həyati funksionallığı təmin etmək üçün Ruby -in sadə modelini sındırmalı olsanız. Ruby kimi, GCC də Linux və OSX üçün pulsuzdur. Ruby də OSX -də gəlir - sadəcə sisteminizdə kəşf etməlisiniz. Göründüyü kimi daha asan vasitələrdən şəxsi seçimim Rubydir. Həqiqətən inkişaf etmiş vasitələrdən C ++ və C# çoxdan gələcəkdə hökmranlıq edəcək; və həqiqət budur ki, bunlar maneəsiz inkişaf üçün yeganə vasitələrdir. Ciddi öyrənmək üçün düz oturun və əyilməyin, çünki seçdiyiniz yoldan asılı olmayaraq, təkcə alətlərinizi deyil, həm də nəticədə sizə mane ola biləcək potensial məhdudlaşdırıcı modelləri mənimsəməli olacaqsınız. Ruby, ehtimal ki, demək olar ki, bütün "asan" həmyaşıdlarından daha təmizdir. C ++, yüklənməmiş mükəmməllik vasitəsidir; və əslində, təcrübəli guruslar, ehtimal ki, asan bir vasitə ilə eyni məqsədlərə nail ola biləcəyindən daha az çətinlik çəkərək bənzərsiz layihələr həyata keçirəcəklər. Sonda, bu müşahidədən yayınan inkişaf etdiricilər müəyyən bir qiymət ödəyirlər: ya ən əlverişli "asan" vasitəni seçin, ya da ən mürəkkəb vasitədə yükdən azad olmaqdan daha az narahat olun. İkinci halda, Fast CGI obyektlərini mənimsəyirsiniz, topu götürüb qaçırsınız. Böyük anlayışlar çox vaxt az kodla həyata keçirilir. Bəli, sadə alətlər eyni iddianı irəli sürür, ancaq göründüyü çətinlikləri bizdən uzaqlaşdıraraq, C ++ həll etdiyi performans qüsurlarına əlavə olaraq, adətən tək nümunələrindən kənara çıxmaq çox çətin mühəndislik problemləri yaradır.

Dinamik bir veb sayt qurun Adım 3
Dinamik bir veb sayt qurun Adım 3

Addım 3. Bu sualların həlli prosesində istər -istəməz ortaya çıxarmaq istədiyimiz təbiət layihələrinin inkişaf etdirilməsinin əsas modellərini və ya nümunələrini araşdırmalıyıq

Bu, müqayisə etmək istədiyimiz vasitələr üçün ən yaxşı ədəbiyyatı ələ keçirmək və ən azından konsepsiyamızı digər vasitələrlə müqayisədə müəyyən bir alətlər dəstində ala biləcəyi formada vermək deməkdir. Məsələn Ruby seçməzdən əvvəl, "Ruby Proqramlaşdırma Dili" və "Rails ilə Çevik Veb İnkişafı" kimi həyati əhəmiyyətli kitabları ala bilərsiniz. İlkin tədqiqatınız nəinki alətləri kifayət qədər mənimsəməli, həm də ora necə gedə biləcəyinizi - seçə biləcəyiniz alətlə istədiyiniz funksiyanı necə təmin edə biləcəyinizi düşünməlidir. Bu təşəbbüskar üçün çətin bir işdir. Çox güman ki, asan inkişaf mühitini ən yaxşısı ilə müqayisə edəcəksənsə, ən yaxşı C alətlərini də qiymətləndirməlisən. Həqiqətən təcrübəli bir mühəndis olacaqsınızsa, məhdudiyyətdən azad olması üçün C seçəcəksiniz. C həqiqətən daha çətindir? Sintaksis sintaksisdir. Sonda eyni funksionallığı ifadə etməyi bacarmalısan; və əslində C ailəsinin dilləri əladır. C ++ - da darvazanın üstündən çıxmağın çətin cəhəti əllərinizi üzərində qura biləcəyiniz modellərə qoymaqdır. Praktiki olaraq 15 il əvvəl əla bir başlanğıc Borland CPPBuilder -də mövcud olan orijinal FastCGI komponentləri idi - yəqin ki, hələ də Windows üçün ən yaxşı C ++. Hətta C təşəbbüskarları belə obyekt yönümlü yanaşmalarla çox uzağa gedə bilərlər, çünki işləkliyin qorunmasının ümumi modeli sizin işlədiyiniz şeylərə əsaslanır. Yaxınlaşdığınız zaman Ruby modelini qıra və ya aşa bilsəniz, işləriniz Ruby-də olduğundan daha çox sərbəstdir. Digər tərəfdən, Rails iskele üsulları, layihə Ruby və Rails -in ümumi qəlibinə uyğun olarsa, neofit üçün çox işi sürətləndirir. Məsələn, bütün Ruby interfeyslərinizdə tanınan sadə təhlükəsizlik müddəalarını tətbiq edin və bildiyiniz növbəti şey, tətbiqinizin müzakirə etdiyi hər bir masa üçün min satır avtomatik yaradılan Ruby kodunu yenidən yazırsınız. Bu asandır? Yaxşı, bunu bir OSX sistemində yaşayan Ruby layihələrində işləyən NoteTab Pro adlı bir Windows redaktoru ilə edirəm; və mürəkkəb makrolar, bəlkə də bir saniyədə, min bir sətir kodunu demək olar ki, iki qatına uyğunlaşdıraraq düzəlişlərimi edir. Yenə də bu, bir layihənin məhdudlaşdırıldığı nisbətən sadə, əsas funksiyalara aiddir. Fakt budur ki, C ++ dilində bu vəzifələri həqiqətən universal şəkildə idarə edə bilən öz obyektlərimizi yaza bilərik - hətta bu prosesi təkrarlamaq belə lazım olmayacaq. Deməli, bunlar alverdir. Nəticədə obyekt yönümlü C ən güclü və səmərəlidir. Yəni bu da ən az işdir.

Dinamik Veb Sayt Yaradın 4
Dinamik Veb Sayt Yaradın 4

Addım 4. Proqramlaşdırma vasitələrini seçməyinizdən asılı olmayaraq, HTML və CSS -in ağlabatan bir sənətkarlığından asılılığın qarşısını almaq üçün heç bir yol yoxdur

Ümumiyyətlə, təcrübəli tərtibatçılar həyati material üçün W3C.org saytına etibar edirlər. veb səhifə

Video - Bu xidmətdən istifadə edərək bəzi məlumatlar YouTube ilə paylaşıla bilər

İpuçları

  • Axtardığınız işin ən vacib hissəsi əllərinizi ən yaxşı mənbələrə yönəltmək olacaq. Ruby ilə başlayardım; və üstün olmaq istəyirsinizsə, obyekt yönümlü C dillərini və yaxşı yazılmış layihələrin bütün həmyaşıdlarından üstün olacağı mühitləri qiymətləndirməlisiniz.
  • Buna görə heç bir şey hərtərəfli araşdırma və qiymətləndirməni əvəz edə bilməz.

Xəbərdarlıqlar

  • Həqiqətən sadə alətləri mənimsəməyə mane olan bir çox forumda qeyri -peşəkar davranışdır. Peşəkar nou-hau və tez-tez sizi düzgün yoldan uzaqlaşdıra biləcək iddia edilən bacarıq arasında böyük bir fərq var. Ən yaxşı məlumat mənbələri, ümumiyyətlə, ən əlverişli həmyaşıdlarıdır, guya sadə vasitələrin ustaları kimi görünmürlər, onlar sadəcə mövcud modelə sadiq qalmağı müdafiə edirlər. Forumlara suallar verməyinizin əsas səbəbi, ehtimal edilən sadə bir yanaşmanın meydana gətirdiyi modeli keçməyiniz (beləliklə, qırmanız) lazımdır. İstər -istəməz bu ehtiyaclarla qarşılaşanda ən yaxşı məsləhətə ehtiyacınız var.
  • Görünən bir qısa yolun əslində işi sürətləndirdiyini heç düşünməyin. ÇOX tez -tez əks fikir doğrudur.

Tövsiyə: