¿Es inteligente comenzar a construir un marco PHP en el que haría un sitio web muy grande y complejo desde cero?

Tal vez no sea inteligente, pero debe poder expresarse en su idioma y en términos de métodos, propiedades y estilos para lograr un proyecto tan grande (bueno, no es que haya gmails colgando de las paredes y probablemente esté subestimando la complejidad de gmail por cierto).

Si va a “desarrollar su propio marco”, necesitará muchas habilidades, deberá producir diagramas del sistema, documentación y (si lo hace bien) tomará más tiempo completar su proyecto (probablemente estamos hablando de años de todos modos).

Las alternativas son:

  • Intenta trabajar con alguien más marco (s). es decir, lea los documentos, tal vez YouTube algunos videos, obtenga un gran equipo detrás de usted (necesitará un equipo)
  • Renunciar a PHP (no hagas esto, es infantil)
  • Cambia a un rol de coordinación donde eres el tipo de “panorama general” que solo ocasionalmente cambia el código.

Personalmente, nunca probaría este solo, porque YOLO (solo vives una vez), disfruto de la luz del sol, y vas a sacar una buena parte de tu vida. Se necesitará mucha pasión, impulso, inteligencia y una bolsa de trucos más grandes que el saco de santa para construir un marco de “complacer a algunos”, y mucho menos un “complacer a todos”.

Considere también las necesidades que tendría externas a PHP, para gmail existe un amplio conocimiento de los sistemas de correo electrónico, administración de sistemas Linux, escalabilidad, front-end, tienen integraciones y aplicaciones de terceros, y Google es un gran jugador (como 1,000 ‘ s de desarrolladores) por lo que necesitarás ser rápido también jajaja.

Sí, es “inteligente”, pero solo en la forma en que escribir su propio sistema de comercio electrónico es “inteligente”: tomará más tiempo, no será tan bueno, pero bueno, ¡lo hizo todo usted mismo!

He escuchado cosas buenas sobre Zend y CakePHP pero no las he usado yo mismo (soy un tipo de Rails). Para una comparación divertida de características, visite http://www.phpframeworks.com/

Dos escuelas de pensamiento sobre eso.

1. Escribe tu propio marco. Es una excelente manera de aprender más sobre las intracacies de PHP y lo sabrá al revés. Puedes decidir las características que admitirás. Pero tomará más tiempo

2. Estás reinventando la rueda. Con la gran cantidad de marcos, ¿tiene sentido pasar el tiempo escribiendo el suyo? Estos marcos son probados en batalla y los desarrolladores los actualizan constantemente con nuevas características y correcciones de errores. Pero puede estar limitado por el conjunto de características de marcos.

Personalmente, usaría un marco. Es más rápido hacer las cosas. Hasta que te encuentres con una característica que requieres que no esté allí. Luego puede codificarlo y contribuir de nuevo al marco. Los marcos como Zend y Symfony están hechos para ser utilizados por partes si es necesario para que no tenga que incluir los errores que no necesita.

Depende de usted y su nivel de comodidad como desarrollador

Definitivamente no es una decisión sabia.
Construir un nuevo marco es en sí mismo un proyecto. Significa más energía / tiempo / costo.

Como mencionó sobre la construcción de un sitio web grande y complejo, significa que un equipo de personas estaría trabajando en él. Implica más costos de capacitación cuando un nuevo miembro se une al equipo.

Sin embargo, si planea tener un marco con características que ningún otro marco proporciona, será una buena decisión a largo plazo.

Construir un nuevo marco PHP es definitivamente un movimiento inteligente siempre que su nuevo marco tenga algo nuevo y útil para ofrecer que no se encuentre en otros marcos existentes, de lo contrario, adhiérase a los marcos existentes como CodeIgniter, Larvael, Phalcom, Symfony, Cakephp, etc. De estos, La más prometedora hoy es Laravel.

No, generalmente no es una buena idea. Intenta construir tu aplicación en otros bloques de construcción de código abierto. Cuando los nuevos desarrolladores se unan al equipo, podrán comenzar a trabajar fácilmente en él.