здравствуйте, программирую на php без нескольких месяцев год, и пока что не могу точно понят в чём преимущество классов по сравнению с функциями, и почему профессионалы большинстве используют классы?
Объясните пожалуйста доходчиво в чем разница, или может на примере
Это очень глубокий и широкий вопрос. Перефразируя, звучит так: в чем отличие процедурного от объектно-ориентированного программирования?
В первом случае, во главу угла ставится действие, т.е. набор последовательных команд для решения определенной задачи.
В ООП применяется модульный подход, во главе которого стоит объект из реального мира. Т.е. код организован таким образом, что представляет собой набор объектов, каждый из которых решает свою небольшую задачу, а взаимодействуя между собой все эти объекты решают одну общую задачу.
Попытка всё это объяснить на примере PHP
Представим школу.
Ученики это переменные или функции (в классах правильней назвать методами), а школа это Ваш код. Класс объединяет учеников в группы, тоже самое происходит и в коде.
Плодить кучу функций аля gruppa_naznachenie1()
, gruppa_naznachenie2()
не очень удобно.
Тем более можно сделать класс, который будет расширять или изменять возможности другого класса не изменяя его.
Ещё класс удобен тем, что все действия будут происходить внутри него и некоторые ненужные данные не вырвутся дальше него.
А теперь просто зрительно сравним просто процедуры
echo work_func1("blablabla").$work_var1;
и работу с классом
$work = new WorkClass();
echo $work->func1("blablabla").$work->var1;
Также класс ещё много в чём удобен. Я не хочу навязывать Вам какое-либо мнение. Я лично в маленьких проектах работаю процедурно, без мании величия классов. Попробуйте написать что-нибудь с использованием классов и посмотрите - надо это Вам или нет, может когда-то и пригодится.
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Есть файл, в котором обрабатываются данные и есть прокси, который написан для для кросс-доменных запросовФайл, в котором обрабатываются данные,...
У меня в системе есть автоматические задачи при изменении статуса клиента, автоматически ставится задача у которой есть значение "выполнить...
Хочу вывести таблицу с данными в 3 колонки - не получаетсяПрошу помочь
Добрый день,уважаемые форумчане,достался мне недоделанный сайт,прошлый разработчик по желанию заказчика сделал вывод категорий по ID на отдельных...