Symfony

Symfony

BACKEND

์žฌ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ์ปดํฌ๋„ŒํŠธ์— ๊ธฐ๋ฐ˜ํ•œ ๋ชจ๋“ˆ๋Ÿฌ ์•„ํ‚คํ…์ฒ˜๋ฅผ ์ œ๊ณตํ•˜๋Š” SensioLabs๊ฐ€ ๊ฐœ๋ฐœํ•œ ํ’€์Šคํƒ PHP ํ”„๋ ˆ์ž„์›Œํฌ์ž…๋‹ˆ๋‹ค. ๊ฒฌ๊ณ ํ•œ ๋””์ž์ธ ํŒจํ„ด(MVC, Dependency Injection), ํ™•์žฅ ๊ฐ€๋Šฅํ•œ ๋ฒˆ๋“ค ์‹œ์Šคํ…œ, ๊ฐ•๋ ฅํ•œ Doctrine ORM, ํ™•์žฅ ๊ฐ€๋Šฅํ•˜๊ณ  ์œ ์ง€๋ณด์ˆ˜ ๊ฐ€๋Šฅํ•œ ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ตฌ์ถ•์„ ์œ„ํ•œ ํ’๋ถ€ํ•œ ์ƒํƒœ๊ณ„๋ฅผ ๊ฐ–์ถ”๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

๋ฐฐ์šธ ๋‚ด์šฉ

์—„๊ฒฉํ•œ ํƒ€์ดํ•‘, PHP 8+ attributes, PSR-4 autoloading์„ ๊ฐ–์ถ˜ ํ˜„๋Œ€์  PHP

controllers, routes, Twig ํ…œํ”Œ๋ฆฟ ์—”์ง„์„ ํ™œ์šฉํ•œ MVC ์•„ํ‚คํ…์ฒ˜

autowiring๊ณผ YAML/XML/PHP ์„ค์ •์„ ๊ฐ–์ถ˜ ๋„ค์ดํ‹ฐ๋ธŒ ์˜์กด์„ฑ ์ฃผ์ž…

entities, repositories, ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜, DQL์„ ๊ฐ–์ถ˜ Doctrine ORM

๋ชจ๋“ˆ์„ฑ๊ณผ ์ฝ”๋“œ ๊ตฌ์„ฑ์„ ์œ„ํ•œ ์žฌ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ๋ฒˆ๋“ค

CLI ๋ช…๋ น๊ณผ ์ž๋™ํ™” ์Šคํฌ๋ฆฝํŠธ๋ฅผ ์œ„ํ•œ Symfony Console

์ธ์ฆ, ์ธ๊ฐ€, ๋ฐฉํ™”๋ฒฝ์„ ์œ„ํ•œ Security ์ปดํฌ๋„ŒํŠธ

์œ ํšจ์„ฑ ๊ฒ€์‚ฌ, CSRF ๋ณดํ˜ธ, ํ…Œ๋งˆ๋ฅผ ๊ฐ–์ถ˜ Form ์ปดํฌ๋„ŒํŠธ

์ „์†ก (RabbitMQ, Redis)์„ ํ™œ์šฉํ•œ ๋น„๋™๊ธฐ/ํ๋ฅผ ์œ„ํ•œ Messenger ์ปดํฌ๋„ŒํŠธ

ํฌ๊ด„์ ์ธ ํ…Œ์ŠคํŠธ (PHPUnit, ๊ธฐ๋Šฅ ํ…Œ์ŠคํŠธ, Panther E2E)

๋งˆ์Šคํ„ฐํ•ด์•ผ ํ•  ํ•ต์‹ฌ ์ฃผ์ œ

์ด ๊ธฐ์ˆ ์„ ์ดํ•ดํ•˜๊ณ  ๋ฉด์ ‘์—์„œ ์„ฑ๊ณตํ•˜๊ธฐ ์œ„ํ•œ ๊ฐ€์žฅ ์ค‘์š”ํ•œ ๊ฐœ๋…

1

PHP: namespaces, PSR-4 autoloading, traits, interfaces, PHP 8+ ์—„๊ฒฉํ•œ ํƒ€์ดํ•‘

2

Symfony ์•„ํ‚คํ…์ฒ˜: HttpKernel, Request/Response ์‚ฌ์ดํด, events, kernel listeners

3

Controllers: ๋ผ์šฐํŒ…, annotations/attributes, ์š”์ฒญ ๋งค๊ฐœ๋ณ€์ˆ˜, ์‘๋‹ต ํƒ€์ž…

4

๋ผ์šฐํŒ…: YAML/annotations/attributes, ๋ผ์šฐํŠธ ๋งค๊ฐœ๋ณ€์ˆ˜, requirements, prefixes

5

์˜์กด์„ฑ ์ฃผ์ž…: services, autowiring, service container, compiler passes

6

Doctrine ORM: entities, annotations/attributes, associations (@OneToMany, @ManyToOne)

7

Doctrine repositories: ์‚ฌ์šฉ์ž ์ •์˜ ์ฟผ๋ฆฌ, QueryBuilder, DQL (Doctrine Query Language)

8

Migrations: DoctrineMigrationsBundle, ๋ฒ„์ „ ๊ด€๋ฆฌ, up/down ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜

9

Twig: ํ…œํ”Œ๋ฆฟ ๊ตฌ๋ฌธ, filters, functions, ์ƒ์† (extends, block), includes

10

Forms: FormType, form builders, ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ ์ œ์•ฝ, ์‚ฌ์šฉ์ž ์ •์˜ ํผ ํƒ€์ž…

11

์œ ํšจ์„ฑ ๊ฒ€์‚ฌ: constraint annotations (@NotBlank, @Email), ์‚ฌ์šฉ์ž ์ •์˜ validators, groups

12

Security: authentication providers, voters, firewalls, ์—ญํ•  ๊ณ„์ธต, remember me

13

Events: EventDispatcher, event subscribers, kernel events (request, response, exception)

14

Serializer: ์ •๊ทœํ™”, ์—ญ์ •๊ทœํ™”, groups, ์‚ฌ์šฉ์ž ์ •์˜ normalizers, ํ˜•์‹ (JSON, XML)

15

Messenger: message handlers, transports, ๋น„๋™๊ธฐ ์ฒ˜๋ฆฌ, ์žฌ์‹œ๋„ ์ „๋žต

16

Console: commands (Command ํด๋ž˜์Šค), input/output, helpers, progress bars

17

HTTP Client: HttpClient ์ปดํฌ๋„ŒํŠธ, requests, ์ธ์ฆ, ์žฌ์‹œ๋„ ๋ฉ”์ปค๋‹ˆ์ฆ˜

18

Cache: cache pools, cache tags, adapters (Redis, APCu, Filesystem)

19

Bundles: ๋ฒˆ๋“ค ๊ตฌ์กฐ, extension class, ์„ค์ •, ์„œ๋“œํŒŒํ‹ฐ ๋ฒˆ๋“ค

20

ํ…Œ์ŠคํŠธ: PHPUnit, WebTestCase, ๊ธฐ๋Šฅ ํ…Œ์ŠคํŠธ, fixtures, mocking

21

์„ฑ๋Šฅ: profiler, ์บ์‹ฑ ์ „๋žต, lazy loading, opcache, PHP 8 preloading

22

API Platform: Symfony ์œ„์˜ REST/GraphQL APIs, ์ง๋ ฌํ™”, ํ•„ํ„ฐ, ํŽ˜์ด์ง€๋„ค์ด์…˜

23

๋ฐฐํฌ: Symfony CLI, ํ™˜๊ฒฝ ๋ณ€์ˆ˜ (.env), Docker, composer optimize

์ตœ์‹  Symfony ๊ธฐ์‚ฌ

Symfony์— ๊ด€ํ•œ ์ตœ์‹  ๊ธฐ์‚ฌ์™€ ๊ฐ€์ด๋“œ๋ฅผ ํ™•์ธํ•˜์„ธ์š”

Symfony Live Components์™€ UX 3.0์„ ํ™œ์šฉํ•œ PHP์™€ Twig ๊ธฐ๋ฐ˜ ๋ฆฌ์•กํ‹ฐ๋ธŒ ์ธํ„ฐํŽ˜์ด์Šค

Symfony Live Components์™€ UX 3.0: JavaScript ์—†์ด ๋ฆฌ์•กํ‹ฐ๋ธŒ ์•ฑ ๊ตฌ์ถ•ํ•˜๊ธฐ (2026๋…„)

Symfony Live Components์™€ UX 3.0์„ ํ™œ์šฉํ•˜์—ฌ JavaScript ํ”„๋ ˆ์ž„์›Œํฌ ์—†์ด ๋ฆฌ์•กํ‹ฐ๋ธŒ ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ๊ตฌ์ถ•ํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ๋‹ค๋ฃน๋‹ˆ๋‹ค. LiveProp, LiveAction, ํผ ์ฒ˜๋ฆฌ, ์ง€์—ฐ ๋กœ๋”ฉ, URL ๋ฐ”์ธ๋”ฉ์„ ํฌํ•จํ•œ ์™„์ „ํ•œ ํŠœํ† ๋ฆฌ์–ผ์ž…๋‹ˆ๋‹ค.

Symfony 8 ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ๊ณผ PHP 8.4 ๋ ˆ์ด์ง€ ์˜ค๋ธŒ์ ํŠธ

Symfony 8 ์™„๋ฒฝ ๊ฐ€์ด๋“œ: PHP 8.4 ๋ ˆ์ด์ง€ ์˜ค๋ธŒ์ ํŠธ, ๋ฉ€ํ‹ฐ์Šคํ… ํผ, 2026๋…„ ๋ฉด์ ‘ ๋Œ€๋น„๊นŒ์ง€

Symfony 8์€ PHP 8.4๋ฅผ ํ•„์ˆ˜๋กœ ์š”๊ตฌํ•˜๋ฉฐ ๋„ค์ดํ‹ฐ๋ธŒ ๋ ˆ์ด์ง€ ์˜ค๋ธŒ์ ํŠธ, AbstractFlowType, ํ˜ธ์ถœ ๊ฐ€๋Šฅ ์ปค๋งจ๋“œ ๋“ฑ ๋‹ค์ˆ˜์˜ ์‹ ๊ธฐ๋Šฅ์„ ํƒ‘์žฌํ–ˆ์Šต๋‹ˆ๋‹ค. ์ฃผ์š” ๊ธฐ๋Šฅ์„ ์ฝ”๋“œ ์˜ˆ์ œ์™€ ํ•จ๊ป˜ ๋ถ„์„ํ•˜๊ณ  2026๋…„ ๋ฉด์ ‘ ๋Œ€๋น„ ํฌ์ธํŠธ๋ฅผ ์ •๋ฆฌํ•ฉ๋‹ˆ๋‹ค.

Symfony์—์„œ Doctrine ORM ๊ด€๊ณ„ - ์™„๋ฒฝ ๊ฐ€์ด๋“œ

Doctrine ORM: Symfony์—์„œ ๊ด€๊ณ„ ๋งˆ์Šคํ„ฐํ•˜๊ธฐ

Symfony์˜ Doctrine ORM ๊ด€๊ณ„์— ๋Œ€ํ•œ ์™„๋ฒฝ ๊ฐ€์ด๋“œ. OneToMany, ManyToMany, ๋กœ๋”ฉ ์ „๋žต, ๊ทธ๋ฆฌ๊ณ  ์‹ค์šฉ์ ์ธ ์˜ˆ์ œ๋ฅผ ํ†ตํ•œ ์„ฑ๋Šฅ ์ตœ์ ํ™”.

๋ชจ๋“  Symfony ๊ธฐ์‚ฌ ๋ณด๊ธฐ