نحوه ایجاد یک وب سایت پویا: 4 مرحله (همراه با تصاویر)

فهرست مطالب:

نحوه ایجاد یک وب سایت پویا: 4 مرحله (همراه با تصاویر)
نحوه ایجاد یک وب سایت پویا: 4 مرحله (همراه با تصاویر)

تصویری: نحوه ایجاد یک وب سایت پویا: 4 مرحله (همراه با تصاویر)

تصویری: نحوه ایجاد یک وب سایت پویا: 4 مرحله (همراه با تصاویر)
تصویری: آموزش ساخت Gmail / آموزش ساخت ایمیل 2024, ممکن است
Anonim

موضوعات این مبحث در رویکردهای ممکن آنقدر وسیع و متنوع هستند که هرگونه پاسخ واقعی به س questionsالات اجتناب ناپذیر تنها می تواند راه کلی را نشان دهد.

امروزه بسیاری از مردم می خواهند و امیدوارند که صفحات وب پویا (مبتنی بر داده) ایجاد شوند ، معماری آنها به راحتی مطالب جدید ، تجدید نظر و تعامل بازدیدکنندگان را در بر می گیرد. به عنوان مثال wiki چگونه یک وب سایت پویا است. در حالی که هدف پروژه های با کیفیت در دسترس همه افراد کوشا است ، این اشتباه است که دست کم نگیریم که در نهایت یک کار بسیار چالش برانگیز است ، به ویژه در موارد فنی هر پروژه آینده نگر. حتی ساده ترین حضورهای پویای وب نیاز به مهارت کافی در رشته های مختلف دارد.

در دستیابی به اهداف ضروری ، هیچ کس نمی تواند از طراحی خوب پایگاه داده منحرف شود. آماده سازی خود در این رشته به تنهایی یک کار اساسی (اما نه پیشگویی کننده) است. هنگامی که خلاصه ای از اهداف پروژه را در اختیار داریم ، باید ابزارهای مناسب برای دستیابی به آنها را در نظر بگیریم. سپس ما بر اساس چشم انداز معماری ایده آل پروژه ، زبانها یا ابزارهای برنامه نویسی برای انتخاب داریم.

دیدن کل تصویر از همان ابتدا حیاتی ترین مهارت از همه است.

مراحل

ساخت یک وب سایت پویا مرحله 1
ساخت یک وب سایت پویا مرحله 1

مرحله 1. مغز خود را با انواع ابزارها و فرایندهایی که به اهداف شما می رسند آشنا کنید

از آنجا که هسته اصلی هرگونه حضور وب پویا پایگاه داده و پردازش داده ها است ، اولین هدف حیاتی ما تصمیم گیری گسترده در مورد موتور پایگاه داده است. این ایده خوبی نیست که امیدوار باشیم به طور اتفاقی چنین تصمیمی را فقط به ظاهر اولیه و منطقی ترین روش اولیه بگیریم.

  • هدف حیاتی این تصمیم اولیه این است که پروژه ما را به گونه ای برنامه ریزی کنیم (با ابزارها و موتورهای پایگاه داده) که نیازهای شما را در تمام راههای آینده تأمین کند ، که در آن ، چون تصمیمات اولیه درست را گرفته اید ، به طور م uponثر و بدون مانع احتمالی ، بر پایه اولیه خود تکیه کنید. این بدان معناست که برای مثال در حالت ایده آل ، موتور پایگاه داده ای که انتخاب می کنید ، امروزه به سادگی و به ظاهر ساده نیست. از ابتدا باید یک موتور باشد که از نیازهای پردازشی پایین دستی شما پشتیبانی کند.
  • گاهی اوقات ملاحظات تجاری بیشتر بر چنین انتخاب هایی تأثیر می گذارد. حضور چه موتورهایی (و پرهزینه) است؟ چه موتورهایی عملاً در پیاده سازی هایی که اهداف پردازشی پروژه نهایی شما را تداوم می بخشد ، رایگان هستند؟ به طور کلی ، الگویی که باید رعایت شود این است که موتور خود را بر اساس یکی از دو حالت احتمالی انتخاب کنید.
  • برای انجام این کار ، ابتدا باید نیازهای اصلی جدول خود را ترسیم کنید. یک حرفه ای حتی نیازی به ساختن این نقشه نخواهد داشت (حتی اگر صدها یا هزاران جدول در آن وجود داشته باشد) ، زیرا آنها معمولاً بلافاصله می بینند که آیا معماری و نیازهای آینده ای که برای حمایت از آنها نیاز دارید ، یا به شدت خواندن یا نوشتن هستند. سپس یک پایگاه داده مناسب را بر اساس این گرایش کلی و شاید بیشتر بر اساس سلیقه و تجربه شخصی انتخاب کنید ، زیرا کار با ابزارهای توسعه نرم افزار مربوطه ممکن است بر این امر دلالت داشته باشد. MySQL انتخاب معمول برای پیاده سازی فشرده است. بسیاری از توسعه دهندگان برای پیاده سازی قابل اعتماد و فشرده به پایگاه های داده مانند PostgreSQL نگاه می کنند. ما با تحقیق دقیق و با استفاده از تجربیات صنعت توسعه نرم افزار کلی ، گرایش خود را نسبت به چنین ابزارهای حیاتی توسعه می دهیم. به طور کلی می توان از هزینه اجتناب کرد ، زیرا استفاده از ابزارهای بسیار خوب رایگان در دسترس است. آنچه ما به دنبال آن هستیم عملکرد در محیط های فشرده یا خواندن یا نوشتن ، قابلیت اطمینان ، سهولت و به حداقل رساندن مدیریت و ادغام آماده با ابزارهای توسعه نرم افزاری آینده نگر است.
ساخت یک وب سایت پویا مرحله 2
ساخت یک وب سایت پویا مرحله 2

مرحله 2. ابزارهای توسعه نرم افزار خود را انتخاب کنید

در انتخاب ابزارهای توسعه نرم افزار دو الگو باید در نظر گرفته شود. ابزارهای ظاهراً "آسان" در واقع به ندرت آسان هستند ، هنگامی که یک پروژه به طور اجتناب ناپذیری نقش الگوهای توسعه و عملکرد را از بین می برد "ابزارهای آسان" عموماً محدود می شوند. اگر می خواهید کاری فراتر از ابزارهای "آسان" مانند ترکیب زبان یا پارامتر ترجمه در URL های ایجاد شده به صورت پویا انجام دهید ، انجام آن در ابزارهای "آسان" بسیار دشوارتر است به طوری که ممکن است به مهارتهای برنامه نویسی بسیار پیچیده ای نیاز داشته باشد. الگوی آسان را برای انجام کارهای پیچیده تر فریب می دهد. ما باید ابزارهای خود را برای ساختن پروژه های خوب تسلط دهیم. این امر ابزارهای آسان را به بهترین انتخاب و پیچیده ترین ابزارها را به یک پیشنهاد دشوار تبدیل نمی کند. دام توسعه آسان به طور کلی شامل محدودیت هایی است که غلبه بر آنها در تکامل اجتناب ناپذیر پروژه ها بسیار هزینه بر است. به طور کلی تنوع عظیمی از چنین ابزارهایی به وجود می آید که ظاهراً چنین نیازهایی را برآورده می کند. اما الگوی ماندگاری ابزارها به واقعیت ظاهری رسیدن به این هدف اشاره می کند. و بنابراین ، به طور کلی ما متوجه می شویم که پیچیده ترین و قدرتمندترین ابزارها ، با الگوهای خوب (یا در دسترس بودن اشیاء و کتابخانه ها) ، نه تنها موانع اجتناب ناپذیر ابزارهای آسان را برطرف می کند ، بلکه به همان ترتیب "رسیدن به آنجا" را بسیار ساده تر می کند. وقتی دامنه ابزارهای موجود را مورد بررسی قرار می دهیم ، به طور کلی مدل های جامع تری در مفاهیم اولیه توسعه ارائه می شود و مفاهیم بهتری توسط ابزارهای بعدی ارائه می شود (یا آنها در بازارهایی که قبلاً به دست آورده اند فرصتی برای زنده ماندن ندارند). اگر ما ابزاری را که ظاهراً آسان است انتخاب کنیم ، آن چیزی که ما به دنبال آن هستیم یک الگوی توسعه است که هم سخت و بدون مانع احتمالی است. در آن صورت پارادوکس برای نئوفیت ها دشواری دیدن در مسیری است که ما می توانیم موانع برنامه نویسی در مجموعه ابزار معینی را درک کنیم. برخی معتقدند بهترین ابزارها از نظر رویکرد پروژه قوی ترین و محدود کننده ترین ابزارها هستند. آزادی برای توسعه آنچه شما می خواهید و به آن نیاز دارید اغلب به معنای شکستن مدل کلی ابزارهای ظاهرا ساده است ، چالش هایی که عملاً می تواند مغز مهندس نرم افزار باتجربه ترین و پیچیده ترین را در هم بشکند ، زیرا موفقیت در چنین چیزی به معنای "ساده" کردن است. مدل کاری را انجام دهد که ممکن است هیچ ظرفیت بومی برای پشتیبانی نداشته باشد. آیا برای مثال "روبی" واقعا ساده تر از C ++ یا C#است؟ نه. واقعاً ، مخصوصاً اگر مجبور باشید مدل ساده Ruby را خراب کنید تا عملکرد حیاتی را ارائه دهید. مانند روبی ، GCC برای لینوکس و OSX رایگان است. Ruby در OSX نیز عرضه می شود - فقط باید آن را در سیستم خود کشف کنید. از میان ابزارهای ظاهراً آسان تر ، انتخاب شخصی من روبی است. از ابزارهای واقعا پیچیده ، C ++ و C# تا مدتها در آینده برتری خواهند داشت. و حقیقت این است که اینها تنها وسایل توسعه بدون مانع هستند. بنابراین مستقیماً بنشینید و برای مطالعه جدی آماده شوید ، زیرا صرف نظر از مسیری که انتخاب می کنید ، شما باید نه تنها بر ابزارهای خود ، بلکه بر مدلهای بالقوه محدود کننده ای که این ابزارها ممکن است در نهایت شما را درگیر کنند ، تسلط داشته باشید. روبی احتمالاً بسیار تمیزتر از تقریباً همه همسالان "آسان" خود است. C ++ ابزاری برای برتری بدون محدودیت است. و در واقع ، استادان با تجربه پروژه های بی نظیری را با احتمال بسیار کمتری از آنچه ممکن است با یک ابزار ظاهرا آسان انجام دهند ، به دست خواهند آورد. در پایان ، توسعه دهندگانی که از این مشاهده دور می شوند ، هزینه هایی را پرداخت می کنند: یا مناسب ترین ابزار "آسان" را انتخاب می کنند ، یا نگران آزادی بیشتر در برابر پیچیدگی در پیچیده ترین ابزار نیستند. در حالت دوم ، شما بر اجسام Fast CGI تسلط دارید ، توپ را گرفته و می دوید. مفاهیم عظیمی اغلب با کد کمی پیاده سازی می شوند. بله ، ابزارهای ساده نیز همین ادعا را دارند ، اما با برداشتن دشواری های ظاهری از ما به گونه ای که انحراف از الگوی معمولی منحصر به فرد آنها علاوه بر نقص های عملکردی که C ++ برطرف می کند ، چالش های مهندسی بسیار دشواری را ایجاد می کند.

