window.pipedriveLeadboosterConfig = { base: 'leadbooster-chat.pipedrive.com', companyId: 11580370, playbookUuid: '22236db1-6d50-40c4-b48f-8b11262155be', version: 2, } ;(function () { var w = window if (w.LeadBooster) { console.warn('LeadBooster가 이미 존재합니다') } else { w.LeadBooster = { q: [], on: 함수 (n, h) { this.q.push({ t: 'o', n: n, h: h }) }, trigger: 함수 (n) { this.q.push({ t: 't', n: n }) }, } } })() 심포니 폴리필이 필요한 이유(... 그리고 필요하지 않은 이유) - The Codest
The Codest
  • 회사 소개
  • 서비스
    • 소프트웨어 개발
      • 프론트엔드 개발
      • 백엔드 개발
    • Staff Augmentation
      • 프론트엔드 개발자
      • 백엔드 개발자
      • 데이터 엔지니어
      • 클라우드 엔지니어
      • QA 엔지니어
      • 기타
    • IT 자문
      • 감사 및 컨설팅
  • 산업 분야
    • 핀테크 및 뱅킹
    • E-commerce
    • 애드테크
    • 헬스 테크
    • 제조
    • 물류
    • 자동차
    • IOT
  • 가치
    • CEO
    • CTO
    • 배달 관리자
  • 우리 팀
  • Case Studies
  • 방법 알아보기
    • 블로그
    • 모임
    • 웹 세미나
    • 리소스
채용 정보 연락하기
  • 회사 소개
  • 서비스
    • 소프트웨어 개발
      • 프론트엔드 개발
      • 백엔드 개발
    • Staff Augmentation
      • 프론트엔드 개발자
      • 백엔드 개발자
      • 데이터 엔지니어
      • 클라우드 엔지니어
      • QA 엔지니어
      • 기타
    • IT 자문
      • 감사 및 컨설팅
  • 가치
    • CEO
    • CTO
    • 배달 관리자
  • 우리 팀
  • Case Studies
  • 방법 알아보기
    • 블로그
    • 모임
    • 웹 세미나
    • 리소스
채용 정보 연락하기
뒤로 화살표 뒤로 가기
2022-05-19
소프트웨어 개발

심포니 폴리필이 필요한 이유(... 그리고 필요하지 않은 이유)

The Codest

세바스찬 루작

PHP 유닛 리더

다음 문서에서는 Symfony Polyfill의 작동 방식과 Symfony 프로젝트와의 관계에 대해 설명합니다. 또한 이 라이브러리가 해결하고자 하는 아이디어에 대해서도 자세히 살펴보겠습니다.

대부분의 현대 PHP 프로젝트에 대한 의존도가 높다는 것을 알 수 있습니다. 심포니 폴리필 라이브러리입니다. 이 문서에서는 작동 방식뿐만 아니라 다음과 어떤 관련이 있는지 설명합니다. Symfony 프로젝트가 해결하고자 하는 문제에 대한 아이디어에 대해서도 자세히 살펴볼 것입니다.

약간의 역사

PHP 는 꽤 오랫동안 좋지 않은 상태였습니다. 안드레이 즈미에브스키가 2005년에 프로젝트 에 대한 네이티브 유니코드 지원을 제공하기 위해 PHP 에 대한 엇갈린 평가와 많은 우려로 인해 PHP 가 잘못된 방향으로 가고 있습니다. 개발 PHP 6.x가 시작되었습니다. 하지만 이 작업은 결코 끝나지 않았고, 이는 다른 날의 이야기입니다. 10년 후인 2014년과 2015년 사이, Dmitry Stogov, Xinchen Hui, Nikita Popov는 다음과 같이 시작했습니다. phpng - 에서 사용하는 내부 Zend 엔진을 최적화하고 리팩토링한 프로젝트입니다. PHP.

>_ PHP 7의 탄생

그리고 지난 몇 년 동안, PHP 는 현재 안정적인 버전 8.1로 그 어느 때보다 빠르게 성장하고 있습니다.

이미지

언어의 새로운 기능이 빠르게 개발됨에 따라 개발자뿐만 아니라 인프라 및 호스팅 서비스 제공업체도 이러한 변화에 적응해야 했습니다.

개발자들이 사랑받는 프로그래밍 언어의 최신 및 최고의 기능을 사용할 수 있도록 보장합니다. 심포니 폴리필 프로젝트가 탄생했습니다.

심포니 폴리필과 그 기능

이 프로젝트는 최신 버전의 기능을 백포트합니다. PHP 버전 의 일부 확장 및 기능에 대한 호환성 레이어를 제공합니다. 이 레이어는 다음과 같은 경우에 사용하기 위한 것입니다. PHP 버전 및 확장이 필요합니다.

이것은 순수한 설명입니다. 심포니 폴리필 하지만 그게 무슨 뜻일까요?

빠르게 진화하는 PHP 언어 그리고 ISP의 시대에 뒤떨어진 소프트웨어 커스터마이징으로 인해 대부분의 개발자는 간단한 선택에 직면해 있습니다:

  • 개발자로서 저는 이전 버전의 애플리케이션을 만듭니다. PHP 언어의 최신 기능을 사용할 수 없거나
  • 개발자로서 저는 최신 버전의 PHP.

하지만 이미 사용 중인 다른 도구 및 서비스와의 호환성을 유지해야 했습니다. 코드 및 인프라 측면 - 거의 항상 이전 버전의 PHP독자 여러분, 이 두 가지 솔루션의 소위 '재미 요소'에 대해 언급해야 할까요?

2015년 오픈소스 커뮤니티는 개발자들의 편의를 위해 다음과 같이 만들었습니다. 폴리필의 첫 번째 안정 버전은 1.0입니다.. 개발자의 삶은 더 쉬워졌고 Symfony Polyfill은 서로 다른 플랫폼 간의 코드 이식성과 같은 여러 문제를 해결했다고 말할 수 있습니다, PHP 버전 차이점을 파악하고 애플리케이션을 리팩토링하고 기술 부채를 훨씬 쉽게 줄일 수 있었습니다.

안타깝게도 하나의 도구로 모든 문제를 해결할 수 있는 것은 아닙니다.

여러 버전의 환경을 유지 관리할 때 발생하는 문제

복잡한 경우 IT 프로젝트고객/지사/부서별로 서로 다른 버전의 환경을 유지하는 것은 일반적인 절차입니다. 따라서 기능 요구 사항이 서로 다르고 각기 다른 견인력을 가진 여러 가지 애플리케이션 브랜치를 동시에 개발해야 하는 경우가 많습니다. 저는 서로 다른 PHP5 / PHP7 환경에서 서로 다른 클라이언트를 위해 동일한 애플리케이션을 유지해야 하는 문제에 여러 번 직면했으며, 라이브러리의 비호환성 또는 버전에 따른 종속성과 관련된 여러 가지 문제는 단순히 심포니 폴리필.

개발팀 구성원 간의 기술 격차

에 내장된 기능의 급속한 성장으로 인해 PHP많은 개발자가 변화의 속도를 따라잡지 못했습니다. 상위 버전에서 제공되는 많은 기능은 PHP 를 외부 라이브러리로 쉽게 구현할 수 있거나 개발자가 다음과 같은 새로운 기능이 필요하지 않았기 때문입니다. PHP 파이버. 를 선택할 때 팀 멤버의 스킬이 일치하는지, 정적 분석 도구와 버전 회귀 오류의 조기 발견을 통해 코드 전달 프로세스를 보다 일관성 있게 만드는지 확인하는 것이 좋습니다.

변화에 대한 거부감

이미지

새로운 언어 기능의 채택률은 여전히 상당히 낮으며 PHP 5의 24% 이상의 점유율은 다음과 같이 명확하게 보여줍니다. PHP 프로젝트의 1/4이 7.x보다 낮은 버전을 실행 중입니다.는 2022년 12월 6일에 보안 지원이 종료될 예정입니다. 즉, 이 글을 작성하는 시점에 25% 기반 웹 프로젝트 중 56% 이상이 연말까지 모든 새로운 보안 취약점에 잠재적으로 노출될 수 있다는 뜻입니다. "작동하는데 왜 신경 쓸 필요가 있나"?

