Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Разное

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Большие проекты
 
 автор: Mookapek   (06.12.2012 в 00:43)   письмо автору
 
 

Вопрос навеян последними темами из php-форума:
какие преимущества ООП в Php? http://softtime.ru/forum/read.php?id_forum=1&id_theme=87151
Проектировка сайта (портал) http://softtime.ru/forum/read.php?id_forum=1&id_theme=88179

Там была затронута тема больших проектов, так вот мне стало интересно, что вкладывается в термин большой проект применительно к web-сфере. Каким функционалом должен обладать проект, чтобы его можно было назвать большим?

  Ответить  
 
 автор: cheops   (06.12.2012 в 07:18)   письмо автору
 
   для: Mookapek   (06.12.2012 в 00:43)
 

Функционал может быть любой вплоть до вывода "Hello world", главным в больших проектах является масштабируемость, т.е. возможность добавлять сервера, мощности, для обслуживания возрастающей базы клиентов (это касается и Web-серверов и серверов базы данных).

  Ответить  
 
 автор: Mookapek   (06.12.2012 в 23:39)   письмо автору
 
   для: cheops   (06.12.2012 в 07:18)
 

> возможность добавлять сервера, мощности...
Эта возможность заключается в наличии денег на n-ое количество серверов и прочего железа?

  Ответить  
 
 автор: cheops   (07.12.2012 в 07:19)   письмо автору
 
   для: Mookapek   (06.12.2012 в 23:39)
 

Это само собой разумеется. Однако n-ое количество серверов сами по себе работать не будут, как в 16-ядерном процессоре будет работать лишь одно ядро, если у вас ПО не поддерживает работу с многоядерными процессорами (скажем в случае MySQL). Многие проекты, которые создаются в течение года-двух, рассчитываются на виртуальный хостинг или выделенный сервер. Когда же необходимо обслуживать десятки тысяч клиентов оказывается, что систему невозможно масштабировать за пределы выделенного сервера. Нужно дополнительное время, чтобы перепроектировать и переписать её заново. Хотя казалось бы вот она готовая система, запускай и начинай извлекать прибыль.

  Ответить  
 
 автор: Mookapek   (11.12.2012 в 00:17)   письмо автору
 
   для: cheops   (07.12.2012 в 07:19)
 

На самом деле этот вопрос (большой проект) меня интересовал больше с точки зрения программирования. Хотелось бы разработать какой-нибудь амбициозный web-проект. Чтобы повысить свой уровень программирования, не размениваясь по мелочам, так сказать. А если еще и польза для пользователей интернета будет, то вообще замечательно. Есть же, например, амбициозные задачи в программировании не для web. Вот вашу цитату приведу про компьютерные игры:
Игра - это очень амбициозная программистская задача, выжимающая из машины все, что можно. Пожалуй только операционные системы и базы данных являются более впечатляющими проектами, чем игровые.

  Ответить  
 
 автор: cheops   (11.12.2012 в 07:23)   письмо автору
 
   для: Mookapek   (11.12.2012 в 00:17)
 

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

  Ответить  
 
 автор: Mookapek   (11.12.2012 в 20:05)   письмо автору
 
   для: cheops   (11.12.2012 в 07:23)
 

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

  Ответить  
 
 автор: Владимир55   (06.12.2012 в 13:21)   письмо автору
 
   для: Mookapek   (06.12.2012 в 00:43)
 

Осмелюсь добавить свое определение понятия "Большой проект".

На мой взгляд, Большой проект - это такой проект, над которым работает несколько специалистов различных направлений, связанных единой целью. Причем, это не только программисты разного профиля, но и другие специалисты. Именно необходимость делить задачу на части и обеспечить их последующую интеграцию в работоспособный проект накладывает отпечаток на деятельность каждого участника проекта.

А вообще, тема больших проектов лично меня весьма интересует.

  Ответить  
 
 автор: Sfinks   (06.12.2012 в 14:33)   письмо автору
 
   для: Mookapek   (06.12.2012 в 00:43)
 