ساخت یک وب سایت پویا مرحله 3
ساخت یک وب سایت پویا مرحله 3

مرحله 3. در حین حل این س questionsالات ، ما ناگزیر باید مدل ها یا الگوهای اساسی توسعه پروژه هایی از طبیعت مورد نظر خود را بررسی کنیم

این بدان معناست که بهترین ادبیات را برای ابزارهایی که می خواهیم مقایسه کنیم ، بدست آوریم و حداقل به مفهوم خود شکلی را ارائه دهیم که ممکن است در مجموعه ای از ابزارها ، در مقایسه با سایرین ، به کار رود. به عنوان مثال ، قبل از انتخاب Ruby ، ممکن است کتابهای حیاتی مانند "زبان برنامه نویسی Ruby" و "توسعه وب چابک با ریل" را انتخاب کنید. مطالعه اولیه شما نه تنها باید به اندازه کافی بر ابزارها تسلط داشته باشد ، بلکه باید تصور کند که چگونه می توانید به آنجا برسید - چگونه می توانید عملکرد مورد نظر را با ابزاری که انتخاب می کنید ارائه دهید. این یک کار دلهره آور برای مبتدیان است. اگر قصد دارید محیط توسعه ظاهراً آسان را با بهترین ها مقایسه کنید ، باید بهترین ابزار C را نیز ارزیابی کنید. اگر واقعاً قرار است یک مهندس با تجربه باشید ، C را به دلیل آزادی از محدودیت انتخاب می کنید. آیا واقعا C سخت تر است؟ خیر نحو نحو است. در پایان ، شما باید در بیان عملکرد مشابه تسلط داشته باشید. و در حقیقت ، خانواده زبان C عالی است. کار دشواری که در C ++ وجود دارد ، قرار دادن مدل هایی است که ممکن است نیاز به ساخت آنها داشته باشید. یک شروع عالی از 15 سال پیش ، اجزای اولیه FastCGI بود که در CPPBuilder Borland موجود بود - احتمالاً هنوز بهترین C ++ برای Windows است. حتی مبتدیان C می توانند با چنین رویکردهای شی گرا راه زیادی را طی کنند ، زیرا مدل کلی عملکرد پایدار در چیزهایی که با آنها کار می کنید ساخته شده است. به عنوان مثال ، هر زمان که ممکن است مدل روبی را بشکنید یا از آن فراتر بروید ، کار شما بسیار روانتر از روبی است. از سوی دیگر ، تکنیک های داربست Rails کار بسیار زیادی را برای نئوفیت تسریع می کند ، اگر و فقط اگر پروژه متناسب با قالب کلی Ruby and Rails باشد. به عنوان مثال ، مقررات امنیتی ابتدایی را معرفی کنید ، که در همه رابط های Ruby شما شناخته شده است ، و نکته بعدی که می دانید ، این است که برای هر جدولی که برنامه شما مورد بحث قرار می دهد ، هزار خط کد Ruby ایجاد شده به صورت خودکار می نویسید. آیا این آسان است؟ خوب ، من این کار را با یک ویرایشگر ویندوز به نام NoteTab Pro انجام می دهم ، که روی پروژه های Ruby ساکن در سیستم OSX کار می کند. و ماکروهای پیچیده تجدید نظر من را در یک ثانیه انجام می دهند و هزار خط کد را تقریباً دو برابر آن سفارشی می کنند. با این حال ، این به عملکردهای نسبتاً ساده و اساسی مربوط می شود ، که یک پروژه به آن محدود شده است. واقعیت این است که در C ++ می توانیم اشیاء خود را بنویسیم که این وظایف را به طور جهانی انجام می دهد - شما حتی مجبور نیستید این فرایند را تکرار کنید. بنابراین اینها مصالحه است. در نهایت ، شی گرا C قوی ترین و کارآمدترین است. این بدان معناست که کمترین کار را نیز می کند.

