Ако се интересувате от уеб разработка, определено ще намерите Django за интересен. Django е по същество рамка за уеб разработка, базирана на Python. Той е създаден, за да ви спести много време и да направи уеб разработката много по-проста и забавна. Можете да използвате Django за създаване и поддържане на висококачествени уеб приложения, без много суетене.

Уеб разработката сама по себе си е смесица от креативност и забавни елементи и куп повтарящи се неща. Това, което прави Django е, че ви позволява да се съсредоточите върху забавните битове и ключовата част на вашето уеб приложение, като същевременно прави повтарящите се части по-малко от караница. С други думи, той предлага пряк път към честите програмистки задачи и абстракции на общи модели в уеб разработката. Той също така дава ясни конвенции за решаване на проблеми. Той прави всичко това, като същевременно ви дава свобода да работите извън рамката на обхвата, когато е необходимо.

Какво е уеб рамка?

Разбира се, преди да представим Django, първо трябва да знаем какви са уеб рамките, като се има предвид тяхното значение в днешните уеб приложения. За да разберем уеб рамки, нека да разгледаме как кодира приложението на Python, когато не използвате рамка. Най-простият начин да направите това е с общ интерфейс на шлюза (CGI). Просто трябва да създадете скрипт с HTML изход и след това да запазите скрипта с a. cgi разширение към уеб сървър. За прости страници подходът на писане от нулата вероятно е най-добър. Кодът е по-лесен за разбиране и няма друг код за четене. Освен това е по-лесно да се разгърне.

Въпреки своята простота, подходът идва с няколко предизвикателства. Например, какво бихте направили, ако се нуждаете от няколко части от приложението си, за да се свържете с база данни? Ако продължите по горния метод, ще трябва да дублирате свързващия код на базата данни във всеки CGI скрипт. Това може да бъде не само тромаво, но и да увеличи шансовете за пълзящи грешки при хората. По-лесният метод обаче би бил да се постави този код в споделена функция. Когато кодът се използва повторно в различни среди с отделна парола и база данни, ще трябва да конфигурирате кода за всяка конкретна среда.

Освен това, ако нямате много опит с Python, е по-вероятно да направите по-малки грешки, които могат да доведат до срив на приложението. Логиката на страницата в идеалния случай ще се отдели от HTML дисплейните елементи, така че редакторът да може да редактира всеки елемент, без да засяга другия.

Уеб рамка решава тези проблеми чрез формиране на инфраструктура за програмни приложения. Това ви помага да се съсредоточите върху действително писането на по-поддържан и чист код. Това прави и Джанго.

Model-View-Controller

Django отблизо следва модела на Model-View-Controller (MVC), дотолкова, че може да бъде почти категоризиран като MVC рамка. Този модел разделя модела на домейни, презентации и действия, базирани на въвеждане от потребители, в три уникални класа. За да разберете това по-добре, просто погледнете сценария на Python CGI.

Стандартният CGI скрипт ще включва някои въвеждащи HTML елементи за предния край и след това връзка към база данни. Ето примерен код за връзка с база данни в Python CGI:

връзка = MySQLdb.connect (user = 'ABC', passwd = 'xxxxxxxx', db = 'my_db')

След това имате команда за изпълнение за изпълнение на заявката. След това имате малко HTML за показване на резултатите от заявката в предния край. И накрая, вие затваряте връзката с обикновена линия:

connection.close ()

Сега с Django имате три Python файла, идентифицирани с техните. py суфикс. Първият ще бъде таблиците на базата данни, models.py. Вторият ще съдържа логиката на приложението, views.py. И третият ще има URL конфигурация, urls.py. И накрая, ще имате някои HTML елементи, които да представят резултатите в предния край. Ключът тук е разделянето на различни Python файлове; не е нужно да се притеснявате за синтаксиса.

Файлът models.py има описание на таблицата на базата данни. Използвайки този клас Python, можете да създавате, изтривате, извличате и актуализирате записи, като използвате прост код Python, вместо да повтаряте SQL изрази. Файлът views.py има бизнес логиката, а функцията latest_books () е изгледът. Файлът urls.py указва какъв изглед се извиква за даден URL адрес. Например, можете да кодирате изглед, който трябва да бъде извикан, в случай че браузърът зарежда URL адрес на домейн / пример /. Това означава, че ако вашият домейн е abc.com, посещение на URL адреса abc.com/example/ ще извика тази функция.

HTML шаблонът описва дизайна на страницата. Той използва шаблон на език и основни логически изявления. Като цяло тези парчета следват модела MVC.

MVC е метод за разработка на софтуер в това, че моделът, който е код за достъп и дефиниране на данни, е отделен от контролера, което е логиката за маршрутизиране на заявката, която също е отделна от изгледа, който е потребителският интерфейс. MVC е полезен с това, че компонентите са много слабо свързани. Всяка част от уеб приложението има свои собствени цели и може да бъде независимо променена, без да се налага драстично да променяте други части. Например, можете да промените URL адреса във всяка част на приложението и той ще промени реализацията и без да докосвате кода Python, който го представя. Можете да преименувате таблица в базата данни и да зададете промени на едно място, без да замествате десетки файлове.

Препоръчителни курсове

  • Програма на Windows 10
  • Професионален курс за тестване на софтуер
  • Пакет за обучение по програмиране на Python
  • Цялостно обучение на Django

Кратка история на Django

Сега, когато знаете малко за уеб рамките, е време да разровите малко в историята на Django. Знанието откъде идва Django може да ви помогне да разберете по-добре как работи и как да управлявате неговите преки пътища. Ако създавате уеб приложения, вероятно вече знаете проблемите, свързани с CGI. Класическият път на уеб разработката върви така:

  1. Вие пишете уеб приложение от самото начало
  2. Пишете второ заявление
  3. Разбирате, че между двете приложения има няколко общи елемента
  4. Рефакторирате кода, така че приложение 1 да има същия код като второто
  5. Повтаряте 2-4 няколко пъти
  6. Осъзнавате, че сте създали рамка

Така е създаден и Джанго. Той е формиран от приложения в реалния свят, които са написани от екип за уеб разработки в Канзас. Той е създаден през 2003 г., когато уеб програмистите Адриан Холовати и Саймън Уилисън започнаха да използват Python за изграждане на приложения.

Екипът на World Online, отговорен за поддържането и създаването на няколко местни новинарски сайта, видя огромни ползи в среда за уеб разработка, която беше продиктувана от сроковете на журналистиката. За сайтовете журналистите и ръководството искаха да се добавят функции и да се изграждат приложения по бърз график, само с дни или часове на предизвестие. След това двамата разработчици формираха рамка за уеб разработка, за да спестят време и да създадат устойчиви приложения в сроковете.

След това екипът пусна рамката като софтуер с отворен код през лятото на 2005 г., като я нарече Django след Django Reinhardt, може би един от най-големите джаз китаристи на всички времена. Оттогава Django се утвърди като популярен проект с отворен код с хиляди поддръжници, сътрудници и потребители по целия свят. Двама от първоначалните разработчици, Jacob и Adrian, все още дават своите централни насоки за растежа на рамката.

Но защо дори обсъждаме историята на Джанго? Е, по две причини. Първият е, че помага да се идентифицират и обяснят „сладкото място“ на софтуера. Джанго беше изведен от новинарна среда и следователно е пълен с функции, които са най-подходящи за сайтове, съсредоточени върху съдържанието, като Washington Post, Amazon и Craigslist, предлагащи управлявана от база данни и динамична информация. Все пак Django е добър и за всеки диамичен уебсайт. Втората причина е, че историята на Джанго ви помага да разберете как е оформена културата на нейната общност.

Django е формиран от кода в реалния свят, а не от търговски продукт или академично упражнение. В резултат на това той е силно фокусиран върху решаването на проблеми, пред които са изправени оригиналните уеб разработчици, и проблеми, с които все още се сблъскват настоящите разработчици. Това означава, че Джанго вижда почти ежедневни подобрения. Екипажът за поддръжка на рамката има голям интерес да гарантира, че инструментът спестява време на разработчика и произвежда лесно поддържани приложения и такива, които се представят добре при големи натоварвания. Всички те искат да улеснят нещата за себе си, с други думи.

Инсталиране на Django

И така, досега трябва да е доста ясно, че Django е инструмент за опростяване на уеб разработката. Но инсталирането на самия инструмент може да предприеме няколко стъпки поради броя на движещите се части в съвременните среди за уеб разработка.

Django е основно Python код, така че работи навсякъде, което прави Python, което включва и някои мобилни телефони. Да допуснем, че го инсталирате на десктоп или лаптоп или на сървър. Тъй като Django е написан на Python, първо трябва да инсталирате Python. Основните рамки на Django с всяка версия на Python от 2.5 нататък. Ако не сте сигурни какво да изберете, изберете най-новата версия на Python, тъй като те имат езикови функции и подобрения в производителността, които може да намерите полезни.

Ако сте на Mac или Linux, вероятно вече имате Python в компютъра си. Можете да потвърдите това, като отидете в командния ред и напишете 'python' в командния ред. Трябва да видите нещо подобно:

Python 3.5.1 (v3.5.1: 37a07cee5969, 6 декември 2015, 01:54:25)

(MSC v.1900 64-битов (AMD64)) на win32

Въведете „помощ“, „авторско право“, „кредити“ или „лиценз“ за повече информация.

>>>

Ако не виждате това, трябва да го изтеглите и инсталирате. След като го инсталирате, трябва да изтеглите и инсталирате Django. Можете да избирате от две версии: най-новата официална версия или кървавата версия на уеб разработката. Това, което сте избрали, се основава на това, което искате. Ако искате тествана, стабилна версия, отидете на официалното издание. Ако искате нещо с най-новите функции и искате да допринесете за общността и можете да се справите с липсата на стабилност, отидете на версията за уеб разработка.

За начало е най-добре да отидете на официалното издание. Можете да намерите най-новия на уебсайта на проекта Django. Ако имате дистрибуция на Linux с пакет Django, отидете за версията на дистрибутора, така че да получавате и актуализации за сигурност.

Настройка на база данни

Единственото условие на Django е да имате работеща Python инсталация. След като направите това, можете да започнете да пишете уеб приложение веднага. Както обаче беше споменато по-рано, Django е разработен с акцент върху уеб приложения, базирани на съдържание, базирани на база данни. Така че шансовете са, че ще разработите уебсайт, базиран на база данни. В този случай трябва да настроите сървър на база данни.

Django поддържа четири двигателя на бази данни: MySQL, Oracle, SQLite 3 и PostgreSQL. Всички двигатели работят еднакво добре в по-голямата си част с основната рамка. PostgreSQL се препоръчва, ако нямате връзки към наследена система и можете да изберете резервна база данни.

За да настроите база данни, трябва да инсталирате и конфигурирате самия сървър. Всяка избрана от вас база данни има свой начин на настройка, така че трябва да се обърнете към това. Второ, трябва да инсталирате библиотеката Python за конкретния бекенд на базата данни. Това е код на трети страни за Python, който да взаимодейства с базата данни.

SQLite се препоръчва, ако просто експериментирате с Django и не искате да инсталирате сървър. Не изисква инсталация; той може просто да чете и записва данни в един файл на вашата система и се поддържа от Python 2.5 и по-нови версии. Windows затруднява получаването на двоични файлове на драйвери на базата данни.

Ако изберете MySQL, имате нужда от MySQL 4.0 или по-нова версия, тъй като по-старите версии не поддържат функциите на Django. Също така трябва да инсталирате MySQLdb пакета от страницата на Django Project. Ако използвате Linux, системата за управление на пакети на вашата дистрибуция може да има пакет, наречен „mysql-python“, „python-mysqldb“ или „python-mysql“.

Django работи с версии 9i или по-нова на Oracle Server Database Server. Също така трябва да инсталирате библиотеката cx_Oracle от уебсайта cx-Oracle. Като алтернатива можете да използвате Django без база данни изцяло, ако искате да го използвате само за обслужване на динамични страници без препратка към база данни. С това казано, някои от инструментите в Django изискват база данни и това, че нямате такъв, ще ви накара да пропуснете тях.

Препоръчителни статии

Ето няколко статии, които ще ви помогнат да получите повече подробности за Python и Django за уеб разработка, така че просто преминете през линка.

  1. Python vs JavaScript - Научете 11-те USEful разлики
  2. 10 най-добри въпроси за интервю за уеб разработка, които трябва да знаете
  3. 10 вида програмиране на Python
  4. Python vs Ruby Performance и техните полезни предимства
  5. Ключови разлики от Python срещу JavaScript
  6. Python vs Go