2013-04-04 3 views
2

Я разрабатываю веб-приложение, используя laravel. Я хотел бы «упаковать» некоторые из функций, которые можно повторно использовать. Например, я получил UserController, с настройкой базы данных и представлением и т. Д. Ожидается, что в будущем в большинстве веб-разработок будет использоваться повторно UserController, но некоторые UserController могут иметь другое поведение, например, пользователь какого-либо приложения может есть поле rewardPoint, некоторые - нет. Но все они имеют некоторые аналогичные поведения, например: register, login, forgetPassword и т. Д. Итак, могу ли я упаковать общий UserController со всей базой данных в один файл или скрипт, чтобы уменьшить нагрузку на разработку? Благодарю.Как я могу повторно использовать код laravel?

+0

Что вы подразумеваете под _re-usable_: Повторно можно использовать в рамках вашего текущего проекта или на многих сайтах? – Adrenaxus

ответ

2

Вы уже наткнулись на гвоздь на голове - так как ваши требования могут измениться между проектами, которые вы будете бороться, чтобы создать единое решение, которое работает повсюду. У вас есть несколько вариантов, в том числе:

  1. Скопируйте полезные классы из своего последнего проекта и обновите их, чтобы они поместились.
  2. Создайте пакет или пакет базовых классов, которые включают в себя общий и многоразовый код, а затем расширят их в свой проект и при необходимости модифицируют расширения.
  3. Попытка создать «одно решение для всех», которое вы можете включить во все ваши проекты.

Я бы уклонился от 3; он, вероятно, добавит наибольшее раздувание для наименьшего выигрыша. 1 полезен, пока вы привыкаете к структуре, особенно если вы не собираетесь пересматривать старые проекты; со временем вы уточните свой код и разработаете образцы работы. В конце концов вы, вероятно, закончите делать 2; вы можете хранить их в git, использовать пакеты или пакеты композиторов, и вы можете продолжать их улучшать с течением времени.

Смежные вопросы