ساخت یک وب سایت پویا مرحله 4
ساخت یک وب سایت پویا مرحله 4

مرحله 4. صرف نظر از انتخاب ابزارهای برنامه نویسی ، هیچ راهی برای جلوگیری از وابستگی به تسلط منطقی بر HTML و CSS وجود ندارد

به طور کلی ، توسعه دهندگان با تجربه به W3C.org برای مواد حیاتی تکیه می کنند. صفحه وب

ویدئو - با استفاده از این سرویس ، ممکن است برخی از اطلاعات با YouTube به اشتراک گذاشته شود

نکات

  • در این صورت بخش مهمی از تلاش شما دستیابی به بهترین منابع است. من با روبی شروع می کنم. و اگر می خواهید برتری داشته باشید ، باید زبان های شی گرا C را بررسی کنید ، و محیط هایی که در آنها پروژه های خوب نوشته شده همه همسالان را بهتر اجرا می کند.
  • بنابراین هیچ چیز نمی تواند جایگزین مطالعه و ارزیابی جامع شود.

هشدارها

  • یک مانع دیگر برای تسلط بر ابزارهای ساده ، رفتار غیرحرفه ای در بسیاری از انجمن ها است. تفاوت زیادی بین دانش فنی و مهارت تظاهری وجود دارد که اغلب می تواند شما را از راه درست دور کند. بهترین منابع اطلاعات عموماً موفق ترین همسالان هستند ، نه استادان وانمود شده ابزارهای ظاهراً ساده ای که به سادگی از پیروی از الگویی که در دسترس آنهاست حمایت می کنند. دلیل اصلی اینکه شما س questionsالات خود را به انجمن ها ارسال می کنید این است که باید از الگویی که با رویکرد ساده ادعا می شود فراتر بروید (بنابراین شکست). وقتی به ناچار با این نیازها مواجه می شوید ، به بهترین مشاوره نیاز دارید.
  • پس هرگز تصور نکنید که یک میانبر ظاهراً کار را تسریع می کند. اغلب ، عکس آن صادق است.

توصیه شده: