Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Не понимаю ООП [3]

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (8): « 1 2 [3] 4 5 6 7 8 »   

> Без описания
LIME
Отправлено: 13 Марта, 2013 - 19:15:07
Post Id


Активный участник


Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010  


Помог: 322 раз(а)




igosja сам задавался подобным вопросом
понял только начав
и сейчас в процессе понимания
приведу пример:
есть 2 файла robots.txt и .ftpaccess
надо дать к ним доступ из админки
причем с сохранением истории изменений, с записью времени и логина изменившего итд итп и хз что еще
отличия только в пути/имени и титле/надписи в админке
реализуем абстрактный класс со всем ф-аналом
потом наследуем в разных классах только указав в каждом свои св-ва
надо еще файл открыть? не вопрос наследуем...что ? только для юзера васи? не вопрос
переопределяем методы...сначала проверяем юзера потом применяем parent::method()
ну придумал как умел))
как это процедурно лучше сделать сейчас даже не придумаю
по любому больше гимора
 
 Top
digi
Отправлено: 13 Марта, 2013 - 20:34:58
Post Id


Посетитель


Покинул форум
Сообщений всего: 406
Дата рег-ции: Янв. 2012  


Помог: 4 раз(а)




igosja пишет:
Да, извесно. Не могли бы Вы перейти к результирующей части этих распросов.


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

если человек использует композер, то он явно плотно работает с ООП т.е. интесует всёже не "известно", а "пользуешься" ли? ;)

также небыло ответа на счет фреймворков... новычки часто кидаются на CodeIgniter, мотивируя тем что он самый простой и "лёгкий", ну это тоже уже что-то говорит о некотором уровне знаний и навыков ;) если человек уже покрутил Yii это еще интереснее ;)) а если нашел в себе потенциал и освоился с Symfony2, то это уже совсем другой уровень подготовки...
 
 Top
igosja
Отправлено: 14 Марта, 2013 - 08:51:15
Post Id



Гость


Покинул форум
Сообщений всего: 77
Дата рег-ции: Март 2013  
Откуда: https://vhol.org


Помог: 3 раз(а)




Всем спасибо за ответы.
Скажу чесно - понимание пользы ООП не увеличилось ни на грамм, но все равно благодарен.
Судя по всему я не представляю себе целосной картины, а мыслю мелкими кусками кода.

(Отредактировано автором: 14 Марта, 2013 - 08:53:16)

 
 Top
LIME
Отправлено: 14 Марта, 2013 - 08:53:02
Post Id


Активный участник


Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010  


Помог: 322 раз(а)




LIME пишет:
igosja сам задавался подобным вопросом
понял только начав
и не увеличится
 
 Top
armancho7777777 Супермодератор
Отправлено: 14 Марта, 2013 - 08:55:58
Post Id



Активный участник


Покинул форум
Сообщений всего: 4526
Дата рег-ции: Февр. 2011  
Откуда: Москва


Помог: 221 раз(а)




igosja пишет:
понимание пользы ООП не увеличилось ни на грамм

Всё придёт с опытом.
 
 Top
esterio
Отправлено: 14 Марта, 2013 - 11:30:53
Post Id



Активный участник


Покинул форум
Сообщений всего: 5025
Дата рег-ции: Нояб. 2012  
Откуда: Украина, Львов


Помог: 127 раз(а)




igosja пишет:
а мыслю мелкими кусками кода.

Мислить нужно интерфейсами а не реализацией.
 
 Top
Roni
Отправлено: 22 Марта, 2013 - 05:12:41
Post Id


Новичок


Покинул форум
Сообщений всего: 30
Дата рег-ции: Нояб. 2011  


Помог: 0 раз(а)




Читаю шаблоны проектирования, но тоже не вижу конкретного применения. Пока использую статические классы, без наследования. Ну максимум класс возвращающий объекты по запросу. Хотя уже так гораздо удобнее чем, без ООП. А вот как писать интерфейсами, не доходит... Попробую написать интерфейс к модулям для страничек... Ниндзя
 
 Top
Vinyl
Отправлено: 22 Марта, 2013 - 08:34:58
Post Id



Частый посетитель


Покинул форум
Сообщений всего: 645
Дата рег-ции: Янв. 2012  
Откуда: Армавир, Краснодарский край


Помог: 15 раз(а)




armancho7777777 пишет:
Всё придёт с опытом
Здравствуйте, armancho7777777. Я помню, тот же вопрос задавал здесь. Так ответы вроде Вашего жутко раздражали Радость Это я сейчас понимаю, что ответ-то верный, а тогда казалось, что ООП это тайна покрытая мраком и никто ею делиться не хочет)

igosja, у меня в арсенале два мною недописанных движка. Первый кагбэ готов, но там говнокода много, он не расширяем толком, + ещё тысяча и один недостаток. А второй просто не дописал, т.к. пропала нужда и свободное время. Когда-нибудь обязательно второй допишу.
Так вот, к чему я это. Первый я начинал писАть в далекие времена, когда Е.Попов был для меня кем-то на уровне Бьёрна Страуструпа. Но главное, как я его начал писать...

Создал файл index.php в корне, в нем написал <?php и начал по мере поступления идей в мозг, их реализовывать. В итоге получил черт-ногу-сломит архитектуру с хрен-че-найди реализацией. Оно-то работает, но когда нужно что-то изменить/доделать/переделать - капец.

А ко второму я подошел серьезнее. Сначала я начал продумывать архитектуру приложения. Я нарисовал на бумаге, что и как у меня будет работать. Схема не из сложных: несколько блоков, соединенных линиями, каждый из которых за что-то отвечает. Один - за пользователей (авторизацию|регистрацию|бан и т.д.), другой - за текущую страницу, третий - за работу модулей, четвертый - за базу данных, и т.д.. Так вот когда есть такой "план", а он должен быть, если Вы собираетесь разрабатывать что-либо более-менее серьезное, то в данном случае как минимум удобно для каждого блока нашей схемы написать класс.

Представьте себе, что Ваш сайт это предприятие. Классы - это работники. И цех - один php-файл, допустим, init.php. В нем работают объекты классов, проходит весь "процесс" работы на более высоком уровне, а все глубинные процессы описаны в самих классах. Это очень удобно. Важно понимать, что класс это не набор функций и переменных, а будущая сущность, которая что-то умеет и обладает какими-то свойствами. Опять же, преимущества становятся очевидными, когда поработаешь над чем-то более-менее крупным. А если ещё и в команде, то сразу видно разницу.

Спойлер (Отобразить)



Сейчас прочитал слова, которые хорошо описывают преимущества ООП

habrahabr пишет:
Вкусив запретного плода расширенного синтаксиса, программисты не остановились и возжелали модульности: ведь это так удобно — вызывать отдельно написанный модуль программы и не вникать в его алгоритм. Главное — это знать как он принимает на вход данные и как возвращает результат.

(Отредактировано автором: 22 Марта, 2013 - 08:48:59)



-----
Пессимисты пользуются die(), оптимисты - exit()
 
 Top
armancho7777777 Супермодератор
Отправлено: 22 Марта, 2013 - 11:12:59
Post Id



Активный участник


Покинул форум
Сообщений всего: 4526
Дата рег-ции: Февр. 2011  
Откуда: Москва


Помог: 221 раз(а)




Здравствуйте, Vinyl!
Тяжело когда только начинаешь, по себе знаю.
Я по началу толком даже не мог понять назначение всяких там переменных и с чем это всё едят ))
Иногда читаю (и "ржу" Радость ) свои первые посты: просто жуть Не понял
А про JS я вообще молчу Радость
 
 Top
Vinyl
Отправлено: 22 Марта, 2013 - 11:17:30
Post Id



Частый посетитель


Покинул форум
Сообщений всего: 645
Дата рег-ции: Янв. 2012  
Откуда: Армавир, Краснодарский край


Помог: 15 раз(а)




armancho7777777 пишет:
Я по началу толком даже не мог понять назначение всяких там переменных и с чем это всё едят ))
Да все ж так же)

armancho7777777 пишет:
А про JS я вообще молчу
А я с js так и не дружу (алерты умею выводить Радость ). Видимо, не для меня клиентская разработка)


-----
Пессимисты пользуются die(), оптимисты - exit()
 
 Top
armancho7777777 Супермодератор
Отправлено: 22 Марта, 2013 - 11:22:23
Post Id



Активный участник


Покинул форум
Сообщений всего: 4526
Дата рег-ции: Февр. 2011  
Откуда: Москва


Помог: 221 раз(а)




Да, отошли мы от темы...

(Отредактировано автором: 22 Марта, 2013 - 11:57:56)

 
 Top
LIME
Отправлено: 22 Марта, 2013 - 11:23:27
Post Id


Активный участник


Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010  


Помог: 322 раз(а)




а может вам в ЛС ?
armancho7777777 удали этот пост
 
 Top
caballero
Отправлено: 22 Марта, 2013 - 11:36:29
Post Id


Активный участник


Покинул форум
Сообщений всего: 5998
Дата рег-ции: Сент. 2011  
Откуда: Харьков


Помог: 126 раз(а)




Цитата:
А я с js так и не дружу (алерты умею выводить ). Видимо, не для меня клиентская разработка)

вот для этого и прдумали жуйквери Улыбка


-----
Бесплатная система складского учета с открытым кодом https://zippy[dot]com[dot]ua/zstore
 
 Top
armancho7777777 Супермодератор
Отправлено: 22 Марта, 2013 - 11:46:36
Post Id



Активный участник


Покинул форум
Сообщений всего: 4526
Дата рег-ции: Февр. 2011  
Откуда: Москва


Помог: 221 раз(а)




.

(Отредактировано автором: 22 Марта, 2013 - 11:59:16)

 
 Top
esterio
Отправлено: 22 Марта, 2013 - 11:51:38
Post Id



Активный участник


Покинул форум
Сообщений всего: 5025
Дата рег-ции: Нояб. 2012  
Откуда: Украина, Львов


Помог: 127 раз(а)




caballero пишет:
вот для этого и прдумали жуйквери

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

(Отредактировано автором: 22 Марта, 2013 - 12:01:37)

 
 Top
Страниц (8): « 1 2 [3] 4 5 6 7 8 »
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Объектно-ориентированное программирование »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB