Уведомления

Группа в Telegram: @pythonsu

#1 Ноя. 6, 2013 09:09:13

Budulianin
От:
Зарегистрирован: 2011-10-18
Сообщения: 1218
Репутация: +  33  -
Профиль   Отправить e-mail  

Структура проекта на Python

kot275
А где такой код добыть?
Да на github.com полно



Офлайн

#2 Дек. 3, 2013 16:02:57

LPG
Зарегистрирован: 2013-09-10
Сообщения: 7
Репутация: +  0  -
Профиль   Отправить e-mail  

Структура проекта на Python

Easton
Подскажите пожалуйста, как правильно организовать структуру проекта?
Аналогичная проблема. Давно гуглю подобную информацию,- пока безрезультатно, если не считать вот этого http://freehabr.ru/blog/python/1135.html и нескольких обрывков кода с нерусских сайтов. На этапе изучения языка писал, как говорится, “как Бог на душу положит”. А теперь пришла пора серьёзных проектов, а без грамотной продуманной структуры никак. Да, конечно в процессе разработки наверняка придётся энное кол-во раз всё переделывать. Но всё же хотелось бы иметь некий, хотя бы стартовый, шаблон.
До python писал на языке, где была чисто модульная система (понятия классов не было в принципе), поэтому в голове надолго “залегло”, что в проекте как минимум должен быть глобальный модуль. Пробовал в python обозначить отдельный модуль (global_.py) в качестве глобального, но в результате это приводит к ещё большей путанице…
У каждого свой подход к организации структуры проекта. Предлагаю продолжить тему данного поста и выкладывать сюда свои варианты шаблонов структур (неплохо бы с кодом) или полезные ссылочки. Можно вкратце, достаточно идеи: как начинать, как и что лучше разбить на модули, классы, а что, наоборот, лучше оставить в функциях и пр. Для десктоповых проектов предлагаю такую схему: Логика+ГУИ+БД (Python+PyQt+SQLite/MySQL).
Новичкам это надо !
P.S. Книги по ООП сам не читал, каюсь. Будет время, надеюсь, осилю.

Офлайн

#3 Дек. 3, 2013 16:08:42

4kpt_II
От: Харьков
Зарегистрирован: 2013-10-24
Сообщения: 999
Репутация: +  58  -
Профиль   Отправить e-mail  

Структура проекта на Python

LPG
Для десктоповых проектов предлагаю такую схему: Логика+ГУИ+БД (Python+PyQt+SQLite/MySQL).Новичкам это надо !
Неа. Не очень-то схема. PyQt не вяжется вообще. Как для новичков - то тяжеловат будет.
А вот sqlite использовать можно и даже нужно…

P.S. Я MySQL не использую вообще. Я больше по PostgreSQL. Как мне быть?

Отредактировано 4kpt_II (Дек. 3, 2013 16:09:19)

Офлайн

#4 Дек. 3, 2013 16:14:48

LPG
Зарегистрирован: 2013-09-10
Сообщения: 7
Репутация: +  0  -
Профиль   Отправить e-mail  

Структура проекта на Python

4kpt_II
Я MySQL не использую вообще. Я больше по PostgreSQL. Как мне быть?
Можно и PostgreSQL. Не в этом суть…

А что касается PyQt - да не сказал бы, что он тяжёлый. Сам с нуля разбирался с этим. В основном решал вопросы касательно GUI и Network, т.е. совсем уж глубоко в PyQt не залазил (а возможностей там много)…

P.S. Кстати, к схеме можно добавить ещё и +Network, где будет обрабатываться работа с сетью и сокетами (FTP, HTTP и т.д. - кому что надо).

Отредактировано LPG (Дек. 3, 2013 16:33:02)

Офлайн

#5 Дек. 3, 2013 16:30:55

4kpt_II
От: Харьков
Зарегистрирован: 2013-10-24
Сообщения: 999
Репутация: +  58  -
Профиль   Отправить e-mail  

Структура проекта на Python

А Вы кроме PyQt другие GUI использовали?

Офлайн

#6 Дек. 3, 2013 16:36:18

LPG
Зарегистрирован: 2013-09-10
Сообщения: 7
Репутация: +  0  -
Профиль   Отправить e-mail  

Структура проекта на Python

