我想学习 PHP 并想了解有关 OOP 和过程的想法。我阅读了其他一些关于 OOP vs Procedural 的博客和教程,但我仍然无法理解这种方法。
OOP 与程序
- 我应该学哪个?
- 代码有什么区别?有什么影响?
- PHP 框架如何帮助 OOP 方法?(我想学习 CodeIgniter)
- 程序需要一个框架吗?
我真的很想知道两者的代码区别,我对 OOP 的理解是你创建一个类,它可以被访问。(我不知道这是否正确)。
我想学习 PHP 并想了解有关 OOP 和过程的想法。我阅读了其他一些关于 OOP vs Procedural 的博客和教程,但我仍然无法理解这种方法。
OOP 与程序
我真的很想知道两者的代码区别,我对 OOP 的理解是你创建一个类,它可以被访问。(我不知道这是否正确)。
背景:您要求提供“简单解释”,这表明:
简短的无行话答案:
冗长的无行话答案:
过程与 OOP 只是计算机编程基本问题的一个方面:如何使您的代码易于理解和专业维护的小菜一碟。您实际上可以编写遵循 OOP 某些原则的“过程”代码,因此两者不一定是对立的。
一旦你学习了其他面向对象的编程语言,你的理解就会真正增长,其中,PHP 是一个“新手”。
以下是您在积累经验时将学到的内容的快速概述:
您可以编写执行有用任务的 PHP 源代码
您可以将有用的任务组织成代码“块”
您可以独立于保存它们的单个文件来考虑代码的“块”
有时,这些“块”代码的行为会根据您传入的参数而有所不同
接受参数的代码块称为“函数”
函数可以“分块”在一起,并且有不同的方法:
OOP 是一种将函数“分块”成“类”的特殊方式
一个类只是另一个层次的“块”代码,因此您可以将它视为一个统一的整体
一个类可以被认为是方法和属性的“块”
类很有用,因为它允许您以一种易于理解、使用和维护的方式在非常高的级别组织代码。
当有人编写了很多函数,并将它们组织成很多类,并让它们以某种很酷的方式协同工作时,他们将整个东西打包在一起,称之为“框架”。
框架只是一个或多个人同意的下一个最高级别的“分块” (包括编码风格和约定),因为他们喜欢代码的组织方式,并且适合他们的工作风格、偏好、价值观和世界计划统治等
OOP 只不过是一种设计模式。如果您刚刚开始,那么通过专注于程序方法来学习基础知识。最重要的是,熟悉循环、条件和调用其他过程等基本原理。
在创建程序代码时,请养成在单个源文件中添加相关方法的习惯。学会把你的过程分成逻辑单元,然后你就已经开始变得面向对象了。基本上,一个对象只不过是一组相互关联的方法,因为它们对同一组数据进行操作。(这里不是说数据库,而是应用程序数据!)
OO 主要用于通过将所有内容分成简单的块来使您的代码更具逻辑性。通过组合正确的块,您可以获得完整的应用程序。OO 不是可以解决所有问题的银弹或金锤。但它的作用是让你的代码更容易理解。
话又说回来,有些人仍然设法把对象弄得一团糟,只是用数百种方法把它们变成巨大的超级对象。这样的对象与常规的过程方法没有太大区别,仅仅是因为大量的方法在没有任何实际逻辑的情况下组合在一起。当人们开始太快地开始使用 OOP 时,很容易犯这个错误。
添加上面的好答案。您应该将 OOP 视为您的编码风格的自然发展 - 当您开始编写小程序时,您可能只需将几行 php 代码放在一起,然后将它们分组为函数,您编写的函数越多,您可能会觉得需要以便更好地将它们组织成班级。OOP 只是让您更好地构建代码 - 允许更好的代码维护。
你应该两个都学。对象只是存在的许多可能的抽象之一,而抽象是编程的最终目的。也就是说,从程序性的东西开始,然后再添加对象,因为 PHP 对象的内部结构无论如何都是程序性的。
至于框架;首先学习语言的基础知识,编写一次性的实验程序等。稍后您可以熟悉框架并考虑自己是否发现其中一些在某些情况下有用。它们绝对不是强制性的。
程序化 php 和 oop 使用相同的 php 代码。那么唯一的区别是,在程序上,你专注于一项任务,就是这样。在 oop 中,您使用可以在代码的许多不同区域重复使用的模式或块来组织代码。
简单的回答是,你需要了解和理解 php。你可以在 php.net 上学习它。一旦你理解了它,那么你就可以开始将你的代码组织成卡盘了。
程序代码使用函数、变量。
一旦掌握了一些东西,就可以开始将函数和变量组织到类中。我们开始将函数称为方法,将变量称为属性。
祝你好运。