Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Code Block
languagec#
themeEmacs
List<Person> persons = new List<Person>()
{
    new Person { PersonId = 1, car = "Ferrari" },
    new Person { PersonId = 1, car = "BMW" },
    new Person { PersonId = 2, car = "Audi"}
};


List<Result> results2 = persons
    .GroupBy(p => p.PersonId, 
             (k, c) => new Result()
                     {
                         PersonId = k,
                         Cars = c.Select(cs => cs.car).ToList()
                     }
            ).ToList();
이러한 코드를 작성할줄아는것이 마치 고급개발자인것처럼 포장되는경우도 있다. 
이것이 지원되지 않는 언어는 구닥다리 언어인것처럼 배척하기도한다.

하지만 수많은 도메인을 처리한 경험있는 개발자에 의해 작성된 코드들은 위와같이 우아한 방식을 사용하지 않고도

성공적인 프로젝트를 수행하였고 수익을 내고 있다.  이러한 충돌은 항상 다른환경의 개발자 사이에 존재해왔으며

더 본질적이고 중요한 가치에대해 토론을 하고 선택을 해야할것이다.


여기서 자바/닷넷  혹은 최근 핫한 스칼라등에서 위와같은 컨셉이 자신이 최근배운 언어스펙에서

...