PHP에서 프레임 워크가 필요합니까? [닫은]


9

PHP에서 프레임 워크가 정말로 필요한가요?

하나를 사용할 때의 장단점은 무엇입니까?


2
최근이 SO 게시물을 가로 질러 그 프레임 워크없이 PHP의 사용에 관한 오히려 통찰력 외모 stackoverflow.com/questions/3655145/...
매트 몰 나르

답변:


17

아뇨. 그러나 그들은 좋습니다.

장점 : 코드를 직접 다시 작성하지 않아도되는 시간이 절약됩니다. 다른 사람이 프로젝트에 적용한 수많은 기능, 기능 및 데이터 구조를 사용하십시오.

단점 : 코드를 직접 작성하지 않으면 프로젝트가 운영되는 기초에 대한 이해도가 높아질 수 있습니다.


1
그러나 문제는 매일 사용하는 프레임 워크가
많다는

4
@Tayyab 당신은`em all을 사용해야합니다!
Arnis Lapsa

1
프레임 워크를 선택하는 것은 응용 프로그램의 요구와 코딩 스타일에 따라 결정하는 것입니다. 또한 자신에게 물어보십시오. 자신의 앱을 롤링하기위한 프레임 워크가 필요합니까? 또는 CMS (Joomla, Drupal 등)?
대런 뉴턴

2
"알 수없는 미지"에주의해야합니다. 만약 당신이 프레임 워크를 사용하지 않는다면, 프레임 워크가 당신을 위해 해결하는 것들을 잊거나 알지 못할 위험이 크다. 예를 들어, CSRF 공격 방지를 올바르게 처리하고 있습니까? 앱은 이러한 예방없이 작동하지만 쉽게 해킹됩니다. 주요 프레임 워크 (둘 중 하나)를 선택한다는 것은 아직 배우지 않았더라도 웹 앱이 관심을 가져야하는 모든 것들의 혜택을 누릴 수 있음을 의미합니다.
Joeri Sebrechts

9

웹 응용 프로그램 프레임 워크는 경험이있는 것만 큼 좋습니다.

모든 프레임 워크에는 학습 곡선이 있습니다. 해당 곡선을 극복 할 때까지는 프레임 워크 사용의 모든 이점을 무효화 할 수 있도록 작업을 거꾸로 수행해야 할 것입니다. 새로운 버전의 프레임 워크가 릴리스되면 응용 프로그램 개발이 불필요하게 느리게 진행되고 코드를 따르기가 어려워지고 모든 것이 깨질 것입니다. 마감 시간이 촉박 한 프로젝트에 익숙하지 않은 프레임 워크 (또는 익숙하지 않은 기술)를 사용하지 않는 것이 좋습니다.

프레임 워크를 어떻게 더 잘 활용할 수 있습니까?

당신은 신의 끔찍한 응용 프로그램을 구축하고 반복해야합니다. 결국 단점을 파악할 수 있으며 프레임 워크를 사용하면 개발 시간을 단축하고 코드를 체계적으로 정리할 수 있습니다.

PHP 프레임 워크를 사용해야합니까?

충분한 PHP를 코딩하는 사람은 결국 프레임 워크를 사용합니다. 문제는 자신의 프레임 워크를 사용하거나 타사에서 개발 한 프레임 워크를 사용하는 것입니까? 내 경험상, 타사 프레임 워크의 견고성과 품질에 맞는 자체 프레임 워크를 개발하지 않을 것입니다. 즉, 자신의 프레임 워크를 개발하는 것이 PHP 커뮤니티에서 통과 할 수있는 것 같습니다. 따라서 자신의 데이터베이스 추상화 클래스를 작성하지 못하게하십시오.

유용한 그래프는 다음과 같습니다.

여기에 이미지 설명을 입력하십시오


7

Rasmus Lerdorf 에 따르면 PHP 자체가 프레임 워크이므로 추가 프레임 워크가 필요하지 않습니다. http://toys.lerdorf.com/archives/38-The-no-framework-PHP-MVC-framework.html


잘 얘들 아 나는 biginner이고 나는 코드를 작성하려고 노력하고 나는 그것을 새로운 오전 php의 핵심 개발자가되고 싶어요 그래서 제발 녀석들 제발 날 제안하십시오
Tayyab Gulsher Vohra

3
그 기사는 2006 년에 발간되었으며 당황스럽게 구식입니다.
Jonathan Rich

1
@JonathanRich :이 기사는 최신 정보가 아닐지라도 여전히 당황스럽게도 흥미 롭습니다!

4

글쎄, 그것은 실제로 프로젝트의 크기에 달려 있습니다. 데이터베이스가없고 10 페이지를 넘지 않는 홈페이지 인 프레임 워크는 너무 커질 것입니다. 주로 프레임 워크는 대부분의 경우 특정 요구에 맞게 많은 구성과 사용자 지정이 필요하기 때문입니다. 그리고 어떤 상황에서는 파일에 포함 된 여러 페이지보다 약간 느릴 수 있습니다 (기능을 사용하려면 모든 프레임 워크를로드해야한다고 생각하십시오).

이제 데이터베이스 상호 작용, 웹 서비스 등을 사용하여 중간 규모 / 대형 사이트를 계획하는 경우 다양한 기술과 상호 작용하고 문제가 발생했을 때 코드를 구성하는 데 도움이되는 프레임 워크가 필요합니다. 신속하게 감지하고 복구 할 수 있습니다. 또한 클라이언트에 대해 생각하면 항상 소프트웨어에 대한 생각이 바뀌기 때문에 클라이언트가 새로운 기능을 수정하거나 추가 해야하는 경우 모든 코드를 통해 갈 필요가 없으며이 새로운 기능을 모두 어떻게 연결 해야하는지 생각할 필요가 없습니다. 이 sphagetti.

다른 많은 장단점이 있지만, 이들은 처음으로 내 마음을 건 crossed습니다.

편집 : 나는 매일 기지에서 symfony 프레임 워크를 사용하고 대학에서 PHP로 작업을 수행했습니다 (프레임 워크를 사용할 수없는 웹 개발에 대한 코스가있었습니다).이 대부분은 그 경험에서 비롯됩니다.


1
글쎄 PHP에서 초보자이고 어떤 일의 큰 아직 개발하지 않은 내가 사용하고있는 난 정말 내가 완전히 빈입니다 가야 무엇을 혼란에 오전
Tayyab Gulsher Vohra

첫 번째 단계는 그것들을 사용하지 않고 기술과 작동 방식을 배우는 것입니다 (php, framework, js, css 등) .php 프로그래밍의 기초를 이해하면 Zend, Symfony 또는 CakePHP와 같은 프레임 워크를 사용하여 배우십시오. 응용 프로그램을 향상시키는 방법
guiman

2

농담하는거야?

필요성은 사용에 달려 있습니다. 컴퓨터는 인류에게 필요하지 않으며, 자동차 등도 필요하지 않습니다.

장점 / 단점에 관해서는 각각 고유합니다!

내 프레임 워크에서 예제 코드를 보여주고 싶습니다.

class Product extends DatabaseRow {
    public $name='';
    public $price=0.0;
    public $images=array();
    public $description='';
    public table(){
        return 'products';
    }
}

$p=new Product();
$p->name='Bread';
$p->price=0.5;
$p->images=array('loaf1.jpg','bakery.jpg');
$p->description='Our premium diet bread.';
$p->save();

내가 거기서 뭘했는지 알아? 이 클래스는 상점의 모델 역할을합니다. OO 이외의 특별한 점은 무엇입니까? 테이블 또는 열이 존재하지 않으면 동적으로 생성됩니다. 설치 스크립트가 없습니다. 물론 이것은 내 프레임 워크의 특정 기능입니다. 그러나 당신은 아이디어를 얻습니다.


나는 실제로 두 프레임 워크를 사용하고있는 사람에게 u를 말하고 싶습니다. 하나는 codeigniter이고 다른 하나는 yii이며 핵심 개발자가되고 싶지만 내 OOP 개념은 그리 좋지 않습니다.
Tayyab Gulsher Vohra

$ p-> save () 메소드에서 'UPDATE'와 'INSERT'문을 어떻게 구별합니까?
Srisa

@Srisa-ID를 설정하지 않았습니다. 업데이트를 수행하려면 다음 $p=new Product($the_id); $p->load();이 필요합니다. load()전체 행을 덮어 쓰는 것이 아니라 행 병합입니다.
기독교

2

모든 응용 프로그램에 프레임 워크가 필요한 것은 아니지만 대부분의 응용 프로그램에는 프레임 워크가 필요합니다.

장점은 다음과 같습니다.

  • 반복하지 마십시오. 새로운 응용 프로그램은 기존 응용 프로그램과 공통된 기능을 갖습니다. 자신을 반복하지 않는 것이 좋습니다. 프레임 워크는 대부분의 응용 프로그램에 필요한 기능을 번들로 제공합니다. 결과적으로 시간과 돈을 절약 할 수 있습니다.
  • 자신을 지치게하지 마십시오 . 일반적으로 소프트웨어 개발은 ​​상당히 힘들 수 있습니다. 평범한 것들을 자동화하는 것이 합리적입니다. 프레임 워크는 배관을 관리하므로, 창의적으로 집중하는 데 집중할 수 있습니다. 결과적으로 노력과 비용을 절약 할 수 있습니다.

단점은 다음과 같습니다.

  • 우리의 길 또는 방법 -당신은 프레임 워크의 엄격한 규칙을 따라야 할 수도 있습니다.
  • 획득 한 프레임 워크 증후군 -가장 간단한 작업을 수행하기에는 프레임 워크에 너무 의존 할 수 있습니다. 프레임 워크가 모든 것을 통해 손을 잡고 있기 때문에 요청을 라우팅하고 데이터베이스에 액세스하고 개체를 데이터베이스 쿼리에 매핑하는 방법 등을 잊게됩니다.

대체로 하나를 사용하는 것이 좋습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.