MVC, WCF, EF, LINQ-그냥 나인가요? [닫은]


17

... 또는 상황이 더 복잡해 집니까?

요즘 MS 웹 앱을 '적절하게'개발하려면 많은 것을 알아야 할 것 같습니다. 예전에는 데이터베이스 테이블, ASP.NET, ADO.NET을 더 잘 알지 못했지만 비교적 간단한 개념을 사용하여 웹 앱을 만들었습니다.

요즘에는 '올바른'일을 '도움'하기 위해 많은 프레임 워크가있는 것처럼 보이지만 이것이 더 쉽고 더 좋을 것이라고 확신하지는 않습니다. 나는이 감정에 대해 소수의 사람들이 될 것 같은 느낌이 들지만, 거기에 약간 화가 났다고 생각하는 다른 사람이 있습니까?


MVC = ASP.Net, WCF = 웹 서비스 + .Net Remoting, EF = ADO.Net, Linq는 일부 foreach 루프를 대체합니다. 이제는 이전과 같이 많은 프레임 워크가 있습니다.
vortexwolf

존 나는 당신에게 '부분적으로'동의해야합니다. 저는 현재 .Net 기술을 연마하고 있습니다. 확실히 5 년 전보다 더 많은 것을 할 수 있습니다.
TeaDrinkingGeek

MS 분야에는 많은 DB 기술이있을 수 있지만이 질문은이 사이트에서 실제로 다루지 않는 주제입니다. 그것은 실제로 질문을하지 않고 "... 아, 맞지?" rant 카테고리는 FAQ
Walter

답변:


17

그 모든 것은 선택 사항입니다. 도움이된다면 사용하십시오. 그렇게 간단합니다. 당신은 당신의 솔루션에있는 두문자어없이 좋은 / 적절한 웹 앱을 작성할 수 있습니다.

개인적으로 MVC는 매우 가볍고 사용하기 쉬운 프레임 워크 인 것으로 보입니다 (webforms, imo보다 시작하기가 훨씬 쉽습니다). 마찬가지로 LINQ는 일반적인 쿼리 방법을 제공합니다. 또한 좋습니다. EF와 WCF에 동의하지 않았지만 그럴 때는 사용하지 않습니다.


2
'도움이되면 사용하세요'+1 나는 규칙을 사용하려고 시도하고 모든 프로젝트에서 1 개의 새로운 '일'을 시도하십시오. 잠시 후 많은 것들에 대한 경험이 있고 더 많이 사용할수록 일이 쉬워지는 것을 볼 수 있습니다.
Jan_V

'모든 프로젝트에서 1 개의 새로운 일을 시도하십시오'를 위해서도 +1하십시오. 나는 배우고 성장하는 것도 좋아합니다.
Paul

1
나는 모든 프로젝트에 1 새로운 일을하려고 노력하지만, 새로운 것은 내가 지난 프로젝트 : 이제 사용되지 않습니다 배운 때문 보통이다
gbjbaanb

9

아니 정말. LINQ는 데이터베이스와 상호 작용할 때 얇게 썬 빵 이후 가장 큰 것입니다.

기억해야 할 것은이 것들이 다른 것들 위에 세워져 있다는 것입니다. LINQ는 SQL을 알 필요가 없기 때문에 ASP.NET 웹 사이트를 개발하는 데 필요한 많은 것을 추가 하지 않습니다 . 그리고 LINQ는 OO로, 정기적 인 응용 프로그램 개발에 훨씬 더 부합하므로 SQL보다 완벽한 작업이 쉬워지고 C #과의 통합이 훨씬 쉬워집니다.

만약 LINQ가 SQL보다 쉽다고 생각하지 않는다면 아마도 새로운 패러다임에서 어려운 것의 몇 가지 예를 게시해야 할 것입니다.

더 중요한 것은 이전의 웹 사이트에는 기능이 훨씬 적었습니다. 같은 코드에서 더 나은 성능, 확장 성 및 새로운 기능을 제공하는 새로운 웹 사이트를 어떻게 만들 것입니까?


