2009-06-23 5 views
7

저는 .NET 개발자입니다. 나는 파이썬에 대한 경험이 없다. 어느 플랫폼이 더 확장 성이 있습니까? 어떤 플랫폼이 대형 트래픽이 많은 웹 사이트에 더 적합합니까? 이 플랫폼에서 확장성에 대한 경험이 있다면 알려주십시오.웹 개발을위한 Python/Django 또는 C#/ASP.NET?

감사합니다.

답변

14

내가 Python을 좋아하기 때문에 (C#에서 매우 숙련되어 있고 "파이썬에 대한 경험이 없다"), 코드가 더 확장 성이 있으며 당신이 가장 잘 아는 것을 고수한다면 적합 할 것입니다 (앞으로 몇 달 동안, 적어도). 두 플랫폼 모두에서 매우 숙련 된 가상 개발자의 경우, 확장 성은 근본적으로 워시가 될 것이고 파이썬은 개발자의 생산성을 향상시킬 것입니다. 그러나 어떤 기술을 실제로 습득하는 데는 몇 달의 시간이 걸리지 만 마술처럼 "그냥"일어나는 것은 아닙니다.

귀하의 기술과 취업 기회를 넓히거나 생산성을 향상시키려는 것이 아니라, 지금 코딩하고있는 웹 응용 프로그램의 확장성에 중점을 둡니다. 좋은 양심을 가지고 C#을 고수 할 것을 권한다. 또한 IronPython을 사용해보십시오 (그리고 Mannings의 위대한 "IronPython in Action"책 가져 오기 - 바이어스 경고, 필자와 친구이고 그 책의 기술 검토 자였습니다 ;-) 모든 비 생산 지원 코드 , 그것을 맛볼 수있는 엄청난 생산성 향상과 고객에게 최상의 가치를 제공하기 위해 C#, 에 대해 제공하는 확장 성 중요 업무 그들에게!

13

거의 모든 잘 알려진 프레임 워크와 언어는 확장 할 수 있습니다.

어떤 것을 사용하든별로 중요하지 않습니다. 가장 중요한 코드를 얼마나 잘 구조화했는지에 대한 것입니다.

개인 수준에서는 항상 둘 이상의 언어를 알고있는 것이 좋습니다.

그러나 완벽하게 확장 가능한 Python, PHP, .NET 응용 프로그램을 만들 수 있습니다. 코드의 품질은 언어가 아닌 확장 성이 우선 순위입니다.

+0

사실 그렇습니다. 완벽한 프로그래밍이라면 ... 확장 성 때문에 .NET을 사용할 것이지만 안정성을 원한다면 PHP를 사용할 것입니다. –

3

데릭은 훌륭한 답변을 가지고 있으므로 반복하지 않을 것입니다.

그러나 한 가지 관찰하고 싶습니다. 요즘은 언어 선택이 중요하지 않지만 고성능과 확장 성이 정말로 필요하다면 파이썬의 동적 인 특성이 다시 돌아올 수도 있습니다. 동적 언어가 제공 할 수있는 모든 이점에 대해 이러한 이점은 추가적인 오버 헤드를 희생해야합니다. .NET 플랫폼은 완전히 컴파일 된 언어를 제공하며 컴파일 된 코드의 성능을 조정할 수있는 다양한 방법을 제공합니다 (ngen 지원 포함).

나는 그렇지 않습니다. .NET 컴파일 된 언어가 Python을 능가하는 성능 향상이 특정 응용 프로그램에 충분하다는 것을 알고 있지만 이미 .NET 개발자라면 ASP.NET을 사용하는 것이 최선의 선택 일 수 있습니다.

+0

예, 나는이 사실 (번역 된 언어와 번역 된 언어)에 대해 궁금해하고 있습니다. Google과 페이스 북과 같은 큰 총은 어떻게 해석 언어로 관리합니까?사소한 가장자리조차도 gmail과 you tube (심지어 파이썬은 맞습니까?)에 대해서도 큰 차이를 만들 것입니다. 인터프리터 언어가 컴파일 된 언어보다 최대 10 배까지 실행될 수 있다고 들었습니까? – gideon

+0

"날카로운"회사는 MS에 노예가되고 싶지 않으며 비용도 들지 않습니다. 실제로 잘 작성된 모든 구현물에서 충분한 하드웨어를 사용한다면 절대 완벽하게 살아남을 수 있습니다. 그렇기 때문에 페이스 북과 같은 회사는 PHP처럼 느린 것을 사용할 수 있습니다. 그러나 힙합으로 성능 문제를 해결하지 못하게 막지 않았습니다. 문제는 평균적인 Joe가 문제의 하드웨어 나 리소스를 던질 수 없다는 것입니다. C++, C# 및 Java는 performanceville의 언덕의 왕이며 C# .NET은 대규모 프로젝트의 신속한 개발을위한 견고한 솔루션입니다. – jsteinmann

1

Python을 통해 .NET을 사용할 경우 확장 성 비용이 추가됩니다. Windows Server 라이센스 비용 (최소한 일반적으로 SQL Server를 추가하는 비용)이 있습니다.

+1

Mono를 사용하면 ASP.NET 응용 프로그램을 Linux에도 배포 할 수 있습니다. (Apache와 nginx 서버에 ASP.NET 응용 프로그램을 배포 한 실제 경험이 있습니다.) Mono에 구현되어 있지 않은 .NET 기능을 사용하지 않는 한 Windows 라이센스가 전혀 필요하지 않으므로 금전적 비용은 실제로 문제가되지 않습니다. . – cdhowie

+0

일부 환경에서는 "서버 라이센스"에 대해 이야기 할 때 단일 Windows IIS 서버가 많은 웹 사이트를 제공 할 수 있습니다. 따라서 "확장 성 비용"은 팀, 리소스 등의 크기 때문에 사실상 논리적입니다. 대부분의 경우이 대답은 연속적이지 않습니다. – IAbstract

관련 문제