LINUX.ORG.RU

Посоветуйте мурзилку по вебдеву


1

2

Python, небольшое веб-приложение, уровень знаний исполнителя близок к 0, слова вроде Ajax, CSS и XHTML знакомы только на уровне расшифровки аббревиатур. Больше всего интересует вопрос, как собрать стенд для отладки всего приложения - JS в браузере и Python на стороне сервера.

По разным причинам, большие фреймворки вроде Django не подходят.

★★★★★

Последнее исправление: tailgunner (всего исправлений: 1)
Ответ на: комментарий от jreznot

Учебник в интернетах: http://djbook.ru/ch01.html

Эээ... я, просто забыл сказать, что использовать мегафреймворки по условию нельзя.

С таким набором умений лучше книжки не читать

Для понимания, как работают вещи, книги необходимы.

tailgunner ★★★★★
() автор топика
Ответ на: комментарий от tailgunner

уровень знаний исполнителя близок к 0


гдето так.

Да и если чисто этим заниматься, то в винде удобнее, т.к. больше браузеров больше/удобнее сред работы с JS(ОСОБЕННО для новичка) :)

Jetty ★★★★★
()

Посоветую сделать так:
Взять что-нибудь, что работает поверх Werkzeug-a из коробки(ну или почти): flask /bottle.py. Главное сделать первый пример из туториала - дальше само пойдет...

Что касается вышеназванных «аббревиатур», то надо бы взять http://twitter.github.com/bootstrap/ запихнуть его в шаблон любого из фреймворка, потом сделать бизнес-логику на питоне, а в конце отдать верстальщикам/дезайнерам менять цвета под корпоративный стиль.

beka
()
Ответ на: комментарий от beka

сделать бизнес-логику на питоне, а в конце отдать верстальщикам/дезайнерам менять цвета под корпоративный стиль.

Нет никаких верстальщиков и корпоративного стиля :) Можешь назвать это пилотным проектом, на котором есть только один доброволец-исполнитель (я), который пока ничего не умеет в области вебдева.

tailgunner ★★★★★
() автор топика
Ответ на: комментарий от tailgunner

Этот самый bootstrap берет на себя: разметку страницы, кое-какое оформление, дает много готового к употреблению JavaScript`а. Главное запихнуть его в шаблонизатор. Чтобы запихнуть в шаблонизатор, надо прочитать туториал к шаблонизатору, где сказано о Inheritance.

как собрать стенд для отладки всего приложения - JS в браузере и Python на стороне сервера.

JS — FireBug`ом,
Python - на локалхосте запустить Werkzeug и делать отладку прямо в браузере ;)

beka
()
Ответ на: комментарий от beka

Этот самый bootstrap берет на себя: разметку страницы, кое-какое оформление, дает много готового к употреблению JavaScrip

Я понял, зачем он нужен, но, прежде чем его использовать, хотелось бы приблизительно знать, как он работает внутри.

