Нужен совет профессионалов
8 сообщений
#14 лет назад
Занимаюсь в основном php-mysql программированием. Но время от времени имею дело с созданием сайтов под ключ.Проштудировав несколько учебников по PHP стал замечать что ничего нового в них уже нет

В чужом коде , джумле, оскоммерс и прочих уже довольно успешно работаю\модифицирую\пишу модули. Не так давно стал фрейморками пользоваться.
Но хочется куда то профессионально двигаться, стал задумываться куда дальше.
Вообще интересно как лучше структурировать создаваемое приложение и вообще оптимизировать свою работу для достижения максимальной производительности.
В очередь изучения уже поставил себе книги по jquery, java, ruby и так далее.
Подскажите хорошую книгу\мануал\доки по php где можно изучить что нибудь более сложное чем основы языка и приемы по созданию форума).
к примеру - реализация распределенной базы данных ...или создание поисковой системы


263 сообщения
#14 лет назад
Цитата ("mazx"):...
Вообще интересно как лучше структурировать создаваемое приложение и вообще оптимизировать свою работу для достижения максимальной производительности.
Производительность разработки достигается на этапе выработки требований к программному обеспечению и разработки архитектуры системы. Для существенного ускорения, лучше использовать специализированные CASE системы, но для проектов малого масштаба, стоимость освоения CASE системы может многократно превысить полученный выигрыш, поэтому, до определенного уровня сложности разрабатываемой системы более разумным будет работать "вручную".
Цитата ("mazx"):
В очередь изучения уже поставил себе книги по jquery, java, ruby и так далее.
Это частности. Использование того или иного языка/библиотеки обычно позволяет ускорить какие-то этапы разработки процентов на 10-20%, зачастую, полученный выигрыш теряется на другом этапе разработки. Например, использование библиотеки jquery позволит съэкономить 2-3 человека/месяца, однако если через год разработчик jquery "свернется", то через два года поддержка Ваших программ будет стоить гораздо дороже чем планировалось вначале. Разумеется, на разработчиках это может отразиться самым печальным образом.
Другой пример: когда стало известно, что MySQL AB (разработчик MySQL) покупается SUN Microsystems, очень многие разработчики программного обеспечения крепко задумались, SUN пришлось специально успокаивать пользователей, что, де-мол хуже не будет.
Цитата ("mazx"):
Подскажите хорошую книгу\мануал\доки по php где можно изучить что нибудь более сложное чем основы языка и приемы по созданию форума).
к примеру - реализация распределенной базы данных ...или создание поисковой системы) ...или что нибудь наподобие
)
Вряд-ли есть книги по созданию СУРБД на том или ином языке программирования (особенно php - там просто нет необходимых для того средств). Надо читать книги по теории баз данных, по поисковым системам, по теории языков программирования, по проектированию программного обеспечения.... Например: Дж.Мартин, "Разработка баз данных в вычислительных системах", Д.Кнут "Искусство программирования для ЭВМ" (все три тома), Пратт "Языки программирования, разработка и реализация", по теории объектного проектирования, кажется, Йордан что-то писал, общая теория алгоритмов: "Алгоритмы+Структуры данных=Программы" (не помню автора), ну и разумеется: Брукс "Мифический человеко-месяц или как создаются большие программные комплексы".
8 сообщений
#14 лет назад
Спасибо за развернутый ответ. Как говорится нужно прочитать одну книгу ,но чтобы понять какую придется прочитать тысячи. Начну пожалуй с теории обьектного программирования и общей теории. всеж приходится каждый день иметь с этим дело.
658 сообщений
#14 лет назад
"Производительность разработки достигается на этапе выработки требований к программному обеспечению и разработки архитектуры системы. Для существенного ускорения, лучше использовать специализированные CASE системы," - насколько помню (сам пользовался) CASE системы -для разработки структуры базы данных. Например Erwin. Может что-то изменилось?
263 сообщения
#14 лет назад
Цитата ("mazx"):...Начну пожалуй с теории обьектного программирования и общей теории. всеж приходится каждый день иметь с этим дело.
Объектный подход это просто еще одна из многих попыток как-то увеличить производительность труда и обеспечить какое-то качество программного продукта. Какие-то из этих целей оказались достигнутыми, какие-то - нет. Попытки такого рода делаются постоянно, но - увы - "серебряную пулю" (или "волшебную палочку"

263 сообщения
#14 лет назад
Цитата ("sergannd_snz"):... насколько помню (сам пользовался) CASE системы -
для разработки структуры базы данных. Например Erwin. Может что-то изменилось?
Их (CASE систем) много, на все этапы жизненного цикла программного обеспечения есть свой CASE и, как правило, не один. Какие-то системы хорошо делают одно, какие-то - другое. Например, по моим впечатлениям, DOORS (если он еще жив) очень хорошо подходит для работы с требованиями на продукт, RationalRose - проектирование-кодирование, Bugzilla (чем не CASE система) - этап отладки и сопровождения, была какая-то отдельная система специально для ведения программной документации. CASE систем на рынке очень много, проблема в применимости, стоимости, сложности освоения/внедрения и сопровождения.