طراحی و پیاده سازی وبسایت

طراحی و پیاده سازی وبسایت

طراحی و پیاده سازی وبسایت واژه ای است که جهت ایجاد یک محل (یا یک شعبه از کسب و کار) در دنیای اینترنت و یا شبکه جهانی استفاده میشود.

توسعه وب ميتواند از ساده ترين صفحه استاتيك و متن ساده تا پيچيده ترين برنامه هاى كاربردى متكى و وابسته به اينترنت،كسب وكارهاى اينترنتى و الكترونيكى و یا حتی خدمات شبكه هاى اجتماعى را در بر گیرد.

معمولا فهرست مواردی كه دنیای وب راگسترده و وسيع ميكند شامل موارد زیر است:

برنامه نویسی وب ، طراحى وب سایت ، تولید محتوای یک وبسایت، ارتباط بامشترى (تماس با ما و یا سیستم تیکت) ، اسكريپت سرور، سرور وب، امنيت شبكه و توسعه تجارت الكترونيك است.

 

واژه توسعه وب سایت در میان حرفه ای ها به معنی کدنویسی و نوشتن backend  سایت است. اخیرا توسعه وب سایت ها به سمت ایجاد یک سیستم مدیریت محتوا (cms) کشیده شده است . یک cms ميتواند از ابتدا و از صفر نوشته شده باشد (مانند cms های اختصاصی ایده آل وب ساز) و یا تکمیل شده یک cms دیگر باشد، به طور كلى  cmsبه عنوان یک رابط بين پايگاه داده و كاربر از طريق مرورگر عمل ميكند.

يك مزيت اصلى يك سيستم مديريت محتوا اين است كه اجازه ميدهد افراد بدون داشتن دانش برنامه نویسی وب سایت خود را راه اندازی و مدیریت کنند.

براى سازمانها و كسب و كارهاى بزرگتر، تيمهاى توسعه وب ميتواننداز صدها نفر توسعه دهنده وب تشكيل شده و از روش هاى استاندارد جهت ايجاد وب سايت استفاده كنند.

سازمانهاى كوچكتر ممكن است تنها از يك توسعه دهنددائمى يا قراردادى يا افرادى با موقعيتهاى كارى مرتبط مانند يك گرافیست يا کدنویس نياز داشته باشند.

طراحی و پیاده سازی یک وبسایت حرفه ای حاصل همکاری اعضای یک تیم مجرب با تخصص های مختلف می باشد که متخصص برنامه نویسی از مهمترین اضای این تیم می باشد که البته سه نوع برنامه نویس وبسایت وجود دارد : توسعه دهنده سمت کاربر (front end developer) توسعه دهنده سمت سرور (back end developer) و برنامه نویس کامل (full stack developer).

 

صنعت وب سایت

به جهت تجاری سازی وب، صنعت وبسایت به سرعت در حال رشد است. رشد این صنعت توسط شرکت هایی که مایل به استفاده از وب سایت خود برای فروش محصولات و خدمات به مشتریان هستند، هدایت می شود.

 برای پیاده سازی وبسایت ها از نرم افزارهایی مانند :BerkeleyDB، GlassFish، LAMP (لینوکس،Apache، MySQL، PHP) و Perl / Plack استفاده می گردد. این نرم افزارها هزینه یادگیری توسعه وب را بسيار کاهش داده است. یکی دیگر از عوامل موثر در رشد صنعت وب، استفاده از متدWYSIWYGدر نرم افزارهایی مانند Adobe Dreamweaver، BlueGriffon و مایکروسافت ویژوال استودیو است. البته دانش برنامه نويسى و HTML نیز همچنان برای استفاده از این نرم افزار ها مورد نیاز خواهد بود، اما اصول اين برنامه ها را می توان با کمک فایلها، کتاب های فنی، آموزش های اینترنتی یا آموزش حضوری به سرعت یاد گرفت. مجموعه ای از ابزارها و تکنولوژی های به روز به توسعه دهندگان کمک می کند وب سایت های داینامیک و تعاملی ارائه دهند.

علاوه بر این، توسعه دهندگان وب در حال حاضر میتوانند از طریق برنامه نویسی وب، وب سرویس های (webservice) مخصوص جهت استفاده در نرم افزار های گوناگون ارائه کنند که این وب سرویس ها قبلا فقط از طریق نرم افزار های تحت ویندوز قابل ارائه بود . مثال هایی را که می توان با افزایش وب سرویس های Cloudنام برد عبارتند از: Adobe Creative Cloud، Dropbox و Google Docs. این وب سرویس ها به کاربران اجازه می دهند به جاى اتصال دو دستگاه به هم، چندین دستگاه به طور همزمان به صورت ابری با هم ارتباط برقرار کنند.

