Уведомления

Группа в Telegram: @pythonsu

#1 Июнь 12, 2016 22:35:16

4kpt_IV
Зарегистрирован: 2016-01-08
Сообщения: 999
Репутация: +  49  -
Профиль   Отправить e-mail  

_

Avrong
Я пишу на Flask два года

Не врите, это некрасиво Ваш код говорит за Вас. Тут и года использования питона нет.

Avrong
P.S. PEP8 изучал, но к сожалению, не всегда придерживаюсь его правил.

Это быдлокод Когда Вы быдлокодите для себя, то это норм. Когда пишите модули, которыми будут пользоваться люди, то это плохо. Очень плохо. А тем более, когда рассчитываете, что это еще будет расширяться то лучше все делать по-стандарту. Когда я вижу такой код, то я его в проект не включу. Мало того, скажу Вам по-секрету. Не включат еще 90% пользователей.

Офлайн

#2 Июнь 12, 2016 22:45:10

4kpt_IV
Зарегистрирован: 2016-01-08
Сообщения: 999
Репутация: +  49  -
Профиль   Отправить e-mail  

_

FishHook
Это очень хорошо, когда мы наперед знаем структуру проекта, что где искать и что за что отвечает.

А кто сказал, что во фласке мы не знаем структуру? Просто возможность конфигурировать разными способами никак не отображается на знании и незнании структуры. Ну и документирование проекта никто не отменял.

FishHook
В этом смысле скаффолдинг - мощное подспорье для веб разработчика, и Джанго в этом смысле - пример для подражания.

Для вебразработчика, который хочет все делать однотипно и одинаково, да. Для творческого человека - это зло. Мало того, в джанге столько много похабных решений от которых ты не можешь уйти никак. Причем “НИКАК” - это ключевое слово. Если фласк дает свободу и возможность решать как и каким образом тебе строить приложение что подключать и как конфигурировать, то джанга в этом варианте проигрывает вчистую. И учиться этом не надо.

Хотя положа руку на сердце вынужден признать, что джанга хороша. Да. Для конвеерных разработок. Она даст фору многим фреймверкам. Вот только фласк для этого изначально не предназначен. И соревноваться в этой сфере не может и не должен. И делать из него “еще одну джангу” не надо. Это как сравнивать мотоцикл спортивный и грузовой автомобиль и доказывать, но на спорте нельзя возить картошку. Потом прикрутить к мотоциклу еще прицеп и сказать, что картошку то возить он может, но не столько, сколько КамАЗ Это я к тому, что у фласка совсем другая концепция и идея. Не нужны тут джанговские подходы и шаблоны проектирования.
Я только к этому призываю

P.S. Спор лишен смысла. Все равно будущее за aio. Поэтом мы тут просто с тобой мастодонты, как бы не было прискорбно…

P.P.S. Ну и на досуге глянь код, который был выложен и тебе вообще все станет ясно.

Отредактировано 4kpt_IV (Июнь 12, 2016 22:49:53)

Офлайн

#3 Июнь 13, 2016 07:27:33

PooH
От:
Зарегистрирован: 2006-12-05
Сообщения: 1948
Репутация: +  72  -
Профиль   Отправить e-mail  

_

4kpt_IV
Для вебразработчика, который хочет все делать однотипно и одинаково, да. Для творческого человека - это зло.
При любой структуре приложения есть обязательные файлы - setup.py, .hgignore, конфигурация для spinx и т.п. Создавать это все каждый раз руками мне лично в лом.

4kpt_IV
Я даже два доклада делал, почему каноничный фласк ужасен и как делать ТРУЪ
Можно где-нибудь с ними ознакомиться? Я, правда, фласк не использую, но вдруг.



Вот здесь один из первых отарков съел лаборанта. Это был такой умный отарк, что понимал даже теорию относительности. Он разговаривал с лаборантом, а потом бросился на него и загрыз…

Отредактировано PooH (Июнь 13, 2016 07:27:52)

Офлайн

#4 Июнь 13, 2016 07:55:01

FishHook
От:
Зарегистрирован: 2011-01-08
Сообщения: 8312
Репутация: +  568  -
Профиль   Отправить e-mail  

_

4kpt_IV

Если фласк дает свободу и возможность решать как и каким образом тебе строить приложение что подключать и как конфигурировать
Зачем? Когда ты берешь в руки чужой проект и знаешь, что это Джанга, ты имеешь совершенно точное представление о том, что есть settings.py - в нем собраны все константы настроек, есть urls.py - там весь роутинг, есть views.py, models.py, forms.py и т.д., все прозрачно и без неожиданностей, все документированно, вся документация в одном месте, все батарейки настраиваются однотипно, зачем тут давать волю чужой фантазии?

Мало того, в джанге столько много похабных решений от которых ты не можешь уйти никак.
А давай на примерах?
Я и сам люблю поворчать на джангу, но давай добавим конструктивной конкретики.



Офлайн

#5 Июнь 13, 2016 08:16:25

4kpt_IV
Зарегистрирован: 2016-01-08
Сообщения: 999
Репутация: +  49  -
Профиль   Отправить e-mail  

_

FishHook
Ну я уже тысяча раз говорил. Ты меня троллишь?

PooH
.hgignore
Особенно если человек джитом пользуется. Ага…

PooH
конфигурация для spinx
Нет. Не в любом. Еластик серч отменили сегодня?
Далее. У меня в куче проектах есть настройки для супервайзера? Их тоже сразу создавать заранее для всех проектов?
Мало того, я не использую селери, а исользую RQ. Причем конфигурирую его как отдельное приложение. Тоже сразу создаем? Заранее? И я такого могу привести просто тьму. Заранее создать удобно, безусловно. Как я уже написал выше - для конвеера. Если же сборка приложения колеблется от раза к разу и причем больше чем на 20%, тогда ни о каком создании заранее и речи быть не может. Не. Ну можно там создать папки проекта с файлами config.py. Максимум. Но это я могу создать и так и сам. Причем в последнее время начал строить приложение по принципам сервисов. У меня в основном пакете только файл конфигурации и больше ничего. Остальное разнесено по пакетам сервисов. Для меня предложенная “каноничная” конфигурация вообще не нужна. Я удалю 90% того, что она на создает.

P.S. Ну и если сравнивать подходы к созданию макета приложения, то на моем веку мне понравилось как это происходит в пайлоне, но никак не в джанге. Уж точно никак.


Офлайн

#6 Июнь 13, 2016 08:23:49

FishHook
От:
Зарегистрирован: 2011-01-08
Сообщения: 8312
Репутация: +  568  -
Профиль   Отправить e-mail  

_

4kpt_IV
Ну я уже тысяча раз говорил. Ты меня троллишь?
Неа, не троллю.
Только не надо сравнивать алхимию и ОРМ джанги, со своими задачами джанга отлично справляется.
Ты говоришь про какие-то чудовищные архитектурные косяки, хотелось бы понять, что ты имеешь в виду.



Офлайн

#7 Июнь 13, 2016 08:30:05

4kpt_IV
Зарегистрирован: 2016-01-08
Сообщения: 999
Репутация: +  49  -
Профиль   Отправить e-mail  

_

urls.py
settings.py
мидлварь
импорты
подключение и конфигурирование расширений (посмотри как сделано во фласке или ботле на крайняк)

P.S. Насчет орма. Нет. Не справляется. Найди гибриб проперти. А он нужен и часто. И хочется узнать сколько в джанговском ОРМе джоинлодов?

Офлайн

#8 Июнь 13, 2016 08:37:32

FishHook
От:
Зарегистрирован: 2011-01-08
Сообщения: 8312
Репутация: +  568  -
Профиль   Отправить e-mail  

_

4kpt_IV

urls.py
settings.py
мидлварь
И что? Чем всё вышеперечисленное тебя не устраивает?

>>>импорты
Этого я не понял
>>>гибриб проперти
Этого тоже
>>> джоинлодов
Да, собственно, и этого



Офлайн

#9 Июнь 13, 2016 08:39:52

PooH
От:
Зарегистрирован: 2006-12-05
Сообщения: 1948
Репутация: +  72  -
Профиль   Отправить e-mail  

_

4kpt_IV
PooH
.hgignore
Особенно если человек джитом пользуется. Ага…
Я ожидал этой реплики :)
4kpt_IV
PooH
конфигурация для spinx
Нет. Не в любом. Еластик серч отменили сегодня?
Я про вот вот sphinx, документация.

Ну в общем-то, конечно, кому как удобнее. Лично я тяжел на подъем, чем быстрее я доберусь до чего-либо рабочего, тем быстрее войду в поток. А там уж можно все с нуля переделать. Типа, кому то, удобнее с чистого листа, а кому-то надо увидеть: “все не так, все надо переделать”

4kpt_IV
Для меня предложенная “каноничная” конфигурация вообще не нужна.
Так я и не говорю о предложенной. Я использую coockicuter и десяток своих шаблонов, и не только для питона, мейкфайлы для си-шных проектов тоже уныло писать с нуля.



Вот здесь один из первых отарков съел лаборанта. Это был такой умный отарк, что понимал даже теорию относительности. Он разговаривал с лаборантом, а потом бросился на него и загрыз…

Офлайн

#10 Июнь 13, 2016 08:44:11

4kpt_IV
Зарегистрирован: 2016-01-08
Сообщения: 999
Репутация: +  49  -
Профиль   Отправить e-mail  

_

Мидлварь: Посмотри как сделал принцип пред-выполнения во фласке.

Сеттингс: Посмотри как конфигурируются расширения в фласке.

urls.py: На регеспах? Это реально нужно? Без этого никак? Да и вообще что оно делает в MTV? Существует 3 способа роутирования. В джанге??? Подскажу. Всего один. Можно поменять или параллельно использовать другой? НЕТ!!! Да и сам файл urls.py какой-то отбитый. Ты и сам это знаешь. Мы с тобой это уже обсуждали. Инклуде вообще жестяк. Адовый.

sqlalchemy: hybrid attributes
sqlalchemy: Eager Loading

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version