4kpt_II
А Вы кроме PyQt другие GUI использовали?
Нет, не использовал. Сразу ознакомился с Tk, затем с Qt и отдал предпочтения последнему. До сих пор Qt оправдывает мои надежды.

Офлайн

#7 Дек. 3, 2013 16:49:06

4kpt_II
От: Харьков
Зарегистрирован: 2013-10-24
Сообщения: 999
Репутация: +  58  -
Профиль   Отправить e-mail  

Структура проекта на Python

Извините. Но тогда Вам не с чем сравнивать…
Я использую Tkinter и он полностью оправдывает МОИ надежды. Как нам быть?
PyQt показалася мне чересчур перегруженным. Да и возможность размещения виджетов вручную по моему мнению сильно отупляет будущих разработчиков.

Я намекаю на то, что PyQt не из мира python. Поэтому для новичков это будет не совсем то. Хотя мне, если честно, все равно. На понимание концепций проектирования это никак не влияет.

Я, если честно, не против. Только выкладывать свой код не буду. Я использую классический подход к определению и проектированию абстракций о котором можно прочитать в 90% книг по объектно-ориентированному проектированию. Просто не вижу в этом смысла.

P.S.

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

Офлайн

#8 Дек. 3, 2013 17:09:22

LPG
Зарегистрирован: 2013-09-10
Сообщения: 7
Репутация: +  0  -
Профиль   Отправить e-mail  

Структура проекта на Python

4kpt_II
Извините. Но тогда Вам не с чем сравнивать…
Так я в общем-то и сравнил. Только сделал это до того, как начал изучать и тренироваться.
4kpt_II
размещения виджетов вручную
Не надо ничего вручную размещать. Есть же компоновщики, Qt Designer в конце концов - кому что нравиться. Вы, видимо, сами не сравнили ?!
4kpt_II
выкладывать свой код не буду
Я имел в виду сокращённый (неполный) код, чтобы более наглядно, нежели на словах, показать что-куда ссылается, что-откуда импортируется и т.д. Детальный код Вашей программы конечно же никому не нужен.
4kpt_II
Новичкам нужно книги читать, если они хотят перестать быть новичками.
Помимо чтения книг (без этого никак) и официальной документации (без этого вообще никак), новичкам надо сразу брать для реализации пример небольшого проектика и пытаться его допилить - от одних книг понимания программирования не придёт. Это всем известно. Всё делается путём проб и ошибок. Причём, большинство учится именно на своих ошибках…

Я надеюсь, что вариантов шаблонов структур проектов будет не так много (принимая во внимание плагиат) и данный пост достигнет своего логического конца…

Офлайн

#9 Дек. 3, 2013 17:16:58

4kpt_II
От: Харьков
Зарегистрирован: 2013-10-24
Сообщения: 999
Репутация: +  58  -
Профиль   Отправить e-mail  

Структура проекта на Python

LPG
Я надеюсь, что вариантов шаблонов структур проектов будет не так много (принимая во внимание плагиат) и данный пост достигнет своего логического конца…

Я думаю, их не будет вообще

LPG
Помимо чтения книг (без этого никак) и официальной документации (без этого вообще никак), новичкам надо сразу брать для реализации пример небольшого проектика и пытаться его допилить - от одних книг понимания программирования не придёт. Это всем известно. Всё делается путём проб и ошибок. Причём, большинство учится именно на своих ошибках…

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

Я не спорю. Просто богатый опыт в обучении…

LPG
Я имел в виду сокращённый (неполный) код, чтобы более наглядно, нежели на словах, показать что-куда ссылается, что-откуда импортируется и т.д. Детальный код Вашей программы конечно же никому не нужен.

Книг Вы тоже не открывали. В основном используется UML для описания паттернов и концепций. Там все и без кода понятно. Даже легче, чем с кодом




Офлайн

#10 Дек. 3, 2013 17:38:27

LPG
Зарегистрирован: 2013-09-10
Сообщения: 7
Репутация: +  0  -
Профиль   Отправить e-mail  

Структура проекта на Python

4kpt_II
Просто богатый опыт в обучении…
Сильно сомневаюсь! Зачем самому плодить и провоцировать других на никому ненужный флейм? Пишите по делу. Нечего писать - не пишите. Это раздел для новичков. И я новичок в том числе. Хотелось бы получить здесь всё же полезную информацию…

Офлайн

Board footer

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

Powered by DjangoBB

Lo-Fi Version