결론

가능한 한 빨리 언어 변경에 적응하고 최신 솔루션을 최대한 빨리 사용해야 합니다. 레거시 프로젝트를 마이그레이션하는 동안 다음을 포함하는 것이 좋습니다. 심포니 폴리필 를 도우미로 사용하고 스트랭글러 패턴과 현재 유행하는 BDD 방법론과 같은 기법을 사용합니다. Symfony 프레임워크. 그렇다면 정말 심포니 폴리필?

PHP 개발 무료 컨설팅

자세히 읽어보세요:

PHP 개발: 알아야 할 5가지 사항

2022년 시장 판도를 뒤흔들 스타트업 및 스케일업 7가지

PHP 개발. Symfony 콘솔 컴포넌트 - 팁과 요령

관련 문서

소프트웨어 개발

PHP 8.2: 새로운 기능은 무엇인가요?

PHP의 새 버전이 곧 출시됩니다. 새롭게 구현된 기능에는 어떤 것들이 있나요? 이 글을 통해 알아보세요!

The Codest
세바스찬 루작 PHP 유닛 리더
소프트웨어 개발

PHP 개발. Symfony 콘솔 컴포넌트 - 팁과 요령

이 문서는 심포니 콘솔 개발에 대한 가장 유용하고 검색하기 쉬운 팁과 요령을 보여드리기 위해 작성되었습니다.

The Codest
세바스찬 루작 PHP 유닛 리더
소프트웨어 개발

내부 개발자와 외부 개발자 고용하기

내부에서 채용할까요, 아니면 외부에서 채용할까요? 최고의 딜레마입니다! 다음 글에서 outsourcing 또는 사내 팀 구축의 이점을 알아보세요.

The Codest
그레고르즈 로즈무스 자바 유닛 리더

지식창고를 구독하고 IT 분야의 전문 지식을 최신 상태로 유지하세요.

    회사 소개

    The Codest - 폴란드에 기술 허브를 둔 국제 소프트웨어 개발 회사입니다.

    영국 - 본사

    • 사무실 303B, 182-184 하이 스트리트 노스 E6 2JA
      영국 런던

    폴란드 - 현지 기술 허브

    • 파브리츠나 오피스 파크, 알레야
      포코주 18, 31-564 크라쿠프
    • 뇌 대사관, 콘스트럭터스카
      11, 02-673 바르샤바, 폴란드

      The Codest

    • 홈
    • 회사 소개
    • 서비스
    • Case Studies
    • 방법 알아보기
    • 채용 정보
    • 사전

      서비스

    • IT 자문
    • 소프트웨어 개발
    • 백엔드 개발
    • 프론트엔드 개발
    • Staff Augmentation
    • 백엔드 개발자
    • 클라우드 엔지니어
    • 데이터 엔지니어
    • 기타
    • QA 엔지니어

      리소스

    • 외부 소프트웨어 개발 파트너와의 협력에 대한 사실과 오해
    • 미국에서 유럽으로: 미국 스타트업이 유럽으로 이전을 결정하는 이유
    • 테크 오프쇼어 개발 허브 비교: 테크 오프쇼어 유럽(폴란드), 아세안(필리핀), 유라시아(터키)
    • CTO와 CIO의 주요 과제는 무엇인가요?
    • The Codest
    • The Codest
    • The Codest
    • Privacy policy
    • 웹사이트 이용 약관

    저작권 © 2025 by The Codest. 모든 권리 보유.

    ko_KRKorean
    en_USEnglish de_DEGerman sv_SESwedish da_DKDanish nb_NONorwegian fiFinnish fr_FRFrench pl_PLPolish arArabic it_ITItalian jaJapanese es_ESSpanish nl_NLDutch etEstonian elGreek ko_KRKorean