Объясните зачем мне нужен для веб-программирования Python, Django, и заменяют ли они MySQL?
Я решил заняться программированием, и начал с веб-а. Я изучил уже на достаточно приемлемом уровне html, css, js (jquery), а так же немного python и щас начал париться с Django. Но не уверен, нужен ли мне этот Django. Если с js всё было ясно (зачем он нужен, что я могу им сделать с сайтом и т.д.), то с Python и Django совсем теряюсь зачем я трачу на них время.
Как я понял (но не уверен, что верно), сам по себе python бесполезен для веб-а, и может использоваться лишь с Django для этой сферы. Но я совсем не понимаю чем Django УПРОЩАЕТ работу. Разве что он является заменой какой-нибудь "базы данных" (не уверен как правильно называются подобные) (к которым я ещё не приступал совсем), например MySQL? Только тогда всё встаёт на свои места. Но действительно ли я правильно всё понял? Объясните пожалуйста.
А вообще, я понял, что не хочу на долгосрочной перспективе заниматься веб-программированием, ибо всё же не моё. Но как я понял, лучше уж добить его и начать подрабатывать на этих знаниях, а потом уже потихоньку набираться опыта и перебираться в другую сферу, а именно создание игр (где Python должен очень пригодиться, насколько я знаю).
Не буду отвечать про веб - пусть профи в этом деле ответят.
А вот про геймдев скажу. Питон там в большинстве случаев не нужен. И вообще - язык это вторичность. В геймдеве важны навыки алгоритмизации, паттерны, знание математики, работа с графикой.
Кстати там где то в комментах всплывало "соло в геймдеве" - учтите, самостоятельно вы в геймдеве не заработаете.
GavriKos, Да, я как раз это и написал. Разве что одному можно на каких-то крайне простеньких игрулях, только вот на таком кале и заработать не выйдет особо.
Python - это СЕРВЕРНЫЙ язык в вебе, без него твой сайт не будет работать как не работает машина без двигателя.
Mysql - хранение данных. (как жесткий диск в компе)
Html, css - отображение данных. (как экран в компе)
Python - обработка данных, при записи в mysql или выводе в html. (как процессор в компе)
Как ты в веб полез если такие элементарные вещи не понял еще?
Не понял до конца что такое и как используется MySQL, Python и Django? Хмммммммммммммммммммммм. Может потому что я их только начал касаться???? А до этого долгое время занимался HTML, CSS, JS/JQuery и создавал только на их основе сайты ради практики?
За ответ, конечно, спасибо, прояснило некоторые вещи, однако откуда такой тупой негатив и нервозность?
Your_House, когда любой человек начинает делать сайты он тут же сталкивается с понятием "динамический сайт" и сразу сталкивается с серверными языками и базами данных. Странно что ты делая сайты только сейчас к этому пришел.
Антон Р., Сталкивался и не раз, однако из-за не знания многого чего, я это понятие ("динамический сайт") связывал с JavaScript(/JQuery), и делал "динамический сайт" посредством добавления различных анимаций, кнопок, неких реакций определённого контента на действия пользователя и т.д. (наверное хреново сформулировал примеры)
О базе данных я тоже само собой слышал, и то понимал на 100% что это такое, то начинал сомневаться из-за некоторой новой информации (долго объяснять подробности)
Смотри, выше уже написали про БД. Скажу только что Пайтон и Джанго это типа как Джава Скрипт и Жейквери. То есть есть более "низкого уровня" язык, и уже для него есть более обобщенный фреймворк, которым ты можешь в одну строчку написать то же, что на обычном языке писал бы в 10 строк.
Вот это и есть Пайтон и Джанго - пайтон может много всякой математики, а в Джанго ты можешь более простыми конструкциями делать разные штуки для веба, и сам Джанго уже будет переводить упрощенные запросы в полный код пайтона.
Фреймворк обычно ничего не "переводит" в полный код, просто там множество функций уже созданы заранее, и тебе их не нужно писать каждый раз заново. То есть тупо готовые заготовки кода написанные умными людьми за тебя.
Антон Р., тут есть чем возразить, но нафиг, тут просто чуваку пытаются на пальцах обьяснять, и нет смысла вдаваться в споры переводится жейквери запрос в обычный жаваскрипт или нет.
Антон Р., ну блин же. илоквент и артисан это совсем о другом.
все же куски кода в ларе исполняет пхп интерпретатор. И ему просто физически не возможно передавать ларный код, он его не поймет и никак не выполнит. Посему и с т.з. пхп фреймворков - они таки очень переводят упрощенные конструкции в нативный пхп код.
На Django нельзя подработать, это во-первых.
Django НЕ ЗАМЕНЯЕТ mysql, а работает с ним. База данных - это место где хранятся данные, Django их обрабатывает. Пример: mysql - это папка с файлами, что бы достать из этой папки файлы, тебе нужно по ним пробежаться, достать нужное и выдать (себе или другому), в данном случае ты - django.
Хочешь идти в геймдев - иди, не лезь сюда, с таким стеком тебе для получения первых деньжат потребуется не меньше года усердного труда.
Хочешь идти в геймдев - иди, не лезь сюда, с таким стеком тебе для получения первых деньжат потребуется не меньше года усердного труда.
- То-есть, для гейм-разработки не нужно потратить год-два усердного труда как на изучение так и на практику?
Просто на сколько я знаю, вебом более удобно и практично будет подрабатывать, нежели неопытным соло-программистом в сфере создания игр (мобильных/компьютерных)
Если представить простую схему, она выглядит как-то так:
- в браузере отображается какая-то страница сайта. Пользователь может делать с ней какие-то вещи - вводить данные, запрашивать какой-то контент.
- сама страница делает запросы к серверу чтобы получить нужные пользователю данные, или, например отправляет данные введенные в форму. Причем сама страница тоже присылается с этого сервера.
- сервер может обращаться к базе данных чтобы брать оттуда что-нибудь нужное, или записывать туда.
Сервер в этой схеме может быть написан на разных языках программирования с использованием разных фреймворков. Django это один из них и написан на питоне. Тоже самое можно сделать, например, на javascript используя фреймворк Express, или на PHP с использованием Laravel.
Для более ясного понимания рекомендую почитать про http и всякие GET, POST и другие запросы, про взаимодействие клиента и сервера.