4
LINQ의 왼쪽 조인은 SQL보다 어렵습니다. 또한 데이터베이스 문제를 해결하려는 경우 어쨌든 SQL을 살펴보아야합니다. 또한 SQL을 아는 것은 Microsoft 이외의 개발 플랫폼으로 이동하려는 경우 도움이됩니다.
btilly

10
ORM 프레임 워크는 SQL만큼 강력하지 않습니다. ORM 프레임 워크에서 수행 할 수없는 옆에 수행해야 할 쿼리가 있습니다.
bit-twiddler

1
@ bit-twiddler> 그렇기 때문에 대부분의 ORM 프레임 워크에서 원시 SQL (또는 sproc)을 실행할 수 있습니다. 좋은 C # 담당자가 대부분의 보행자 쿼리를 작성하도록 할 수 있으며 DB 전문가와 같은 어려운 전문가는 sproc 또는 view로 어려운 내용을 패키징 할 수 있습니다.
Paul

1
대규모 데이터베이스를 설계하고 많은 클라이언트 측 및 서버 측 SQL을 작성하는 동안 DBA는 아닙니다. 저는 소프트웨어 엔지니어입니다. 저는 숙련 된 소프트웨어 개발자가있는 곳에서 일한 적이 없습니다. 어느 날이든 C, C ++, Java, Object Pascal, PL / SQL 또는 Intel 어셈블리 언어로 코드를 작성할 수 있습니다 (Turing Complete가 아니기 때문에 프로그래밍 언어로 HMTL, XML 및 CSS를 계산하지 않습니다). 내 도구 세트와 Tomcat 기반 테스트 환경도 유지 관리합니다 (팀의 모든 직원은 자체 Tomcat 서버를 보유하고 있음).
비트 트위 들러

1
SQL을 몰라도 데이터베이스 (LINQ-to-SQL, LINQ-to-Entities)와 상호 작용하기 위해 LINQ 작성 중 ...? 재난을위한 레시피.
Kirk Broadhurst

3

언급 한 이전 개념이 더 이상 작동하지 않으면 화를 낼 것이라는 데 동의하지만 새로운 프레임 워크는 대안입니다. 맹인 수용은 화를 낼 것입니다. 정당화해야합니다. 개인적으로 SQL 자체는 나에게 문제가되지 않습니다. 현대 웹 사이트의 기능 중 일부를 추가하려고하면 webforms가 더 이상 절단하지 않습니다.

일부 고전적인 ASP 사람들은 .NET에 대해 똑같은 방식으로 생각했지만 그 논쟁을 계속 할 수있는 사람은 거의 없습니다. 나는 고전적인 ASP로 몇 개의 사이트를 만들고 돌아 가지 않을 것이다.


2

"조금 미쳤어". 이것이 바로 DataSetADO.NET, ASP.NET 솔루션을 설명하는 방식 입니다. :)

더 배울 것이 많다는 데 동의하지만 언급 한 각 프레임 워크는 .NET 개발을 개선했습니다.


0

나는 이것이 거의 모든 프레임 워크 또는 (개발자) 플랫폼에 영향을 줄 수있는 글로벌 문제라고 말합니다. 새로운 프레임 워크가 출시되면 일반적으로 작고 간결 해 보이지만 시간이 지남에 따라 새로운 기능 / 기능 / API가 포함됩니다 (로드맵 / 요청, 새로운 개념 / 트렌드 / 기술 또는 단순히 진화에 의해). 당신은 "한 가지 일을하는 방법"으로 시작했고 이제는 더 많은 가능성을 선택할 수 있습니다 (그리고-당신은 어느 것을 선택할지 모르거나 확실하지 않습니다). 새로운 것을 배우는 데 시간이 오래 걸릴 수 있지만, 이전에는 제한된 옵션 세트로 해결되었던 동일한 문제에 대해 훨씬 더 유연하고 빠르거나 더 나은 솔루션을 제공 할 수 있습니다.

나는 한때 재미있는 말을 우연히 발견했다. "모든 코드는 충분한 시간과 손이 주어지면 s #! t로 바뀐다"-IMHO는 기존 프레임 워크 내의 새로운 것들이 새로운 아이디어를 실천하고 진화시키기 위해 나타나야하는 이유를 요약합니다.

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