JS — FireBug`ом,

Попробую.

Python - на локалхосте запустить Werkzeug и делать отладку прямо в браузере ;)

Я пока решил остановиться на bottle.py. Там такое возможно?

tailgunner ★★★★★
() автор топика
Ответ на: комментарий от alienclaster

А почему все-таки не django? Хорошая документация, много всего «искаробки».

Django большой, а у меня специфические требования к деплою - чем меньше кода, тем лучше.

tailgunner ★★★★★
() автор топика
Ответ на: комментарий от beka

Взять что-нибудь, что работает поверх Werkzeug-a из коробки(ну или почти): flask /bottle.py

Бутылка работает сама по себе, без веркцойга.

pevzi ★★★★★
()
Ответ на: комментарий от pevzi

Бутылка работает сама по себе, без веркцойга.

поэтому я написал «ну или почти» - имея в виду, что Werkzeug можно прикрутить.

beka
()
Ответ на: комментарий от tailgunner

А можно ссылку на туториал по прикручиванию Werkzeug для отладки в браузере?

Ну, werkzeug для этого и предназначен. У меня нет под рукой бутылки, поэтому приведу пример для flask-а:

from flask import Flask

app = Flask(__name__)
app.debug = True

@app.route('/test')
def test():
    a = 1
    b = 0
    c = a/b
    return "%d/%d = %d" % (a,b,c)

app.run()

запускаю пример

$ python test.py
* Running on http://127.0.0.1:5000/

Захожу на http://127.0.0.1:5000/test (test - потому, что см. строку 6) вижу ZeroDivisionError - как то так - http://i29.fastpic.ru/big/2012/0104/97/713f0694f8b10d65180502b9dd1d1f97.png

нажимаем на строчку с = a/b и ... http://i29.fastpic.ru/big/2012/0104/93/2706cbf3cb127a257292d72c35973f93.png

beka
()
Ответ на: комментарий от tailgunner

А можно ссылку на туториал по прикручиванию Werkzeug для отладки в браузере?

Перечитал вопрос - werkzeug это не плагин к браузеру, а утилитки для wsgi и сервер(не продакшен). Т.е. вся интерактивность за счет JavaScript`а. Прикручивать к браузеру его не нужно, нужно сервер разработки запустить на нем. В Flask`е это из коробки, для бутылки ссылку я привел выше.

beka
()

Всем спасибо, буду учиться.

tailgunner ★★★★★
() автор топика

Где новички берут проекты на python?

Ведь его всего 0.3% (тыц и тыц),причем совсем ну вот ни капельки не видно, что он набирает популярность, а каждый третий пыхыпышник еще и питонист.

anonymous
()
Ответ на: комментарий от anonymous

Где новички берут проекты на python?

Про новичков вообще - не знаю, а я собираюсь проект написать.

tailgunner ★★★★★
() автор топика
Ответ на: комментарий от anonymous

А еще этот «проект» не для интернета и в статистику не попадет.

tailgunner ★★★★★
() автор топика
Ответ на: комментарий от anonymous

Я опасаюсь связываться с большими фреймворками и надеюсь, что они мне не понадобятся. А если понадобятся, то я автоматически зафейлил проект :)

tailgunner ★★★★★
() автор топика

А точно на Питоне надо? Вот просто у меня тоже есть веб-прожектик который на данный момент нужен только мне. HTML знаю на самом базовом уровне, CSS не знаю вообще. По совету ЛОР-а взял Vaadin/GWT, в нем весь HTML и JS генерятся автоматически из Swing-го образного кода. Отлаживается это хозяйство в Эклипсе через дебажный коннект к JVM. Дубовость Жабы отчасти обходится spring-ом и aspectj.

Absurd ★★★
()
Ответ на: комментарий от Absurd

А точно на Питоне надо?

Это часть гораздо большего проекта, в котором сейчас используются Си и Python. Выбор вполне очевиден.

По совету ЛОР-а взял Vaadin/GW

За решение притащить в проект Яву я оторвал бы руки.Сам себе, да.

spring-ом и aspectj.

Я уже несколько раз сказал, что большие фреймворки - non-starter.

tailgunner ★★★★★
() автор топика
Ответ на: комментарий от tailgunner

Это часть гораздо большего проекта, в котором сейчас используются Си и Python. Выбор вполне очевиден.

Для питона я нагуглил Pyjamas, но у него Sampler поскромнее чем у Vaadin-а. Связываться же с многомегабайтными спагетти из жавоскрипта, стилей и div-ов лично у меня никакого желания нет. На это надо несколько месяцев положить чтобы изучить как следует.

уже несколько раз сказал, что большие фреймворки - non-starter

«Большой фреймворк» это понятие относительное. Для кого-то это IBM WebSphere, например.

Absurd ★★★
()
Ответ на: комментарий от Absurd

Связываться же с многомегабайтными спагетти из жавоскрипта, стилей и div-ов лично у меня никакого желания нет.

У меня тоже. И, если другого выхода не будет, значит, фейл (неважно, самописанное это спагетти или jquery/django/whatever).

«Большой фреймворк» это понятие относительное. Для кого-то это IBM WebSphere, например.

%) Я инженер, а не ынтерпрайз-архитектор. Мне нужно облегчить жизнь всего-то себе и нескольким людям, и для меня даже flask великоват (потому что тянет за собой Jinja)

Пока расчеты на манжетах показывают, что для моих скромных целей хватит встроенного в более-менее современные браузеры XMLHttpRequest, немного самописанного JS/CSS, и bottle.py.

tailgunner ★★★★★
() автор топика
Ответ на: комментарий от tailgunner

А можно ссылку на туториал по прикручиванию Werkzeug для отладки в браузере?

Все эти отладки в браузере хороши, но на девелопмент-сервере, который «встроен» в любое питонячье поделие, проще использовать классический pdb.

anonymous
()
Ответ на: комментарий от anonymous

pdb, «встроен», «любое питонячье поделие»... ваше (не)знание темы - на лицо.

anonymous
()
Ответ на: комментарий от tailgunner

потому что тянет за собой Jinja

Jinja - это T из MVT, и в том или ином виде будет присутсвовать везде. Иногда в виде велосипеда, порой с прибитыми гвоздями к асфальту покрышками.

alienclaster ★★★
()
Ответ на: комментарий от alienclaster

Я не знаю, что такое MVT, но знаю, зачем нужен Jinja :) И надеюсь, что встроенного велосипеда bottle.py мне хватит.

tailgunner ★★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.