summaryrefslogtreecommitdiff
path: root/content/digarden/pages/20210615202918-symfony.org
diff options
context:
space:
mode:
Diffstat (limited to 'content/digarden/pages/20210615202918-symfony.org')
-rw-r--r--content/digarden/pages/20210615202918-symfony.org83
1 files changed, 83 insertions, 0 deletions
diff --git a/content/digarden/pages/20210615202918-symfony.org b/content/digarden/pages/20210615202918-symfony.org
new file mode 100644
index 0000000..ce0e100
--- /dev/null
+++ b/content/digarden/pages/20210615202918-symfony.org
@@ -0,0 +1,83 @@
+:PROPERTIES:
+:ID: 71d88c28-b79f-47cc-b5ec-7439fcff5f7f
+:END:
+#+title: Symfony
+
+* Symfony
+Фреймворк для работы.
+
+Симфони спроектирован с учётом [[id:7dbb05d0-e411-4e5e-965f-005b66b23564][DDD]].
+
+Компоненты:
+- [[id:b907e9f5-97f1-45a5-bbd9-7ed36718fe75][SonataAdmin]]
+- [[id:e1b70298-5a02-45c4-be3b-47be053c546b][Doctrine]]
+- Alice (Fixtures)
+https://symfonycasts.com/screencast/alice-fixtures/fixtures
+** Понятия
+- Action
+- Admin
+ Админка Sonata Admin
+- Command
+ Команды CLI утилиты
+- Controller
+ Контроллеры. Входная часть приложения по URL
+- DTO
+ Data Transfer Object. Классы, хранящие только данные
+- DataPersister
+- DataTransformer/Api
+- Doctrine
+- Entity
+ Сущности, они же модели
+- Enum
+ Тип данных перечисление
+- EventListener
+- EventSubscriber
+- Exception
+ Тип данных исключение
+- Filter
+- Form
+ Формы
+- Generator
+- Message
+- MessageBus
+- MessageHandler
+- Migrations
+ Миграции
+- Repository Репозиторий. Нужен, чтобы оперировать над группо
+ Entity. Типо "выбрать все сущности статьи", "выбрать определённые
+ сущности статьи".
+- Resizer
+- Security
+- Serializer
+- Service Сервисы. То что по сути не подходит в остальные
+ папки. Функции утилиты.
+- Twig/Extension
+** Дебаг
+Существует Symfony Profiler (полосочка снизу).
+
+Можно использовать в контроллерах функции ~dump~ и ~dd~ (dump and die) для
+вывода нужных нам переменных.
+** *Обучающие материалы*:
+- [[https://www.youtube.com/channel/UCeJmv3YIHb0UrHUbJ23wADA][Symfoniacs]] (канал на Youtube)
+*** Видео
+- [[https://youtube.com/watch?v=Bo0guUbL5uo][Symfony PHP Framework Tutorial - Full Course by FreeCodeCamp]]
+- [[https://youtu.be/_ESXXCboy8E][Symfony: Dependency Injection]]
+- [[https://thomasberends.github.io/symfony-certification-preparation-list/][Symfony Certification Preparation List]]
+** Статьи
+- [[https://100.org.ua/%D0%BD%D0%B5%D0%BC%D0%BD%D0%BE%D0%B3%D0%BE-%D0%BE-symfony/][Немного о Symfony [RU]​]]
+-
+** Люди
+- [[https://fabien.potencier.org/][Fabien]]
+** Недостатки
+- Twig имеет питоновский синтаксис и сильно отличается от PHP, когда как
+ Jinja и подобные шаблонизатора в Python (Twig был от разработчика
+ Jinja) выглядят естественно для языка
+- [[id:2dca6571-39e7-4566-abc6-616877149260][YAML-driven-development]]
+
+Веб-ресурсы:
+- [[https://www.reddit.com/r/symfony/top/?t=all][Reddit]]
+** Видео
+- [[https://www.youtube.com/@GaryClarkeTech/playlists][Gary Clarke]] (много видео про PHP и Symfony)
+- Symfony DDD: https://youtu.be/rkQ3-T82pkU
+** Статьи
+- [[https://symfony.com/doc/current/create_framework/http_foundation.html][Создание фреймворка на базе Symfony]] \ No newline at end of file