너는 영웅으로 죽든지, 아니면 자신이 악당이 되는 것을 볼 수 있을 정도로 살아라.

너는 영웅으로 죽든지, 아니면 자신이 악당이 되는 것을 볼 수 있을 정도로 살아라.
이것은 코드와 우리 프로그램의 수명에 관한 것이다.

라이프 사이클



우리의 프로그램은 영원한 것이 아니다.근데 언제 업데이트해야 되지?보통 3년, 일부 회사는 2년 주기를 채택하지만 따르기 어렵다.그러나 통상적으로 3년은 두 주기(6-7년)로 연장된다.우리의 계획은 이보다 더 오래 지속되어서는 안 된다.
왜?

PHP 라이프 사이클입니다.


나뭇가지
최초 출시
까지
보안 지원
7.2
2017년 11월 30일.
2년 8개월 전
2019년 11월 30일
8개월 전
2020년 11월 30일
3개월 후
7.3
2018년 12월 6일
1년 8개월 전
2020년 12월 6일
3개월 후
2021 12월 6일
1년 3개월
7.4
2019년 11월 28일
9개월 전
2021 11월 28일
1년 2개월
2022년 11월 28일
2년 2개월
약 3년.PHP는 다섯 살 때부터 요동치는 여정을 겪었다.x에서 7.x. 하지만 지금은 상당히 안정적입니다.그러나 그것은 몇 가지 변화가 있고 미래에 더 많은 수정이 있을 것이다.
PHP 5.6는 6년 전에 출시되었고 몇 년 전에 단종되었다.그러나 (w3techs에 따라)
  • 78.9%의 웹 사이트에서 PHP를 사용합니다.
  • 35.0%의 사이트가 5판을 사용한다.
  • 그러나 내부 네트워크 시스템 같은 전체 화면을 보여주지 않았다.어쨌든 PHP 5.6은 여전히 활발하다.
    기록되기 위해 모든 버전의 PHP 7에서x
    버전 7.2
    33.3%
    버전 7.3
    27.8%
    7.0 버전
    13.7%
    버전 7.1
    13.3%
    버전 7.4
    11.9%
    따라서 일부 시스템만 최신 버전의 PHP를 사용합니다.

    왜 PHP 5.6은 여전히 존재합니까?


    왜 안 해요?PHP 5.6 속도는 매우 느리고 (PHP에 비해) 이 방면에 약간의 빈틈이 존재하지만, 그 외에 고객들은 결과에 만족하기 때문에 그들이 적은 수익을 얻을 수 있는 것들을 변경할 필요가 없다.

    안전


    업그레이드 또는 기타...

    안전성은 통상적으로 일종의 환대로 쓰인다. "또는 업그레이드, 또는..."그러나 통상적으로 그것은 작용하지 않는다.어떤 상황에서도 PHP 5.6을 사용하면 시스템의 안전을 확보할 수 있기 때문에 이 매개 변수는 확실히 좋은 선택이다.
    예를 들어 당신이 차를 한 대 샀는데 5년 후에 어떤 사람이 말했다. "당신은 그것을 버리고 새 차를 사야 합니다. 왜냐하면 그것은 안전하기 때문입니다."그러나 당신은 자신을 회상하며 말했다. "하지만 그것은 아주 잘 일하고 안전하다."어쩌면 이것은 틀렸을지도 모르지만, 이것은 대다수 사람들이 생각하는 것이다. "만약 그것이 나쁘지 않다면..."

    개발상


    개발자에게 "너는 업그레이드해야 해!"라고 말하기 쉽다.주로 그들이 그것으로 돈을 벌기 때문에, 그들은 돈을 지불하지 않는다.그러나 이 시스템이 크거나 복잡하면 많은 돈과 시간을 들일 수 있기 때문에 대가를 치러야 한다.
    그래서 개발자들이 언제 업그레이드할지 전화를 하지 않는 이유다.

    반짝이는 새로운 사물



    그러나 설령 우리가 우리의 시스템을 업그레이드한다 하더라도 우리는 새로운 반짝이는 것을 강요당하지 않을 것이다.예를 들어 일부 개발자들이 PHP 5.6에서 7.0으로 뛴 거 알아요?PHP 7.0이 단종되었습니다 (심지어 PHP 5.6 이후).PHP 7.0은 이렇게 새롭고 실험적이어서 일부 기능은 몇 달 안에 멈추었다.만약 우리가 새로운 기능을 사용한다면, 우리는 기술이나 기능을 채택하고 받아들일 수 있으며, 이러한 기술이나 기능은 단시간 내에 멈출 수 있다.
    따라서 우리는 (가능한 경우) 시스템을 업그레이드할 수 있지만, 그것은 단지 새로운 것이기 때문에 모든 새로운 기능을 사용하는 것과 다르다.
    예를 들어, PHP의 유형 프롬프트
    function enroll(Student $student, School $school) {
    echo "Enrolling " . $student->name . " in " . $school->name;
    }
    
    기술적으로 말하자면, 이것은 암시가 아니다.검증 중입니다.함수를 호출할 때마다 형식을 검증합니다.만약 중요하고 반복적인 수술에서 사용한다면 성능에 영향을 줄 수 있다.우리 장르 힌트 필요해?사실이 아닙니다. PHPDoc은 함수를 호출할 때마다 검증하지 않고 IDE에서 같은 작업을 수행할 수 있습니다.

    업데이트 및 업그레이드.


    업데이트와 업그레이드 사이에는 큰 차이가 있다.업데이트는 일반적으로 오류를 수정하거나 새로운 기능을 추가하는 데 관련된다.업그레이드는 시스템을 개조해야 하기 때문에 처음부터 시스템을 재건하는 것은 드물지 않다.때로는 기존 시스템을 업그레이드하는 것이 아니라 0에서 시작하기 쉽다.

    TDD 구조


    응, 진짜가 아니야.우리의 프로그램은 세계에서 고립적으로 작동하는 것이 아니다. 설령 우리의 시스템이 테스트를 통과했다 하더라도 버그가 없다는 것을 의미하지는 않는다.왜?
  • 테스트 세트는 일반적으로 완전하지 않다.그것은 100% 덮어쓸 수 있지만, 이것은 모든 사례를 포함한다는 것을 의미하지는 않는다.
  • 일부 기능은 테스트 범위 내에 있지 않으며 예를 들어 브라우저, 데이터베이스 등이다.
  • 코드 남기기


    조만간 (우리가 코드를 죽이지 않는다면) 우리의 코드는 남겨진 코드가 될 것이다.코드가 남아 있는 것은 막다른 골목이다.우리는 더 이상 업그레이드할 수 없다. 때때로 우리는 이렇게 적은 것을 얻을 수 있다.

    일단 그것이'유류 모드'에 처하게 되면, 우리가 그것을 죽이든지, 아니면 우리가 계속 지지하든지, (가능한 경우)
    예를 들어 PHP는 PHP 5.6에서 PHP 7.0으로 마이그레이션하는 데 작은 노력을 기울일 수 있지만 PHP 5.3 또는 PHP 5.4에서 마이그레이션하는 것은 도전입니다. 특히 기존 라이브러리를 사용하면서도 계속 사용하고 있습니다.

    좋은 웹페이지 즐겨찾기