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 Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


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

> Описание: Проба пера - попытка номер два.
tuareg
Отправлено: 12 Ноября, 2011 - 23:25:14
Post Id


Участник


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


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




Да я абсолютно согласен с постом выше.
 
 Top
foozzi
Отправлено: 13 Ноября, 2011 - 14:05:45
Post Id



Посетитель


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


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




огромное спасибище за столь детальное разжеванное объяснение, хотелось бы увидеть статейку по регулярным выражениям...


-----
90% ошибок находятся в полуметре от монитора...
 
 Top
DeepVarvar Супермодератор
Отправлено: 13 Ноября, 2011 - 14:47:51
Post Id



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


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


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




Ну до регулярок нам еще далеко. Нужна последовательность.
Надо вот это дописать. Ато самые интересные моменты и не описаны.

Вот тут по регуляркам хорошо написано: http://php.su/lessons/?lesson_17
 
 Top
EuGen Администратор
Отправлено: 14 Ноября, 2011 - 09:12:06
Post Id


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


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


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




Позволю себе немного критики:
DeepVarvar пишет:
Если вы хотите писать код с помощью ООП, вы просто обязаны придерживаться такого написания кода как показано выше, а именно - отделять логику приложения от вывода результатов пользователю.

ООП - понятие более широкое, и имеет применение не только в веб. Даже на php существуют программы/проекты, которые, к примеру, вообще ничего не выводят.
DeepVarvar пишет:
$result = mysql_query("$query_string") or die(mysql_error());

Я бы заменил хотя бы на:
PHP:
скопировать код в буфер обмена
  1. $result = mysql_query("$query_string") or throw new Exception(mysql_error());

- неудачный пример показывать в статье то, как делать не надо (а именно - писать код, который может прерваться во время выполнения)
DeepVarvar пишет:
Объединение (не процесс объединения, а содружество функций) нескольких методов, которые выполняют один некий тип действий, это и есть - класс.

Нет, это не так. Класс - есть некоторая отдельная самостоятельная сущность. Определение (посылка) неверно, и Вы можете исходя из него получать дальнейшие неверные построения (следствия).
DeepVarvar пишет:
var $name = null;

Рекомендовал бы заменить на

- присваивать null не обязательно (это по желанию) и, кроме того, var - устаревшее объявление.
DeepVarvar пишет:
Если пытаться вызвать метод объекта который еще не создан - произойдет ошибка.

Но на самом-то деле есть __call и иже с ними. Поэтому (если Вы не желаете сразу все рассказывать(за один раз) читателю), можно просто в этом месте умолчать, но не писать о том, что непременно будет ошибка.

Как постскриптум - что же в статье собственно про ООП? Классы - да, про объекты - что-то, про методы - тоже. Но это не ООП.


-----
Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
 
 Top
Stierus Супермодератор
Отправлено: 14 Ноября, 2011 - 09:48:16
Post Id



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


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


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




Просьба к автору переименовать статью в что-то вроде "мое видение классов в php", к нормальной работе с классами и, тем более, ООП, она отношения не имеет.
 
My status
 Top
Самогонщик
Отправлено: 14 Ноября, 2011 - 09:59:50
Post Id



Посетитель


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


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




Тут нужно бы сказать, что ООП вообще не завязан на классы, а классы это способ реализации.

И да, класс обычно описывает объект, и самый сложный вопрос понять какой именно объект он описывает и как правильно выделять объекты для описания. Обычно это делается так: мне нужен объект, который будет *варить мне кофе*.

EuGen пишет:
DeepVarvar пишет:
Объединение (не процесс объединения, а содружество функций) нескольких методов, которые выполняют один некий тип действий, это и есть - класс.

Нет, это не так. Класс - есть некоторая отдельная самостоятельная сущность. Определение (посылка) неверно, и Вы можете исходя из него получать дальнейшие неверные построения (следствия).

Я бы тут выделил две мысли: техническая(механическая) реализация класса и концептуальная. Первая очень важна и позволяет просто написать класс, хоть и не правильный, кривой, но работающий. Понимание чем отличается класс от объекта (экземпляра класса) должно привиться на первых парах. А вот концепцию уже можно рассказывать как выделяются объекты, как они создаются и т.д. Но правильно определение дать нужно.

Класс это описание объекта *много текста*. Класс реализуется как описание данных и функций *много текста*.
 
 Top
DeepVarvar Супермодератор
Отправлено: 14 Ноября, 2011 - 14:37:54
Post Id



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


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


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




Бла бла бла...
Даже не буду копировать ваши изречения и отвечать на них..
Просто повторю еще раз что загромождать не понимающую голову новичка вашими терминами сходу да в горячую воду - он ничего не поймет. Вообще..
Все что вы щас наотмечали нужно описывать в дальнейшем.
Более того некоторые моменты были обсуждены в комментариях с пользователем tuareg.

Я то вас понимаю - они, нет.. Где последовательность?
Хотите я вас нагружу сейчас радиотехническими терминами или музыкальной гармонией?
Кто из вас знает (хотябы) что такое двойная доминанта или корреляционный прием?
 
 Top
EuGen Администратор
Отправлено: 14 Ноября, 2011 - 14:51:07
Post Id


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


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


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




DeepVarvar пишет:
двойная доминанта

Во-первых, какое отношение имеет композиторская/музыкальная тематика к программированию?, равно как и
DeepVarvar пишет:
корреляционный прием?

физика случайных процессов
- если Вы дадите мне аргументированный ответ, будем считать это недоразумением. В противном случае это будет расцениваться как неадекватный выпад по отношению к тем, кто отписался выше. Сказано это так, потому что во-вторых, Вам указали конструктивно, аргументированно обосновав критику, а Вы в ответ
DeepVarvar пишет:
Бла бла бла...
Даже не буду копировать ваши изречения и отвечать на них..

- если Вы размещаете статью, именно статью, то потрудитесь, чтобы она соответствовала действительности. Иначе получится, что новички "вроде бы поймут", а на самом деле произойдет подмена понятий - в лучшем случае, неверная их трактовка - скорее всего, и некорректная/неправильная вообще информация - в худшем случае.
В третьих, если имеет место быть
DeepVarvar пишет:
Я то вас понимаю - они, нет.. Где последовательность?

То Вы бы знали, что для новичков статьи по именно ООП писать нет смысла. И здесь, на php.su, ее нет не потому, что нет знаний/желания/времени.
Просто такая статья - полностью корректная - бессмысленна. Человек либо не понимает ООП - понимания нет/не пришло, либо он его понимает - понимание уже есть/пришло. В первом случае статья ему ничего не даст - он не поймет и так, во втором - статья ему уже не нужна, так как есть понимание.


-----
Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
 
 Top
kappa
Отправлено: 14 Ноября, 2011 - 15:50:05
Post Id



Посетитель


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


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




DeepVarvar
Мне лично было интересно почитать.
Спасибо!
Если будет продолжение, то очень бы хотелось услышать про обработку исключений (Exception) на примере.
 
 Top
DeepVarvar Супермодератор
Отправлено: 14 Ноября, 2011 - 16:05:52
Post Id



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


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


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




EuGen пишет:
аргументированный ответ

Да, есть аргумент. Дело в том, что в свое время читая статьи или учебники мне было сложно понять о чем пишут.
Согласитесь, очень сложно перескочить через ступеньку, все должно быть последовательным.
EuGen пишет:
какое отношение имеет композитроская/музыкальная тематика к программированию?
Никакого. Но и для новичка информация находящаяся выше на несколько ступеней (не сложности, а осознания) - так же никакого.
Она не связана в голове единой картиной. Поэтому непонятна.
То что я раздул на длинную скатерть, можно описать в одном абзаце.
EuGen пишет:
Просто такая статья - полностью корректная - бессмысленна. Человек либо не понимает ООП - понимания нет/не пришло, либо он его понимает - понимание уже есть/пришло. В первом случае статья ему ничего не даст - он не поймет и так, во втором - статья ему уже не нужна, так как есть понимание.
Жесткая правда.

Я преследовал осветить именно сторону реализации.
Люди же знающие и так знают, и в комментариях выше пишут то, что уже было обсуждено еще выше.
Нужно немного внимательнее смотреть что там уже писали.
EuGen пишет:
вроде бы поймут
Я писал именно так, как начинал понимать сам. Зацепился именно за то, что уже понятно и понял еще чуть-чуть.
EuGen смысл есть всегда, один человек уже сказал спасибо. Он понял смысл реализации.
Я не знал что бы вы хотели читать в статье. Я знал что хотел читать новичек.
Я в статье дал ложную информацию? Нет. Она всего лишь не целостна. А меня размыливают как котенка. Радость
 
 Top
Stierus Супермодератор
Отправлено: 14 Ноября, 2011 - 16:20:03
Post Id



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


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


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




Сформулирую вопрос Евгена более грубо: Ты уверен, что сам понимаешь все правильно и этой статьей не вводишь новичков в заблуждение?

Еще раз повторю свою просьбу - переименуй статью Улыбка Она к ООп не имеет ни малейшего отношения, даже про классы рассказывает не так, как есть на самом деле (как следует делать на самом деле), ООП даже мельком не задето ... да и не может быть задето.
 
My status
 Top
EuGen Администратор
Отправлено: 14 Ноября, 2011 - 16:20:36
Post Id


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


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


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




Дело не в размыливании.
Ваши аргументы (касаемо музыки с физикой) частично приняты, забудем.
Моя позиция заключается в том, что бессмысленно делать попытку объяснить ООП для новичков. Это те самые ступеньки, про которые Вы сказали.
Ведь нельзя же, право, пытаться дать понимание, например, интеграла с переменным верхним пределом для учеников 5-го класса. Не поймут. Но писать им, например, ряд для первообразной (то есть по факту банальное сложение), находя его численно для некоторых значений верхнего предела - и потом называть это интегралом с переменным верхним пределом - неверно. Да, они поймут формулу, так как там только сложение. Они поймут как вычислять этот интеграл для определенных случаев. Но понимания что же это такое - у них не будет. Хуже того, они будут думать, что у них это понимание есть, однако по факту это будет не правдой. Вот как можно на примере высказать мою мысль.
DeepVarvar пишет:

Я преследовал осветить именно сторону реализации.

Так Вы осветили просто реализацию классов в PHP, в отрыве от ООП. Просто - наподобие синтаксического обзора с элементами того, где это можно удачно применить. Это ведь не ООП.
Я против подмены понятий, только и всего. Это я говорю как комментарий к:
DeepVarvar пишет:
Я в статье дал ложную информацию? Нет. Она всего лишь не целостна

- пусть и косвенно, но Вы дали некорректную инормацию.

Stierus пишет:
Еще раз повторю свою просьбу - переименуй статью

Это могут сделать только модераторы данного раздела или супермодераторы.


-----
Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
 
 Top
Самогонщик
Отправлено: 14 Ноября, 2011 - 16:29:54
Post Id



Посетитель


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


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




DeepVarvar пишет:
Объединение (не процесс объединения, а содружество функций) нескольких методов, которые выполняют один некий тип действий, это и есть - класс.
Вот с этим я люто бешено не согласен. Нельзя давать неверные определения, а если на них ссылаться будут?

Вот если было бы написано, что класс это описание объекта, а такое описание на пхп представляет... и далее то что в цитате, тогда было бы нормально.
 
 Top
DeepVarvar Супермодератор
Отправлено: 14 Ноября, 2011 - 18:25:02
Post Id



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


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


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




Stierus пишет:
переименуй статью

EuGen, переименуйте, я не против. Назовем это обзором... ну скажем "ООП рядом".
Статью я подредактирую - отойдем от конкретики, оставим ключевые моменты.
Самогонщик пишет:
Вот с этим я люто бешено не согласен. Нельзя давать неверные определения, а если на них ссылаться будут?

DeepVarvar пишет:
Объект, это то что мы описали в классе. Т.е. класс это прототип будущего объекта. Сперва мы описываем класс с его методами и свойствами, а затем создаем объект на основе описанного класса

EuGen пишет:
Моя позиция заключается в том, что бессмысленно делать попытку объяснить ООП для новичков.
Да, я свами согдасен. Но мы снова упираемся в эти самые "ступеньки", к тому же еще и "углы" из-за которых не видно что же там в ООП есть. Однако без практических примеров, хотябы даже таких вот "абстрактных" дело с мертвой точки даже не сдвинется.
Stierus пишет:
Ты уверен, что сам понимаешь все правильно и этой статьей не вводишь новичков в заблуждение?
Я понимаю не все, но многое. Опыт мал.
Однако, задайте мне более конкретный вопрос по данной тематике, дабы убедиться что в глубокое заблуждение я новичка вводить не собираюсь.
Поверьте, уж такого желания точно нет.
 
 Top
Самогонщик
Отправлено: 14 Ноября, 2011 - 19:13:01
Post Id



Посетитель


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


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




Прочитал внимательнее, осталось ощущение, что написано как то не так: прыжки с класса на объект и обратно. И получается, что первичен класс, а не объект. Этот момент нужно более чётко прописать к статье, имхо.

(Отредактировано автором: 14 Ноября, 2011 - 19:13:48)

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


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



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

 
Powered by ExBB FM 1.0 RC1. InvisionExBB