Форум программистов, компьютерный форум, киберфорум
PHP: ООП
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
25 / 25 / 4
Регистрация: 21.10.2012
Сообщений: 391
1

Совет

17.08.2013, 00:29. Показов 1032. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Доброго времени суток. Посоветуйте хороший материал на тему Объектно Ориентированного Программирования. Статьи, книги, видеоуроки и прочее. Буду благодарен!
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
17.08.2013, 00:29
Ответы с готовыми решениями:

нужен совет
Здравствуйте В этом году нужно делать дипломный проект сейчас уже надо выбрать то, что буду...

Нужен технический совет
Здравствуйте, может быть вопрос не в той теме, но не знаю куда обратиться, подскажите пожалуйста...

Обработка формы, совет
Добрый день! Насколько некорректной будет следующая реализация? Допустим в представлении у меня...

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

3
601 / 468 / 73
Регистрация: 22.01.2009
Сообщений: 1,180
Записей в блоге: 1
17.08.2013, 01:28 2
вы с таким уважением относитесь к этому термину, все с большой буквы... тогда
Цитата Сообщение от M1lleniuM Посмотреть сообщение
Совет
посмотрите функциональное и логическое, сначала. В ооп вникать дольше, а когда привыкните, уже сложно будет думать как-то по другому. В то же время недостаточно хорошо формализованная система.
ПС. по теме -- книга Гамма, Хельм и др., нагуглите по запросу "банда четырех книга ооп скачать"
потом Мартин "Совершенный код", Фаулер "Экстремальное программирование" и др.
0
25 / 25 / 4
Регистрация: 21.10.2012
Сообщений: 391
18.08.2013, 22:31  [ТС] 3
Цитата Сообщение от NEbO Посмотреть сообщение
ПС. по теме -- книга Гамма, Хельм и др., нагуглите по запросу "банда четырех книга ооп скачать"
потом Мартин "Совершенный код", Фаулер "Экстремальное программирование" и др.
Простите, что очень долго отвечал) Так вот, увидев предисловие книги Гамма я немного опешил. Мне бы что-нибудь, от чего можно оттолкнуться, начать изучение Объектно Ориентированного Программирования. Есть ли что-то вроде этого?

P.S.

Цитата Сообщение от NEbO Посмотреть сообщение
вы с таким уважением относитесь к этому термину, все с большой буквы... тогда
Надо уважать то, что пытаешься изучить)
0
601 / 468 / 73
Регистрация: 22.01.2009
Сообщений: 1,180
Записей в блоге: 1
18.08.2013, 23:22 4
Книга "банды четырех" читается довольно легко, имхо... Рассматривают на примерах... Все не обязательно сразу, достаточно первой части, там где разработку редактора рассматривают там весьма прикольно, и подробно объясняется.
Ну если совсем ничего не понятно, то посмотрите что-то по синтаксису классов в Си++, вначале. Просто чтоб "въехать", что делает new, delete, как классы описывать. Что такое абстрактные классы, виртуальные методы, наследование, инкапсуляция -- это есть в любом справочнике по си++.
Говорю про Си++ потому что по пхп книги хорошие даже если и есть, то я о них не знаю. А с плюсов до пхп один шаг, и тем более уж обобщенные концепции ООП, они применимы и в джаве, и в питоне, и в других языках. Си++ очень похож на php, проще всего перейти с него, да и язык более продуман концептуально и более логичен в общем плане (начав изучение с пхп, вы обрекаете себя на заучивание сразу множества его, так сказать, "особенностей", исключений из правил, а не на самом алгоритме программы). Перенести плюсовую модель на пхп гораздо проще. Да и вообще, тяжело в учении -- легко в бою.
В конце концов, не хотите плюсы, возьмите делфи, он тоже неплох, и в нем все это есть.
В любом случае, базой являются понятия: инкапсуляция, полиморфизм, наследование, позднее связывание, интерфейсы. Множественное наследование (особенность си++), published-свойства (delphi), и прочее -- это особенности конкретных языков, на них можно не обращать внимания. Ну и вообще, если что-то непонятно... Читайте Гамму, и постепенно разбирайтесь, ищите понятия в справочнике. Чтобы понимать смысл предложений
А на пхп многие паттенры теряют свой смысл, и ведут только лишь к потере производительности. Из-за того, что язык динамический, до сих пор отсутствует нормальный jit-компилятор, с производительностью у него и так туго, так тут еще и это ООП. Имхо, метапрограммирование, которое при желании можно реализовать самостоятельно, даст чуть ли не большую гибкость, и в то же время практически без потерь производительности. А при наличии знаний из книги дракона, и умению находить сведения по языковой оптимизации, вероятно получится даже ускорить, заинлайнить часть функций.
Ведь помните, что если вы описываете объекты в си++ -- это да, это яблоко, это апельсин, яблоко живет, его можно подвинуть, можно положить в холодильник. Холодильник тоже описан. и имеет ряд свойст и методов...
А в пхп вы создаете всю эту структуру, только чтобы вызвать метод "положить яблоко в холодильник", и все, скрипт завершится. Времени потрачено на инициализацию этой системы -- уйма, на освобождение -- тоже. А полезной нагрузки -- всего пара процентов времени.
Я согласен с термином что если нужна производительность, то разумеется, нужно писать не на пхп. Но блин, тратить 90% времени работы процессора только на инициализацию/освобождение, парсинг, компиляцию (байткод-кеш решает только лишь небольшую часть проблем) -- это как-то чересчур. Имхо, в пхп вообще зря встроили ООП. И тоже имхо, тут больше подойдет stateless-программирование, ибо состояния ну нету в пхп скрипте.
Против фреймворков я не имею ничего против -- это лишь инструменты, созданные в определенных условиях, которые позволяют упростить часть задач. В данном случае по крайней мере у разработчика есть выбор -- удобство или производительность. Хотя, мне кажется, если бы ФП было бы чуть более популярным, можно было бы создать фреймворки с подобным функционалом, без ООП, но работающие гораздо быстрее, при обработке 90% запросов.

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

на самом деле, я просто хотел сказать, чтобы вы не думали, что ООП -- это что-то такое типа магии, супер-пупер какой-то концепции, перевернувшей представление о мире вообще. Это лишь одна из нескольких моделей описания алгоритма, причем лично я в последнее время, после попытки изучения нескольких Java-программ (а они, пожалуй, наиболее объектно-ориентированы), и познакомившись с ФП, понял что AbstractProxyClassFactoryFactory -- это не совсем то направление, которое мне подходит. см. http://habrahabr.ru/post/172119/
0
18.08.2013, 23:22
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
18.08.2013, 23:22
Помогаю со студенческими работами здесь

Нужен совет по удалению левых ссылок
Проверил сайт на наличие внешних ссылок. Нашлось 5 штук. Скачал весь сайт на комп, проверил notepad...

Singleton для PDO. Нужен совет
Ребята, не кидайте помидорами если что. Нужен простой класс БД для работы с PDO. Я создал такой...

Нужен совет по написанию класса валидатора
Привет. Пишу свой велосипед т.е. OOP, MVC фреймворк. В процессе решил не писать проверки в моделе...

Свежие головы,дайте совет по коду
Вобщем,вот в чём вопрос: с утра мучаюсь с отладкой участка кода.уже не знаю,чего он хочет,но...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru