Найти - Пользователи
Полная версия: Не могу войти в Back-End разработку.
Начало » Python для новичков » Не могу войти в Back-End разработку.
1 2 3
ron_1
Rodegast
Обидно слышать такие демотивирующие слова.
Rodegast
А оно тебе надо?
Нет. Если честно, я ненавижу интернет и всё что с ним связано, не выношу сайты и всю это неразбериху с протоколами, боюсь проснуться сисадмином или же жить создавая условия для других. Но на этом детском языке программирования далеко не уплывёшь, тут только можно выучить джангу и прыгать с бананом по деревьям (аналогия с поиском работы). Куда ещё как не в веб, да и пусть опыт будет, не зря же два года на изучение языка потратил.
vic57
ron_1
http://wiki.python.su/
тут есть пошаговый пример рабочий, пройди до конца
Rodegast
> Куда ещё как не в веб, да и пусть опыт будет, не зря же два года на изучение языка потратил.

А вот не надо думать что изучение фреймворка тебе сразу работу принесёт. Ты окажешся в высококонкурентной среде где от тебя ещё потребуют js (и это хорошо если ещё без его многочисленных фреймворков), вёрстку, настройку апача, SQL и ещё бог знает чего.
По этому лучше становись специалистом в той области которая тебе по настоящему нравится, python это вполне позволяет.
ron_1
Rodegast
канализационный pygame и наполовину сырой kivy позволяют мне разрабатывать игрульки для андроид? Python позволяет математикам, школьникам, новичкам, веб-девелоперам быть ими. А вот Python для геймдева - это как использование модуля огурцов (pickle)в виде базы данных для АНБ.
py.user.next
ron_1
Я новичок в бэкенде, я как старик который попал в далёкое будущее - я не понимаю алгоритм работы всей этой машины.
Ты не знаешь основ WWW. Надо изучить протокол HTTP.
Вкратце
Есть две программы: программа-сервер, которая ставится на один компьютер; программа-клиент, которая ставится на второй компьютер.
Компьютер с установленной программой-сервером называется сервером.
Компьютер с установленной программой-клиентом называется клиентом.
Программа-сервер устроена так: она реализует какой-то протокол и открывает порт на компьютере, чтобы в этот порт можно было по сети подключиться.
Программа-клиент устроена так: она реализует какой-то протокол и подключается по сети к порту на компьютере.
Когда клиент подключается к серверу, программа-клиент подключается к программе-серверу и между ними начинается обмен данными по протоколу. Они здороваются (правило протокола), сообщают друг другу свои версии (правило протокола), набор своих возможностей и потом передают данные, соблюдая определённый синтаксис (правило протокола). Благодаря протоколу они друг друга понимают и знают, как общаться и что вообще можно делать.
Есть разные протоколы: HTTP, FTP, SSH, TELNET, SMTP, POP3, IMAP, GOPHER и многие другие. Соответственно, для каждого протокола есть своя пара программ, реализующих протокол, - программа-сервер и программа-клиент.
Рассмотрим протокол HTTP. В этом протоколе программа-клиент посылает текстовый запрос, который включает в себя команду и её параметры.
GET /index.html HTTP/1.0
тут идёт обязательная пустая строка (это определёно в протоколе)
Команда GET запрашивает у сервера файл index.html по адресу / . При этом версия протокола HTTP используется 1.0, что говорит о старом наборе возможностей, которые сервер должен использовать. Версия 1.1 добавляет возможности в протокол и на сервере эта версия есть, но клиент говорит, что не поймёт эти возможности, поэтому сервер должен повиноваться и отвечать только в версии 1.0 . Это всё тоже заложено в протоколе, протокол - это набор всех поведенческих правил.
Вот когда программа-клиент отправила запрос такой, программа-сервер просто получила этот текст, а дальше по этому тексту она решает, что надо сделать и что надо ответить клиенту. Что может делать программа-сервер на компьютере? Да что угодно, всё что хочет. Но ответить она должна по протоколу. Она может просто не брать никакой файл, а просто ответить
HTTP/1.0 200 OK
Content-Type: text/plain
пустая строка (по протоколу)
hello world
Тогда программа-клиент видит, что это ответ по протоколу, что версия протокола соблюдается, что ответ без ошибок и что вообще запрашиваемая команда выполнена. Программа-клиент знает, что после пустой строки можно брать данные спокойно.
При этом всём программа-сервер может, конечно, и пойти какой-то файл поискать, залезть в него и его содержимое точно так же отправить в виде текста в сетевое соединение по этому порту; программа-клиент не знает, что там происходит. Есть запрос - есть ответ.
Вот и всё.

ron_1
Как вы изучили свой первый фреймворк? Как начали работать в back-end?
Прочитал информацию о протоколе. Есть спецификации всех протоколов
HTTP 1.0
https://tools.ietf.org/html/rfc1945
HTTP 1.1
https://tools.ietf.org/html/rfc2616
FTP
https://tools.ietf.org/html/rfc959
SMTP
https://tools.ietf.org/html/rfc5321

ron_1
P.S Django это огромнейшая непонятная паутина где всё взаимосвязано
Что бы там ни было наворочено, всё равно это всё сводится к простому обмену текстом по протоколу. Любое веб-приложение (чат там или электронная почта) это просто обмен текстом по протоколу. Веб-приложение - это такой интерфейс для формирования запросов. Ты набираешь текст к окошке, нажимаешь на кнопку, а браузер просто при нажатии на кнопку составляет запрос по HTTP-протоколу и текст из окошка вставляет в этот запрос.

ron_1
что за слэш внутри первого декоратора? Кто обрабатывает возвращаемое значение функции index и т.д
Ты когда в браузере набираешь http://www.site.com , браузер подключается к этому сайту по адресу www.site.com и порту 80 и посылает туда запрос
GET / HTTP/1.0
пустая строка
Вот этот слеш и есть адрес ресурса на сервере.
И вот эта платформа (Django или Flask или Bottle или ещё что) знает, что при запросе от клиента ресурса по адресу / надо просто вернуть такой-то текст.

tags: http
Rodegast
> канализационный pygame и наполовину сырой kivy позволяют мне разрабатывать игрульки для андроид

А почему бы и нет? В разработке игр программирование стоит не на первом месте.
FishHook
Rodegast
>>>А почему бы и нет?
Отсутствие коммерчески успешных реализаций - яркий маркер ненужности поделки
Rodegast
> Отсутствие коммерчески успешных реализаций - яркий маркер ненужности поделки

Ненужность поделки - яркий маркер ненужности python-а
FishHook
Rodegast
Ненужность поделки - яркий маркер ненужности python-а
Я знаю коммерчески успешные проекте на питоне, одним из них занимаюсь сам.
Rodegast
> Я знаю коммерчески успешные проекте на питоне, одним из них занимаюсь сам.

Назови коммерчески успешную игру для android написанную на python-е.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB