так вот про MVC. Фреймверк уже представляет из себя готовую структуру, архитектуру? Или из имеющихся функций и классов нужно самому ее создавать.
Минус мне, но никак не могу понять суть фреймверков принипиально. Какая-то тонкая грань отделяет меня от понимания…
Чем фреймворк отличается от CMS (или движка)? Чтобы сделать простейший сайт на CMS, ее разворачиваешь за пару минут и вот тебе готовый базовый сайт.
А как это делается с использованием фреймворков? Правильно ли понимаю, что это уже готовые наборы функций и библиотек, из которых ты собираешь свой сайт? Т.е. в принципе мои коды в какой-то мере это даже больше не движок а именно мой самописный фреймворк?
Какой из них лучше использовать? В свое время попытался почитать про Zend, но было мало литературы на русском, а с английскими мануалами мое обучение еще в разы бы усложнилось и по срокам и по силам.
Не является ли сложность изучения фреймворка пропорциональной сложности доработки существующих движков? Ведь и там и там надо ковыряться, разбираться и изучать документацию?
Вариативность есть, но она не настолько большая. Тем более я в своей таблице фиксирую одинаковые задачи для разных проектов. Разные проекты имеют разную сложность и разные нюансы — согласен. Соответственно, и при планировании очередного проекта, при оценке времени конкретного этапа, я смотрю в таблице среднее время затраты на этот этап и учитываю особенности нового проекта. Тем более что как правило в таблице уже есть схожие проекты и соответственно время этапа можно брать за основу именно из этих схожих проектов. Не забывая и про среднее время, затрачиваемое на этот этап, по итогам всей таблицы. Схема в некоторых моментах расплывчатая, но мне очень помогает. Я очень редко ошибаюсь в расчете времени. И соответственно все этапы могу рассовать по календарю на ближайшие неделю-две. И тогда все под контролем.
Давно для себя применяю такую схему:
1. Выполняя очередной проект, веду хронометраж времени (каким образом конкретизировать не буду, программ много).
2. В итоге за пару лет сформировался большой багаж статистики. Составил таблицу (и постоянно ее дополняю) где отображены разные этапы разных проектов и время, затраченное на них. Хоть все проекты и разные, но этапы в 80% случаев повторяются.
3. При оценке нового проекта, разбиваю его на этапы, смотрю свою таблицу и оцениваю временные затраты. Как писал выше, этапы очень часто бывают аналогичными, поэтому возможно довольно точно оценить временные затраты.
Система очень проста, работает и ОЧЕНЬ помогает.
Одна сложность — приучить себя вести хронометраж. Наверное это не так просто взять да и начать его вести. Я в свое время увлекся методиками тайм-менеджемента, поэтому и ведение постоянного хронометража заняло в моей работе важную роль.
Рекомендую почитать Глеба Архангельского.
Знаю. И знаю как с ними бороться. Но конкретных примеров не разбирал. А тут мне на пальцах показали как это выглядит изнутри.
Например, я знаю какие символы недопустими в передаваемых параметрах, но как применить эти недопустимые символы в «плохих» целях я не знал. Разве что совсем простые примеры.
Тут мне показали как это можно использовать.
И так понял что в дальнейшем автор планирует показать более сложные примеры.
P.S. например для такого использования union я не додумался. А автор мне показал. Теперь буду знать врага в лицо.
Mirrage, а вы новичок в этом деле? Полагаю что нет. Прочтите внимательнее, в заголовке написано "… для начинающих". Поэтому, мне кажется, чтобы объективно рассуждать о чем статья или не о чем, надо быть для начала новичком!
Я вот новичок, и мне статья очень понравилась!
И еще хотелось бы чтобы автор в следующих публикациях уделил время разбору методов борьбы с такими вот штуками. Он конечно говорит что нужно использовать фильтрацию и т.д. и т.п. и про все это в нете можно почитать, про фильтрацию данных и про инъекции. Но мне бы хотелось услышать эти вещи именно от этого автора. Чтобы подробнее были разобраны методы фильтрации.
Статья понравилась. Пусть есть ошибки, пусть примеры не очень корректны. Я так понял что цель — объяснить что к чему В ОБЩЕМ новичкам. Вот мне, человеку озабоченному вопросами безопасности своих сайтов, эта статья очень полезна. Я, конечно, наслышан что такое SQL-иньекции, как с ними можно бороться, но конкретных примеров инъекций не разбирал. А тут все показали на пальцах. Соответственно, мне как НЕ специалисту в вопросах безопастности для общего развития стало это очень полезно. Ну и для практического применения тоже. Надеюсь, что цикл статей продолжится и я научусь еще более эффективно защищать свои программы.
Так у меня есть проверка. Во-первых, некий «список» названий страниц, которые могут быть подгружены таким образом. Если название, которое отсутствует в этом списке, то не прокатит.
Во-вторых, проверка URL на наличие всяких плохих комбинаций.
Я так думал, что способ внедрить посторонний скрипт — это только добавить его код непосредственно в сам шаблон main. Но это же уже другой вопрос.
Или я не прав?
Скажу честно — ты частично прав! Я очень надеялся, скорее даже не на жалось, а на какие-то действительно грамотные и объективные доводы в пользу того, что зря я парюсь! Как видите услышал много мнений и очень разных и очень противоположных. Нашлось много людей, солидарных и находящихся в похожей ситуации. Кажется что не только удалось услышать успокоения в свой адрес и критику, но и своего рода подобный моему крик души у других людей.
Минус мне, но никак не могу понять суть фреймверков принипиально. Какая-то тонкая грань отделяет меня от понимания…
А как это делается с использованием фреймворков? Правильно ли понимаю, что это уже готовые наборы функций и библиотек, из которых ты собираешь свой сайт? Т.е. в принципе мои коды в какой-то мере это даже больше не движок а именно мой самописный фреймворк?
Какой из них лучше использовать? В свое время попытался почитать про Zend, но было мало литературы на русском, а с английскими мануалами мое обучение еще в разы бы усложнилось и по срокам и по силам.
Не является ли сложность изучения фреймворка пропорциональной сложности доработки существующих движков? Ведь и там и там надо ковыряться, разбираться и изучать документацию?
Поэтому пока не показать.
1. Выполняя очередной проект, веду хронометраж времени (каким образом конкретизировать не буду, программ много).
2. В итоге за пару лет сформировался большой багаж статистики. Составил таблицу (и постоянно ее дополняю) где отображены разные этапы разных проектов и время, затраченное на них. Хоть все проекты и разные, но этапы в 80% случаев повторяются.
3. При оценке нового проекта, разбиваю его на этапы, смотрю свою таблицу и оцениваю временные затраты. Как писал выше, этапы очень часто бывают аналогичными, поэтому возможно довольно точно оценить временные затраты.
Система очень проста, работает и ОЧЕНЬ помогает.
Одна сложность — приучить себя вести хронометраж. Наверное это не так просто взять да и начать его вести. Я в свое время увлекся методиками тайм-менеджемента, поэтому и ведение постоянного хронометража заняло в моей работе важную роль.
Рекомендую почитать Глеба Архангельского.
Например, я знаю какие символы недопустими в передаваемых параметрах, но как применить эти недопустимые символы в «плохих» целях я не знал. Разве что совсем простые примеры.
Тут мне показали как это можно использовать.
И так понял что в дальнейшем автор планирует показать более сложные примеры.
P.S. например для такого использования union я не додумался. А автор мне показал. Теперь буду знать врага в лицо.
Я вот новичок, и мне статья очень понравилась!
Во-вторых, проверка URL на наличие всяких плохих комбинаций.
Я так думал, что способ внедрить посторонний скрипт — это только добавить его код непосредственно в сам шаблон main. Но это же уже другой вопрос.
Или я не прав?
Походу у меня уже истерика…