PHP видове програмиране

pro12

Registered
Процедурно програмиране, обектно-ориентирано програмиране или смесица от двете. Кои вид програмиране е по добро и защо?
 
По принцип OOП e най-добре, всички уважаващи се фреймуорци го ползват, не, че не може да постигнеш нещо такова с процедурен код, но се предполага, че ООП е божията частица в програмирането и може така да навържеш кода, че после като се налага да разшириш функциалноста на приложението си, го правиш на едно място. Ама според мен това е доста относително, защото дори с ООП пак може да стане пълен батак.

Моето мнение е,че всичко зависи от начина на подредба и крайната цел. Почти всичко, което може да го постигнеш с ООП може да го постигнеш и само с процедурен код. Нищо не пречи да ползваш и 2-те, за момента МОЖЕ да ти изглежда добре смесено, но после след време ще си кажеш "Какво за бога съм си мислил.." и така. Пробвай и едното, пробвай и другото, виж кое те кефи и ти е по-лесно, никой не може да те задължи да пишеш на ООП (освен ако не си във фирма и там на това работят . . или работите на някой фреймуорк - тогава teamwork е ключова дума, съответно и GIT и т.н.) .

Много относително е всичко, все пак зависи каква е крайната цел :) :idea: :?:
 
Ако не смяташ да споделяш проекта си с някой друг, пиши си както си знаеш... в противен случай - ООП, със сигурност! :D
 
Хубав и интересен въпрос, макар да има вече писано по темата.
Пишеш кода си така, както на теб ти е удобно и според това, какъв проект правиш. Естествено всеки един стил има предимства и недостатъци.
Колегата по-горе ти е казал - ако си във фирма задължително трябва да се пише с framework (OOP, MVC), така по-лесно се работи в екип, по-лесно е за разширяване на самото приложение след време, по-лесен support и още много предимства.

Процедурното писане на кода - всеки, който учи първи стъпки в PHP мисля, че първо учи процедурното писане. За мен лично, то е по-лесно (за някой това е странно, за мен не). Знам също така, че има и предимство при скоростта на зареждане. Недостатък е, че пишеш малко повече код отколкото OOP примерно, но пък така чисто виждаш кой ред какво прави, кое къде отива и какво се случва. Няма ги тия магическите неща, които се случват при обектноориентираното програмиране.

OOP (Обектноориентирано програмиране) - използвам само в проектите, където има смисъл това да се използва. Когато бях започнал да навлизам в PHP общността, OOP-то ми беше нещо много чуждо.. сякаш виждах друг език за програмиране.

Аз използвам 70% процедурно понеже ми е по-лесно. Нямам проекти където да използвам пълноценно OOP и за това не го правя.
В момента разучавам тези framework's: Symfony, Zend, Laravel..

:?:
 
Разликата в скоростта идва от това, че при ООП за създаването на нов обект системата трябва да задели памет (това е бавна операция), а когато обекта вече не се ползва, Garbage Collector-а минава и освобождава паметта (също бавна операция). Това може спокойно да се пренебрегне, като имаш предвид всичките предимства, които ООП ти дава.
 

Back
Горе