تجارت الكترونيك نمونه اى از تحول چشمگير در ارتباطات و تجارت با پیشتازی صنعت وب سایت است. سایت های حراجی آنلاین مانندeBay روش مصرف کنندگان را پیدا کرده و کالاها و خدمات را خریداری کرده اند. خرده فروشان آنلاین مانند Amazon و Buy (از میان کلی سایت دیگر) تجربه مناقصه آنلاین را برای بسیاری از مصرف کنندگان ايجاد کرده اند. یکی دیگر از پیشرفت های بزرگ صنعت وب سایت، وبلاگ است. برنامه های کاربردی وب مانند وردپرس (wordpress) محیط وبلاگ ها را برای وب سایت های شخصی به راحتى ایجاد کرده اند. محبوبیت سیستم های مدیریت محتوای متن باز مانند جوملا (joomla)، دروپال  (drupal) و سیستم های مدیریت محتوا سازمانی مانند Alfresco و eXo Platform، تاثیرات صنعت وب سایت را درگسترش ارتباطات آنلاین ایجاد کرده اند. البته سیستم های رایگان مدیریت محتوایی مانند وردپرس و جوملا و دروپال به دلیل Open source بودن مستعد حمله های اینترنتی هستند و در اصطلاح برنامه نویسان Open attack هستند. پیشنهاد ما استفاده از سیستم ایده آل وبساز است که به دلیل استفاده از تکنولوژی و متد روز مانند فریم ورک لاراول (Laravel Framework) دارای امنیت و سرعت بالایی است.

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

 

برنامه نویسی وب سایت های کاربردی

در عمل، بسیاری از توسعه دهندگان وب مهارت های پایه ای این صنعت را دارا می باشند، از جمله:

•گرافیک / طراحی وب

• اطلاعات معمارى و copywriting / copyediting با قابلیت استفاده از وب،  بهینه سازی موتور جستجو و سئو

•ریسپانسیو سازی (واکنش گرا بودن برای تمامی دستگاه ها از جمله تبلت ها و گوشی های هوشمند)

موارد بالا یک سلسله توانایی های لازم جهت توسعه وب سایت ساده است و می تواند گسترش یابد تا شامل تمام ابعاد سمت کاربر و سمت سرور شود. مهم است بدانید که توسعه وب به طور کلی به دو دسته تقسیم شده است. برنامه نویسی سمت کاربر،که شامل مواردی مانند طراحی و برنامه نویسی اسکریپت های ظاهری، و برنامه نویسی سمت سرور که قابلیت های وب سایت و سیستم هایback-end را پوشش می دهد.

 

تست نرم افزار:

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

 

ملاحظات امنیتی

توسعه و برنامه نویسی وبسایت، بسیاری از ملاحظات امنیتی مانند بررسی خطای داده هاى ورودى از طریق فرم ها، فیلتر کردن خروجى و رمزگذاری را در نظر می گيرد. با اين وجود باز هم خطر حمله از نوع ورود به پایگاه داده (sql enjection) همچنان در کمین وب سایت ها است . تیم ایده آل به دلیل استفاده از pdo سیستم لاراول (laravel) امکان انجام حمله sql enjection را در وب سایت های خود به حداقل رسانده است. اسکریپت ها می توانند برای بهره برداری از وب سایت ها با دسترسی غیرمجاز به کاربران مخرب که سعی در جمع آوری اطلاعات از قبیل آدرس های ایمیل، رمزهای عبور و محتوای محافظت شده مانند شماره کارت اعتباری را دارند، مورد استفاده قرار می گیرند.

بعضی از اینها به محیط سرور مربوط می شود که زبان برنامه نویسی مانند ASP، JSP، Perl، PHP، Python، PerlیاRubyمیباشد و به همین دلیل لزوما به خود توسعه دهنده وب برای حفظ آن نیاز نیست. با این حال، آزمایش دقیق برنامه های وب سایت قبل از انتشار عمومی باعث جلوگیری از چنین سوء استفاده هایی می شود. اگر برخی از فرم های تماس در یک وب سایت ارائه شده باشند، باید حاوی یک فیلد رمزگذاری در آن باشند که از برنامه های کامپیوتری که به طور خودکار فرم ها را پر میکنند (اسپمرها) جلوگیری کنند.

نگهداری یک وب سرور با ضریب امنیت و ایمنی بالا، Server Port Hardening نامیده میشود. بسیاری از فناوری ها، برای حفظ اطلاعات در اینترنت جهت جلوگیری از لو رفتن اطلاعات وجود دارند ،  برای مثال « گواهینامهSSL » برای جلوگیری از تقلب اینترنتی صادر می شود. بسیاری از توسعه دهندگان، اغلب هنگام ارسال و ذخیره اطلاعات حساس از انواع مختلف رمزگذاری استفاده می کنند. درک پایه ای از نگرانی های امنیتی فناوری اطلاعات، اغلب بخشی از دانش وب توسعه دهندگان است.

از آنجا که حفره امنیتی جدید در برنامه های وب حتی پس از آزمایش و راه اندازی یافت می شود، به روز رسانی های بسته ى امنیتی برای برنامه های کاربردی به طور گسترده مورد استفاده قرار ميگيرد. یکی از وظایف مهم توسعه دهندگان وب است که برنامه ها را به روز نگه دارند تا زمانی که حفره های امنیتی جدید منتشر شوند و نگرانی های امنیتی جدید بوجود بیایند.