가능한 중복 : 최근에 나는 지금까지 내가 함수를 사용하여 PHP를 작성했습니다, 객체 지향 접근 방식을 소개했습니다
OOP vs Functional Programming vs Procedural객체 지향 프로그래밍 대 프로 시저 프로그래밍 - 큰 차이점은 무엇입니까?
.
자, 솔직히 나는 그것을 얻지 못합니다. '기능'아이디어를 사용할 때, vars를 포함하여 필요한 모든 기능을 가진 functions.php와 같은 파일을 포함하기 만합니다. , 그리고 그 코드를 사용해야 할 때, 나는 그냥 그것을 호출하고 vars를 설정하거나, 디폴트 vars가 있다면 비워 둡니다.
지금까지 내가 'OO'를 이해하지 못하면 '카테고리'가없는 많은 기능을 작성하는 대신 '클래스'(예 : db로 작업하는 모든 기능은 ' db '클래스) - 그리고 그것들에 vars를주는 대신, 나는 그 클래스들에서 그 vars들을 선행한다고 선언한다.
그래서, 기본적으로 같은 일을하고있는 것처럼 느껴집니다. 나는 바르가 OOP 글로벌 아니라는 것을 알고, 그들은 더 이해-수있는 코드를 만들기위한 OK입니다 예, 당, 그러나 그 외에, 정말 일을에서 큰 차이를 느낄 수 없습니다
$html = new html();
$html->src='http://stackoverflow.com';
$html->desc='Great place to learn & share knowledge';
$html->link();
-
html_link('http://stackoverflow.com','Great place to learn & share knowledge');
내가 그 코드를 작성하지 않은 사람이 더 많은 읽을 수 있습니다,하지만 큰 혜택 모두에 대해 이야기 볼 수 없습니다 동의 빠르고 등등, 조직, 재사용.
공유 의견을 내가 OOP : 사전에
감사합니다, 에크 혜택을 누릴 수있는 방법 어쩌면 내가 이해하게 될 것입니다.
으로 시작하십시오. "기능적"이라는 뜻은 "절차 적"을 의미합니다. 기능적으로 다소 다른 것입니다 (Lisp을 생각하십시오). –
PHP의 "객체 지향적 인"지원은 여러분이 저에게 묻는다면 크게 고려해야 할 것입니다. 유용하다고 생각되면 사용하십시오. 그러나 언어의 일부가 인공적이거나 생각 나지 않거나 당혹 스럽다고 느낄 때 놀라지 마십시오. –
단순히 클래스를 네임 스페이스로 그룹화하여 함수를 그룹화하는 경우 실제로는 OOP가 아닙니다. – JohnP