LINQ 마스터를 꿈꾸며 dotnet github에 올라온 101 LINQ samples를 풀어보자는 다짐에 일단 올린 slog입니다. Coming soon…
Chapter0
닷넷 개발자로 커리어를 시작하면서 처음 LINQ를 접했을 때 하나의 공통의 질의문으로 다양한 형태의 데이터를 처리하려는 시도구나(?) 정도로 이해했습니다.
한마디로 C#버전의 SQL 정도로 말이죠.
햇수가 한해 한해 늘어가면서 워낙 많이 쓰다보니 자연스래 익숙해지긴 했으나 이해의 깊이가 얇다는 의심은 지울 수 없었습니다. 너무나 막연했죠. 회사에선 당장 만들어 내야하는 작업물이 중요하지 기술언어가 중요한건 아니니까요. 항상 후순위로 미뤄왔습니다.
그리구 저희 C#이 대한민국에선 마이너 포지션이라 그런가 활발하게 논의되는 커뮤니티도 잘 없었고요. 느낌상 대충 브론즈~실버쯤 되는거 같은데 렝겜이 안잡히니 알수가 없는거죠.
그러다 닷넷데브를 만났습니다. 역시나 C#이 주력이라 그런지 LINQ와 관련된 최신 아티클이 계속 올라오고 재야의 숨어있는 LINQ 고수님들의 고민과 토의들을 쉽게 접할 수 있었죠. 깊이의 격차는 명확했고 이제야 알을 깰 수 있게 되었습니다.
이 slog는 이 무지의 알을 깨기위한 첫 발걸음 입니다.
사실 첫글을 쓰고 2주정도 지나서 다시보니 101 LINQ samples는 조금 섣부른 선택이였다고 생각합니다. samples은 내용이 그렇게 많지 않고 설명도 부실해서 이거만 가지고는 깊이 있는 공부를 하긴 어려워 보이더라고요.
그렇다고 LINQ의 개념부터 시작하기엔 너무 내용이 방대해지는거 같에서 한 챕터씩 작성해 나가면서 차근차근 내용을 보충해보려 합니다.
챕터는 우선 samples에서 정리한 그대로 총 14개로 계획하고 있고요. 제목은 아래와 같습니다.
Chapter1. Restrictions
Chapter2. Projections
Chapter3. Partitions
Chapter4. Orderings
Chapter5. Groupings
Chapter6. SetOperations
Chapter7. Conversions
Chapter8. ElementOperations
Chapter9. Generators
Chapter10. Quantifiers
Chapter11. AggregateOperators
Chapter12. SequenceOperations
Chapter13. QueryExecution
Chapter14. JoinOperations
slog 제목에 적어둔것처럼 이 글은 누구를 가르치기 위한 지침서가 아닙니다.
단지 쪼랩의 고민과 분투가 담긴 수련기일 뿐이니 잘못된 내용이 보인다면 괘념치 말고 바로바로 말씀해주세요. 공부하겠습니다.
감사합니다.