Ну, сейчас я преподаю БД на курсах в университете. Студенты уже прошли продвинутый курс программирования (в том числе мучить их в течение целого семестра масштабными проектами, они действительно многому учатся).
В моем курсе в настоящее время есть проект, в котором я даю каждому студенту учетную запись на сервере, и он должен подключиться к PostgreSQL с помощью PHP, показать некоторые запросы, исправить некоторые проблемы, которые SQL не может решить с помощью PHP и т. Д. И т. Д.
Но я думаю о том, как это исправить. В настоящее время они используют FTP для подключения к серверу, загружают файлы php, а затем смотрят, как прошли изменения. Конечно, если они забыли точку с запятой или что-то подобное, Apache просто не отобразит страницу, и у них не будет никаких подсказок относительно того, что пошло не так.
Что вы думаете об используемых технологиях?
В другом вопросе, который я задал, они сказали мне использовать Git, но я думаю, что Git работает медленно, если вы хотите протестировать, поскольку вам нужно подключиться к серверу по SSH и выполнить git pull.
У вас есть предложения или идеи?
rsync
будет намного быстрее, чем FTP для многократной синхронизации файлов - он просто проверяет размер файла и временную метку на приемнике, чтобы выяснить, следует ли перезаписывать файл, тем самым минимизируя объем данных, передаваемых для каждой синхронизации. Если есть много файлов, которые вы можете захотеть автоматически создать тарбол (например, используя inotifywait
) и синхронизировать это, например, используя tar -cz . | ssh my-server tar -C /my/app/dir -xz
(непроверено).
make
можно использовать для проведения тестирования одной командой. Что-то вроде этого Makefile
должен сработать (вы должны использовать Вкладка для отступа):
test:
rsync --recursive --progress . my-server:/my/app/dir
firefox https://my-server/test-page
Если вы хотите проводить автоматические тесты, а не вручную проверять изменения каждый раз, вы можете использовать Селен.
В PHP много глупых ошибок, и лично (после MSc + 10 лет работы программистом) я считаю, что это серьезно повреждает мозг. Он настолько пронизан ужасными ошибками, что я надеюсь, вы подумаете об использовании более разумного языка, такого как Java, Python, Ruby или даже Perl. От вредных привычек нужно время, чтобы умереть, и PHP учит много вредных привычек.