Что такое проект? И в чем измеряется его размер?
В мегабайтах? В функционале? В человекоднях?
По-моему все это относительно.
Любое определение БОЛЬШОГО проекта будет относительным.

Вот я сейчас занимаюсь одним проектом....
В чем его суть - управление товарооборотом торгового предприятия.
Большой он? По-моему не маленький.
Каким вышеуказанным требованиям он отвечает?

Многосерверный? Сейчас нет. НО... Он разрабатывается и оттачивается на нашем городе, чтобы в дальнейшем быть распространенным на все 9 региональных филиалов. И не исключено, что в этот момент он станет многосерверным.

Много людей над ним работает? Нет. Я один. Я, конечно, общаюсь и сотрудничаю с директором, менеджерами и продавцами.... Но их работа заключается в придумывании какие бы они хотели видеть функции. Даже нормального ТЗ я получить не могу, т.к. они все не представляют что возможно сделать, а что нет. Все моменты приходится вытягивать клещами. Благо есть опыт в торговле и управлении.

Мне кажется самым близким к понятию БОЛЬШОЙ будет определение - "когда не можешь удержать весь проект в голове". Но это опять же зависит от размера головы =) Если исходить из предположения, что у руководителя проекта голова не маленькая, то когда у него перестанет помещаться - можно считать большим.
Но и это пока не так. Пока помещается =)

С другой стороны "проект" - это штука из будущего. Т.е. проект - это стадия реализации. Потом это продукт.

Так вот если на конечном продукте будет висеть работа штата в 1000 человек из 9ти регионов с месячным товарооборотом около 100 млн, можно ли проект этого продукта назвать маленьким?

Но по перечисленным пунктам мой проект не подходит под понятие БОЛЬШОЙ.
Выводы делайте сами =))

  Ответить  
 
 автор: Владимир55   (06.12.2012 в 16:31)   письмо автору
 
   для: Sfinks   (06.12.2012 в 14:33)
 

Пятнадцать человек наполняют товаром интернет-магазин, занося картинки и описания. Это большой проект? Нет. Потому, что все эти люди делают одинаковую работу, и их привлечено много лишь для того, чтобы дело шло быстрее.

Пятнадцать человек создают интернет проект. При этом:
- один работает над структурой;
- три занимаются оптимизацией;
- два работают над контентом;
- три занимаются линейным программированием;
- два занимаются серверной техникой;
- один занимается безопасностью;
- один занимается маркетингом;
- один занимается связями с общественностью;
- один занимается финансированием.

Это большой проект? ОЧЕНЬ большой!

И даже если предположить, что всю эту работу делает один человек (или два), то все равно - это большой проект.

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

Иными словами, группа программистов не просто создаст систему за более короткий срок, она сделает ее иначе, нежели один человек.

Вот это и есть главный признак "Большого" - переход количества в качество.

  Ответить  
 
 автор: ols   (07.12.2012 в 01:48)   письмо автору
 
   для: Sfinks   (06.12.2012 в 14:33)
 

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

Когда разрабатывали 1с, программисты небыли спецами бух., фин. учета. Для этого в проект включают экспертов как раз бухгалтеров, финансистов итд.

Аналогично взять SAP R/3 - позволяет полностью автоматизировать (в отличии от 1с) управление предприятием, это и бухгалтерия и финансы, учет клиентской базы итд, всех модулей не перечесть. тут огромный штат разработчиков. кто-то пишет код, кто-то разрабатывает тех. документацию, другие - эксперты по конкретным отраслям. Владимир верно говорит.
Ориентироваться прежде всего в людских хатратах. Ведь сам по себе движок проекта это инструмент

  Ответить  
 
 автор: Владимир55   (07.12.2012 в 11:43)   письмо автору
 
   для: ols   (07.12.2012 в 01:48)
 

Ориентироваться прежде всего в людских хатратах

Вот это и есть главная проблема!

Я последнее время инспектирую основные CMS: Битрикс, HostCMS и UMICMS. И у меня сложилось мнение, что их делали программисты для программистов. Программисты-разработчики для программистов-сайтостроителей. Причем, ни один из них не вполне понимал, что же нужно тому, кто за все это платит – конечному потребителю.

За последние три месяца по моим замечаниям в этих системах выпущено 12 обновлений. А два функциональных дефекта исправить вообще не смогли, поскольку она проистекали из самой структуры системы…

Сложно, неудобно, ресурсоемко и неэффективно – вот моя итоговая оценка. И все это потому, что у руководства проекта стоял не технолог, а программист.

  Ответить  
 
 автор: CrazyAngel   (07.12.2012 в 16:50)   письмо автору
 
   для: Владимир55   (07.12.2012 в 11:43)
 

Вы смеетесь над нами? вы хелп пользователя битрикс хотя бы читали? простые сайты, каталоги и т.п. на битриксе сможет сделать моя мама. А насчет сложных, на то они и сложные, и то вся менеджмент работа остается на высоте и простая как два пальца.

P.S. И пожалуйста не ставьте на одну полку эти поделки на коленки рядом с битрикс.

  Ответить  
 
 автор: Владимир55   (07.12.2012 в 16:54)   письмо автору
 
   для: CrazyAngel   (07.12.2012 в 16:50)
 

P.S. И пожалуйста не ставьте на одну полку эти поделки на коленки рядом с битрикс.

По некоторым пользовательским параметрам Битрикс им уступает. (Только не спрашивайте перечень).

А вообще, дело не в простоте или в сложности сайта. Речь совершенно о другом.

  Ответить  
 
 автор: CrazyAngel   (07.12.2012 в 17:04)   письмо автору
 
   для: Владимир55   (07.12.2012 в 16:54)
 

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

  Ответить  
 
 автор: Владимир55   (07.12.2012 в 17:44)   письмо автору
 
   для: CrazyAngel   (07.12.2012 в 17:04)
 

ни разу не встречал адекватных уступков битрикса

Все разработчики реагируют совершенно нормально, с благодарностью.

Я вцелом к Битриксу отношусь с большим уважением и всегда, в том числе и на этом форуме, рекомендовал применять именно его.

  Ответить  
 
 автор: cheops   (07.12.2012 в 21:31)   письмо автору
 
   для: CrazyAngel   (07.12.2012 в 17:04)
 

>скажите хотя бы одно)
Ну для начала не следует использовать в стилях визуального редактора классы .title, .l и .r... не от избытка времени, и архитектурной продуманности такие решения принимаются... Очевидно, что для таких вещей, как встраиваемый при помощи JavaScript визуальный редактор нужно вводить свое пространство имен. Очевидно, что эти названия будут в каждой второй верстке... Проблеме 100 лет в обед, давно можно было все переименовать. Время и усилия нескольких разработчиков визуального редактора Bitrix не идут ни в какое сравнение с временем и усилиями, которые приходится тратить клиентам, на уловки и обходы этой проблемы.

  Ответить  
 
 автор: cheops   (07.12.2012 в 21:40)   письмо автору
 
   для: CrazyAngel   (07.12.2012 в 17:04)
 

>скажите хотя бы одно)
mbstring.func_overload=2
Это означает, что на уровне ядра нет абстракции по строковым функциям, а шарашат прямо строковыми функциями... потом, чтобы включить поддержку UTF-8, переопределяют mbstring.func_overload, попутно вырубая целый класс PHP-приложений для всего сервера (mbstring.func_overload не настраивается даже на уровне виртуального хоста) и не какие-то безвестные приложения, а скажем phpMyAdmin.

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

Давайте честно назовем достоинства Bitrix:
- Хорошая документация, которую не нужно писать самому;
- Это продукт 1С, а, следовательно, мощнейшая реклама;
- Платность CMS, клиент заплативший за CMS будет платить в дальнейшем и за разработку;

  Ответить  
 
 автор: Владимир55   (07.12.2012 в 23:27)   письмо автору
 
   для: cheops   (07.12.2012 в 21:40)
 

Добавлю еще: на Bitrix не делают говносайтов, а это значит, что любой сайт на этой CMS автоматически получает плюсик к своей репутации по меркам поисковиков. Причем, жирный плюсик.

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования