![]() |
Модераторы: Daevaorn |
![]() ![]() ![]() |
|
КунгФуЧайник |
|
|||
Новичок Профиль Группа: Участник Сообщений: 43 Регистрация: 10.8.2011 Репутация: нет Всего: нет |
В веб-разработке ничего не смыслю. Есть опыт с другими языками, немного с python. Решил научиться делать веб-ресурсы на этом языке, но встал ряд вопросов, на которые не знаю, где искать ответы. В первую очередь по выбору инструмента ( pylons, pyramid, flask, bottle, django).
1. CMS - это не фреймворк, а просто обозначение, что фреймворк специализированный, для работы с контентом, как сказано в вики? 2. Чем обычный фреймворк отличается от микрофреймворка? 3. Чем фреймворк отличается от CMS-фреймворка, ведь работа с контентом - это добавление разного вида информации на веб-ресурс: интернет-магазины, сайты-портфолио, форумы-блоги - то есть в любом веб-ресурсе, даже на "хомпаге"? 4. Где-то прочитал, что фреймворки делятся на те, которые рендерят страницу на стороне клиента, и те, которые рендерят страницу на стороне сервера. Это так? |
|||
|
||||
bilbobagginz |
|
|||
![]() Naughtius Maximus ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 8813 Регистрация: 2.3.2004 Где: Israel Репутация: нет Всего: 317 |
1. cms - это контент манаджмент систем, т.е. система управления контентом. есть фреймворки, специализирующиеся на контенте, которые называются обычно cmf, i.e. "content management framework".
2. микро обычно покрывает меньше сценариев "из коробки". грубо говоря создает какой-то базовый ассортимент компонентов и API к расширению. а полноценный фреймворк даст тебе "и г*вна, и ложку": т.е. покроет как можно больше сценариев своей сферы деятельности. При выборе: если у тебя шибко эзотерический сценарий, то скачивать полноценный фреймворк, а потом лобзиком выпиливать 90% кода, не имеет смысла. с др. стороны, если сценарий у тебя "стандартный", может имеет смысл не возиться с опилками, и следовать принципу "чем меньше своего кода, тем меньше своих багов". 3. "добавить информацию" можно с разными уровнями сложности: тебе надо, чтобы об новом контенте узнавал клиент только после рефреша ? тебе надо позволить прямую коммуникацию между посетителями ? тебе надо авторизироваться с внешними ресурсами ? интернет магазин говоришь ... как ты думаешь происходит обработка сделок ? там трансакции.... т.е. OLTP... 4. в принципе нормальные фреймворки включают в себя код клиентский и серверный, поэтому делить их на "клиентские" или "серверные" - по моему как минимум не умно. Насчет всей постановки вопроса: я не знаю сколько времени у тебя есть на то, что ты делаешь, но у людей с рамками во времени обычно есть не теоритические, а практические вопросы: изучать терминологию, историю и длинный список с википедии можно месяцами. спрашивай практику, не теорию.... -------------------- Я ещё не демон. Я только учусь. |
|||
|
||||
Arantir |
|
|||
Рыбак без удочки ![]() ![]() Профиль Группа: Участник Сообщений: 960 Регистрация: 18.11.2012 Репутация: нет Всего: 55 |
Первое различие в том, что CMS предназначена для пользователя, а фреймворк — для разработчика. CMS, в большинстве случаев, подразумевает наличие интерфейса для управления этим самым контентом, о котором говорится в ее аббревиатуре. А фреймворк никакого пользовательского интерфейса не имеет, это только API, инкапсуляция функционала для разработки. Фрймворк обычно берет на себя такие задачи, как автоматическая фильтрация входных данных, представление баз данных в объектном виде (ORM), автоматическая маршрутизация запросов по контроллерам (роутинг, запрос заданного формата выполняет заданные действия/операции) и прочее. В частности стоит заметить, что MVC-фреймворк по своей концепции позволяет реализовать приложение, которое вообще не является сайтом. Например, отдельное клиентское приложение, работающее с сервером по протоколу HTTP. Более того, можно реализовать приложение, которое одновременно может быть представлено пользователю многими способами, например, на ПК, смартфоне и мобильном (wap), и при этом использовать ту же самую модель и внутреннюю логику. А CMS — это уже функционал, предназначенный для более узкого круга задач. Это уже наполовину реализованный веб-сайт, только без содержимого, но и пользовательским интерфейсом по его добавлению и изменению.
Но разработка такого функционала представляется довольно сложной в данный момент и вряд ли в свободном доступе есть фреймфорки с достаточно качественным и функциональным клиентским рендерингом. Браузерам еще только предстоит взойти на подобную ступень в развитии веба. Это сообщение отредактировал(а) Arantir - 16.3.2013, 23:53 -------------------- interface Жопа { // ATTENTION: has to be implemented by every class of the project for proper project work } |
|||
|
||||
КунгФуЧайник |
|
|||
Новичок Профиль Группа: Участник Сообщений: 43 Регистрация: 10.8.2011 Репутация: нет Всего: нет |
Это все можно реализовать только на пайтоне, или еще и на яваскрипте? Ведь в браузерах есть только яваскрипт-интерпретаторы. Или мы пишим на пайтоне, используя апи фреймворка, а там внутри генерируется соответствующий яваскрипт-код и отправляется браузеру? Если для задачи вместо фреймворка по незнанию выбрал CMS, то к каким подводным камням это может привести? Времени неограниченно, так как это в качестве интереса. Из практики, есть 2 идеи: 1. сайт с возможностью добавления видео, сканов документов. Социально-политическая тематика, но не новостной. Доступ как с десктопа, так и с планшетов\смартфонов. 2. Сайт книжного магазина. Либо книжных магазинов города. Чтобы можно было знать, в каком продается интересная мне книга. Связь с каталогом товаров (из 1С, или из другого источника). Плюс такая возможность: на озоне, болеро либо в другом магазине увидел интересную книгу - посмотрел, есть ли она в магазинах моего города. Забирать название книги и прочие интересующие данные для поиска - либо через встраивание у них на странице кнопки (партнерка, либо еще какая модель), либо просто парсинг. Возможность доступа так же: с десктопа и с моб.устройств. Для новичка этот вариант не подъемен - просто обрисовал, подо что в перспективе подбираю инструмент (если, конечно, интерес не пропадет к веб-разработке раньше). Это сообщение отредактировал(а) КунгФуЧайник - 17.3.2013, 10:56 |
|||
|
||||
bilbobagginz |
|
|||
![]() Naughtius Maximus ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 8813 Регистрация: 2.3.2004 Где: Israel Репутация: нет Всего: 317 |
КунгФуЧайник, во-первых, мы пишем грамотно.
во-вторых, извиняюсь за неточность: серверные фреймворки фокусируются на серверной стороне. А клиентские (джаваскриптовые) фреймворки позволяют построить красивые и динамичные интерфейсы ко всему этому. Из питоновых фреймворков с которыми мне приходилось пересекаться (django, web2.py, tornado), все они фокусируются на серверной стороне работы.
Нет, только на питоне нельзя. Если тебе кровь из носу надо писать на 1-м языке на обеих сторонах, то джаваскрипт тут победит (nodejs тебе в руки как серверная сторона) Правда с т.з. трудоемкости и количества кода - для написания полноценного приложения с js тебе придется больше (по моему) работать, чем если напишешь серверную часть на питоне, а клиентскую на джаваскрипте (Ессно, тоже при использовании какого-то фреймворка) -------------------- Я ещё не демон. Я только учусь. |
|||
|
||||
ilnur |
|
|||
![]() питонист Профиль Группа: Участник Сообщений: 21 Регистрация: 13.12.2007 Где: Казань Репутация: нет Всего: нет |
||||
|
||||
КунгФуЧайник |
|
|||
Новичок Профиль Группа: Участник Сообщений: 43 Регистрация: 10.8.2011 Репутация: нет Всего: нет |
ilnur, на сколько смог перевести - это всего лишь обертка над методами во всяких *.js.
bilbobagginz, получается, еще и для фронтэнда фреймворк выбирать? Но ведь на джанго можно делать сайты, значит и клиентсую часть на нем делать можно. Есть ли пошаговые примеры разработки сайтов на джанго либо каком-нибудь другом фреймворке? А то как-то на пальцах получается. |
|||
|
||||
bilbobagginz |
|
|||
![]() Naughtius Maximus ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 8813 Регистрация: 2.3.2004 Где: Israel Репутация: нет Всего: 317 |
КунгФуЧайник,
![]()
очень грубо говоря - да. когда нет: когда на клиентской стороне нет никакой работы с данными, просто отображение, и отсылка данных посредством форм. но нередко это не есть реальность и приходится пользоваться библиотекой гуи джаваскрипт. ilnur, судя по сайту трудно знать какие большие приложения бегут на Брайтоне. у меня создалось впечатление, что несмотря на перспективы, на настоящий момент проект сыроват. -------------------- Я ещё не демон. Я только учусь. |
|||
|
||||
ilnurgi |
|
|||
Новичок Профиль Группа: Участник Сообщений: 25 Регистрация: 29.6.2007 Репутация: нет Всего: нет |
ну я и не говорил что это очень крутая штука.
просто привел пример. что уже и клиентскую часть в html можно кодить на python'e |
|||
|
||||
![]() ![]() ![]() |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Python: Веб-разработка и фреймворки | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |