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 :: Первые шаги в ООП [2]

 PHP.SU

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


 Страниц (3): « 1 [2] 3 »   

> Описание: ООП первые шаги .
caballero
Отправлено: 10 Июля, 2012 - 22:53:48
Post Id


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


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


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




Цитата:
Если внимательно прочитать пост , то там было написано понять логику построения ООП

нельзя понять логику где ее нет
Цитата:
Товарищ caballero , вы про меня не забыли ? или тролинг ваше признание ?

Ну что ты - я даже отпуск взял чтобы от тебя не отвлекатся на всякие дела
Цитата:
так понял на данном форуме точно не кто не поможет ?!

Ни на каком не помогут

Если тебе до сих пор не понадобились объекты то и ООП пока тебе не нужно.
ООП - это не тупой набор классов и объектов. И не некое сакральное знание доступное избранным жрецам.
Это парадигма програмирования и сооьетственно стиль мышления.
Чтобы програмировать в таком стиле нужно понимать где нужны объекты, что они должны делать как взаимодействовать а не смотреть на какие то классы и пытатся слепить по образу и подобию. То есть не ставить телегу впереди лошади.
Забудь про наследование , полиморфизм и прочие фишки. Основа ООП - инкапсуляция. Прежде чем начать писать код подумай какой объект тебе нужен , что он будет делать какие задачи решать, что будет инкапсулировать объект данного класса. Мало ли что там налепили индусы в фрейморках и CMS.


-----
Бесплатная система складского учета с открытым кодом https://zippy[dot]com[dot]ua/zstore
 
 Top
digi
Отправлено: 11 Июля, 2012 - 06:52:54
Post Id


Посетитель


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


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




Bio man пишет:
Вот пример контроллера из моего одного проекта, причем одного из самых легких


неудачный пример ;)) в контроллере недолжно быть запросов в бд, следует запрашивать данные у "модели", а логики запросов должна быть в ней ;)

также некрасиво передаётся $iPage, его лучше получать через параметр метода.

еще стороннему программисту очень непонравилось бы странные названия, например $this->_rView ;)

у вас возвращается рендеринг, а где задаются HTTP заголовки?
 
 Top
Toxa
Отправлено: 11 Июля, 2012 - 07:59:50
Post Id



Посетитель


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


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

[+]


Вот тут наверное все родились <cencored> программистами и никто ничего не изучал никогда по ходу.

Человек просит о помощи, а то что вы ему отвечаете, скорее похоже на советы бросить программирование, чем помощь в конкретном вопросе.

ООП в php применять довольно сложно, это не объектно ориентированный язык как, скажем, java.
Я помню как мне тоже было сложно найти правильное применение ООП в php.
В свое время мне помогли вот эти ссылки:

http://chtivo[dot]webhost[dot]ru/articles/mvc.php
http://habrahabr[dot]ru/blogs/php/31270/
http://dron[dot]by/post/patterny-sha[dot][dot][dot]-v-php-vvedenie/
http://job-blog[dot]bullgare[dot]ru/2009[dot][dot][dot]1%8F-%D0%B2-php/


Отредактировано администратором: EuGen, 11 Июля, 2012 - 08:40:25
Устное предупреждение - на конференции мы не употребляем ненормативную лексику.


-----
Удобный сервис для хранения файлов
 
 Top
oknoza
Отправлено: 11 Июля, 2012 - 08:16:12
Post Id


Новичок


Покинул форум
Сообщений всего: 15
Дата рег-ции: Июль 2012  


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




Ну вот уже пошёл нормальный разговор , выложили код контроллера и оказываеться что не так делал . Радость
caballero
Покажите свой ? кодик .
(Добавление)
Toxa
Спасибо ! я уже привык к данным ответам Ха-ха когда только начинал изучение PHP .
 
 Top
Stierus Супермодератор
Отправлено: 11 Июля, 2012 - 08:48:31
Post Id



Рекордсмен по количеству сообщений за 7 дней


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


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




oknoza, ООП обычно учат, читая книжки по java. Пусть язык другой, но он в чистом виде ООП, по-другому там просто невозможно работать. После понятия сути ООП можно пробовать его переносить на php. ООП - это методология программирования, она говорит о том, как правильно дробить приложение на логические блоки, как их связывать, выстраивать логику, что от чего должно зависеть, а что - нет ... причем все это в виде советов и примеров лучших практик, для одной задачи есть несколько решений, причем каждое из них в каких-то случаях чем-то лучше, чем-то хуже. Учить ООП, спрашивая, как реализовать контроллер на php - равносильно попытке стать архитектором, спрашивая, из чего вам печку в бане собрать.

ps
Все придет с опытом, старайтесь задавать конкретные вопросы, касающиеся конкретных проблем - тогда будете получать грамотные ответы от грамотных специалистов, а не флуд на 2 страницы от таких же новичков, как и вы.
 
My status
 Top
oknoza
Отправлено: 11 Июля, 2012 - 09:19:42
Post Id


Новичок


Покинул форум
Сообщений всего: 15
Дата рег-ции: Июль 2012  


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




Stierus
Я с вами согласен , я выложил код , так мне сказали что это лажа .
P.S Ну понятно что это супер код , просто хотелось понять правильно иду туда или нет . Сейчас Toxa дал ссылки там не плохо все расписано , читаю и вкуриваю . Улыбка
А по поводу конкретных вопросов , нужно понимать чтобы правильно задать вопрос . А если я даже пока не понимаю для чего контроллер и тд. ? вот и от туда такие вопросы. Сейчас читаю и вкуриваю логику всего происходящего .

Так::Мысли в слух . - Даже создал тему но всё равно помогли как не крути .
 
 Top
EuGen Администратор
Отправлено: 11 Июля, 2012 - 09:26:19
Post Id


Профессионал


Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007  
Откуда: Berlin


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




Попробуйте изучить Урок №19 (и комментарии пользователей к нему) - возможно, Вам будет полезно, там начальный уровень дан.


-----
Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
 
 Top
digi
Отправлено: 11 Июля, 2012 - 09:26:27
Post Id


Посетитель


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


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




oknoza, вот тут http://fabien[dot]potencier[dot]org/arti[dot][dot][dot]omponents-part-1 отличный цикл статей "Как создать свой фреймворк" Улыбка)


UPD: еще вот хорошая статья http://symfony-gu.ru/documentation/ru/html/book/from_flat_php_to_symfony2.html, показывающая эволюцию от плоского кода в MVC, а затем и в фреймворк.

(Отредактировано автором: 11 Июля, 2012 - 09:31:38)

 
 Top
Stierus Супермодератор
Отправлено: 11 Июля, 2012 - 09:33:13
Post Id



Рекордсмен по количеству сообщений за 7 дней


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


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




Посмотрите исхордники известных фреймворков - Yii, Symfony2, Zend Framework - там ООП код, по-настоящему ООП, чем-то хорош, чем-то плох, но это результат работы профессиональных, опытных программистов. Чужой код (чужой хороший код) - лучший учебник Улыбка

По поводу на почитать - моя первая книга была http://www[dot]biblio-globus[dot]us/desc[dot][dot][dot]roduct_no=476868 - довольно неплохо мысли в нужную сторону направляет. Еще очень неплохая книга - http://progbook[dot]ru/technologiya-[dot][dot][dot]ktirovaniya[dot]html

зы
Цитата:
я выложил код , так мне сказали что это лажа .
Код, действительно, лажа Улыбка
 
My status
 Top
oknoza
Отправлено: 11 Июля, 2012 - 09:35:26
Post Id


Новичок


Покинул форум
Сообщений всего: 15
Дата рег-ции: Июль 2012  


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




digi
До создания своего фреймворка еще долеко . А вот разобраться от лёгкого и тд. по ступени это как раз +5 .
P.S Спасибо ссылок сейчас много , больше не нужно пока . Будем усваивать пока какой есть материал .
(Добавление)
Stierus
Говорят kohana не плохой , и в изучение тоже не плох .
(Добавление)
Stierus
CODE (htmlphp):
скопировать код в буфер обмена
  1. Код, действительно, лажа

Так это я и сам знаю , просто я разбил логику . Мне хотелось понять так сделал или нет .
 
 Top
Stierus Супермодератор
Отправлено: 11 Июля, 2012 - 09:37:22
Post Id



Рекордсмен по количеству сообщений за 7 дней


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


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




kohana легкий для понимания, но не сказал бы, что я хотел бы писать так, как написан кохана ... для новичка, может, действительно, неплохой вариант для начала
(Добавление)
oknoza, стукнись в лк если хочешь свой код обсудить, тут не буду разводить флуд Улыбка
 
My status
 Top
caballero
Отправлено: 11 Июля, 2012 - 09:44:12
Post Id


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


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


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




Цитата:
ООП в php применять довольно сложно, это не объектно ориентированный язык как, скажем, java.

ООП в PHP неполноценный но применять его никакаих сложностей нет.

Цитата:
Я помню как мне тоже было сложно найти правильное применение ООП в php.

Уверен что ты его не нащел и сейчас. Просто потому что не там искал.
ООП оно не в PHP и не где либо еще - это стиль програмирования, то есть стиль решения задач.


Цитата:
А если я даже пока не понимаю для чего контроллер

Об этом и речь. как можно програмировать не понимая что. Найди такой
объект который ты понимаешь что должен делать, тогда написать для него класс не составит труда.


-----
Бесплатная система складского учета с открытым кодом https://zippy[dot]com[dot]ua/zstore
 
 Top
digi
Отправлено: 11 Июля, 2012 - 09:48:39
Post Id


Посетитель


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


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




oknoza пишет:
Говорят kohana не плохой , и в изучение тоже не плох .
, спор о фреймворках это холивар ;)) но если у вас есть цель по настоящему серьёзно научитья и профессионально работать с РНР, то у вас только один путь - это Symfony2, а остальные каркасы это просто можно глянуть для общего развития, чтобы самостоятельно убедиться на сколько симфони совершенен, а остальные каркасы уже смотрятся блекло на фоне сф2 ;)

вот ссылка на статистику популярности https://github[dot]com/languages/PHP

разумеется везде есть своя ниша, вполне возможно для некоторых задач лучше применить тотже Slim, Silex, Laravel и т.д., но всё серьёзное, уже только сф2 ;)
 
 Top
Stierus Супермодератор
Отправлено: 11 Июля, 2012 - 09:55:21
Post Id



Рекордсмен по количеству сообщений за 7 дней


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


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




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

ps
продолжать этот холивар не буду Улыбка
 
My status
 Top
caballero
Отправлено: 11 Июля, 2012 - 09:56:48
Post Id


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


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


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




Цитата:
, спор о фреймворках это холивар ;)) но если у вас есть цель по настоящему серьёзно научитья и профессионально работать с РНР, то у вас только один путь - это Symfony2,

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


-----
Бесплатная система складского учета с открытым кодом https://zippy[dot]com[dot]ua/zstore
 
 Top
Страниц (3): « 1 [2] 3 »
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Объектно-ориентированное программирование »


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



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

 
Powered by ExBB FM 1.0 RC1. InvisionExBB