Зачем нужны функции php ?

Статус
В этой теме нельзя размещать новые ответы.

студент№25

Новичок
помогите новичку понять

обычно в жизни функции используются в структурном программировании для того чтобы не повторять куски кода
пхп-сценарии же сами по себе подобны функциям: js-приложение запускает пхп-скрипт-функцию передавая ей данные и получая обратно данные (в случае ajax-обращения)

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

я понимаю что популярные фреймворки заставляют использовать ооп и функции. и работая в индустрии надо всё это знать и использовать
но если новичку писать простое приложение, без фреймворков, то наверное можно обойтись и без функциий и ооп ?
например js невозможно представить без функций, но вполне можно представить без наследования и замыканий...

пожалуйта приведите простой понятный убедительный пример использования функций и ооп
 
Последнее редактирование:

студент№25

Новичок
То есть по твоей логике в РНР-скрипте никогда невозможны повторяющиеся куски кода?
- пока не могу это вообразить, но это от неопытности и зеленоватости

пхп-скрипт я воспринимаю как функцию-подпрограмму вызываемую из js (в случае ajax-обращения)
соответственно - зачем функции в функциях ?

обычно функция это подпрограмма, то есть отдельная программа которая вызывается из основной программы
в пхп нет такого - есть одна короткая скоротечная программа которая выдает текст и сохранет/читает данные на диске
 
Последнее редактирование:

студент№25

Новичок
студент№25, пиши свой php, без функций
я просто пытаюсь осмыслить то что пока вычитал в учебниках - дабы понять ядро языка и архитектуру

пхп мне кажется сверх простым, но с дополнительными ненужными усложнениями типа ооп
поэтому надо понять что вынуждает людей усложнять простое, кроме привычки писать всё колассами как в жаве или плюсах

в js понятно что классы не нужны, но люди хотят...
поэтому ученику надо понять где хардкор-ядро и где сахар
 
Последнее редактирование:

c0dex

web.dev 2002-...
Команда форума
Партнер клуба
но если новичку писать простое приложение, без фреймворков, то наверное можно обойтись и без функциий и ооп ?
студент№25, покажи мне пример гостевой книги, это простое приложение, без функций и ООП, пожалуйста. А потом подумай о том, как ты будешь поддерживать такой код и расширять.

Если у программиста нет желания структурировать свой код и держать в порядке - этому товарищу нехрен делать в области программирования.
 

scorpion-ds

Новичок
студент№25, то ли ты решил потроллить, то ли действительно совсем еще "зеленый" ...

Если по теме, то у нас есть проект от другого разработчика, так он наверно тоже так думал, у него к примеру файл вывода карточки товара, содержит более 1500 строк кода, в нем же содержаться запросы к БД и сам вывод HTML, так вот там есть полотенце условий, где в зависимости от региона (города) немного меняется вывод, по сути там 5-6 раз повторяется один и тот же фрагмент кода (40-60 строк) с небольшими изменением, так вот к примеру этот фрагмент было бы разумно разместить хотя бы в отдельную функцию.
 

antson

Новичок
Партнер клуба
студент№25, мда, не застали вы времена когда функций не было.
первые диалекты бейсика и фортрана имели только два оператора перейти на метку и вернутся к месту предыдущего вызова (и это уже было благо, так одно и тоже с гимором, но уже можно было не повторять многократно).
в результате приходилось
$param1 = 1;
$param2 = 2;
goto 1000
print "summa 1 : ";
print $summa;
$param1 = 3;
$param2 = 4;
goto 1000
print "summa 2 : ";
print $summa

end
1000: $summa = $param1 + $param2
rerurn

общая область видимости переменных и куча другого гимора
приятно так писать ?
 

студент№25

Новичок
например в js можно делать функции внутри функций
а можно и не делать так, и умные книжки рекомендуют разбивать сложную функцию на простые

я не могу представить себе зачем в js определять функцию внутри функции, в с++ например нет такой возможности
из этой же оперы - принципиальный отказ от рекурсии... или от оператора var в глобальном объекте...
или даже отказ от замыканий и наследования (но это уж совсем ересь)



товарищи, мне нужны простые понятные примеры, без кода, чисто теоретически

повторюсь - первое впечатление что пхп-скрипты это как функции-методы вызываемые из js-программы
соответствнно вместо того чтобы впихивать функции в функции - можно разделить код на отдельные функции поменьше
и внутри js-сценария принимать решение о вызове той или иной функции

я пока рассуждаю с точки зрения классического структурного программирования

где я не прав? где тупняк?
 
Последнее редактирование:

c0dex

web.dev 2002-...
Команда форума
Партнер клуба
Архитектуру php сервера? Ты хочешь изучать исходники?

PS: переезжаем в профильный раздел
 

c0dex

web.dev 2002-...
Команда форума
Партнер клуба
В жалобе отказано. Больше не жалуйся.
 

студент№25

Новичок
и вот это не понятно -
Все функции и классы PHP имеют глобальную область видимости - они могут быть вызваны вне функции, даже если были определены внутри и наоборот.
http://docs.php.net/manual/ru/functions.user-defined.php

пхп-скрипт же использует пользовательские функции только те шо определенны внутри него ?
 

scorpion-ds

Новичок
Судя по всему ты читаешь устаревшую методичку, в которое еще не знали, про пространство имен.
 

студент№25

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

С.

Продвинутый новичок
Давай ты начнешь уже писать и на опыте постигать РНР. А то твои идиотические теоретизирования бесят.
 

студент№25

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

и еще я не нервный и не психованый как ты
наверное потому что не работаю програмистом ))
но я могу ошибаться - мало фактов

всем спасибо за участие!
придумаю какой нибудь еще идиотский раздражающий бесящий шибко умный вопрос новичка ))
это какая то наверное русская традиционная психологическая черта - ненависть к трудным вопросам
и как следствие - инициатива наказуема, галилеев сжигать в зародыше

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

и уточнение к вопросу темы -
вопрос предназначен к тем кто сам создает свои функции, а не использует шаблон фреймворка
или к тем кто сам написал свой оригинальный фреймворк и реально знает цену простоты и эффективности архитектуры

потому что на вопрос "нафиг нужны функции внутри функций" может ответить только настоящий программист (в широком смысле) получивший полноценное пятилетнее высшее образование

функции внутри функций - это бессмыслица
разве не?
пачиму в некоторых языках это невозможно?


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