반응형

C# & .NET 7

비주얼 스튜디오 C# 언어 버전 바꾸기 (ft. .NET Framework)

환영합니다, Rolling Ress의 카루입니다. ​ 오랜만에 써보는 프로그래밍 글이네요. 그런데 이건 VS 관련 얘기라 짧게만 설명하고 끝내겠습니다. 이후 일정이 밀려가지고 살짝 바쁘네요 (^^,,,) ​ 보통 비주얼스튜디오로 C# 프로젝트를 만들면 .NET 6 (혹은 5)와 .NET Framework 중에 선택을 할 수 있습니다. C#을 처음 배우시는 분들은 .NET 6를 선택하시면 됩니다. 이게 기존에는 .NET Core와 .NET Framework로 나뉘었는데, 이것들이 통합이 되면서 .NET 5가 되었고, 그게 6으로 이어진 겁니다. .NET Framework는 이제 사실상 버려지는 단계를 밟고 있다고 볼 수 있습니다. 그런데 UWP 또는 WPF 등 일부 C# 프로젝트의 경우 강제로 .NET F..

C# & .NET 2022.10.21

[C# 10.0] C#의 편리한 구문들 모음 (Syntax Sugar)

환영합니다, Rolling Ress의 카루입니다. 오늘은 C# 의 여러 편리한 문법들을 소개해드리려고 합니다. 처음에는 C# 코드들이 상당히 번잡하다는 느낌이 들었는데, 8.0부터 점점 간결해지더니 10.0 현재는 오히려 다른 언어들에 비해서도 상당히 깔끔해졌어요. 하나씩 살펴봅시다. ** C# 10.0에만 한정된 내용은 아닙니다. 7.x부터 9.0까지의 내용이 섞여있습니다. 1. 최상위문(Top-level statements) (C# 9.0) 사실 이건 쓸 일이 많지 않아보이는데, 그래도 간단한 테스트용으로는 충분히 요긴하게 쓸 수 있으니까 가져와봤습니다. C# 9.0 이상 환경에서 동작합니다. 기타 프로젝트에서는 을 Preview로 설정해주세요. using System; namespace Applic..

C# & .NET 2022.02.23

[C# UWP] UWP에서 설정값 저장하고 불러오기

환영합니다, Rolling Ress의 카루입니다. ​ GGHS Time Table을 개발하면서 이제껏 설정값을 그냥 StorageFile 클래스로 걍 파일에 텍스트로 읽고 쓰며 저장했습니다. 그러다가 XmlWriter에 대해 알게되고 그 뒤로는 그걸 써왔는데, UWP에서 제공하는 아주 쉽고 간단한 방법이 있더군요. // 설정 쓰기 SubjectList list = new(ttc.Korean.Selected, ttc.Math.Selected, ttc.Social.Selected, ttc.Language.Selected, ttc.Global1.Selected, ttc.Global2.Selected); DataWriter writeSubject = new(DataFile, list); DataWriter wr..

C# & .NET 2022.02.23

[C# UWP] UWP에선 ConfiguraionManager 대신 이걸 사용하세요

환영합니다, Rolling Ress의 카루입니다. 보통 앱을 개발할 때, SQL 등의 connectionString은 app.config 에 넣어두죠. 그리고 C# 에서는 ConfigurationManager을 이용해 불러들입니다. 그게 이상처럼만 잘 된다면 얼마나 좋을까요. 계속 오류가 났습니다. 보아하니 UWP 플랫폼에서는 특유의 폐쇄성으로 인해 ConfigurationManager가 제대로 동작하지 않는다는 모양이에요. File 클래스도 사용하지 못해서 Windows.Storage의 클래스들을 사용해야만 하는데, 여러모로 불편합니다.​ ConfigurationManager and AppSettings in universal (UWP) app I would like to store an API key..

C# & .NET 2022.02.23

[C# ML] C#으로 머신러닝 모델 구축하기 (ML.NET)

환영합니다, Rolling Ress의 카루입니다. import sklearn import tensorflow 보통 머신러닝과 딥러닝 학습을 할 땐 파이썬을 사용하죠. ​ 그런데 제 주력 언어는 C#입니다. (원래는 C++이었지만, 최근에 UWP 개발을 하면서 바뀌었어요...ㅎㅎ) 그런데 C#에서는 파이썬의 사이킷런과 텐서플로를 이용하기 힘들죠. 뭐, IronPython을 이용해서 편법을 쓸 수는 있어요. 그런데 C#에서는 dynamic으로 받아야 하고, 무엇보다 C#은 컴파일 언어인데 비해 파이썬은 인터프리터 언어라, 괴리감이 엄청납니다. 그래서 힘들더라고요. https://dotnet.microsoft.com/en-us/learn/ml-dotnet/get-started-tutorial/install M..

C# & .NET 2022.02.20

[CS1545] GGHS Todo V1.5A, 오류와의 싸움

환영합니다, Rolling Ress의 카루입니다. ​ 아, 딱히 환영하진 않아요. 제가 지금 무지하게 스트레스를 받은 상태거든요. 문제의 원흉입니다. CS1545에러. 프로퍼티나, 인덱서나, 이벤트가 지원되지 않는다고 합니다. 이게 무슨 소리일까요? 음... 잘 모르겠어요. Microsoft에서도 확실한 대답을 해주지 않아서요. 심지어 뭐 어느 파일에 문제가 있다, 이것도 아니고... 그냥 GGHS Todo 프로젝트가 문제다! 이러면 제가 어떻게 아나요. 이걸 다 갈아 엎어야 하는데. ​ 저는 맨 처음에 Visual Studio 2022 Preview의 버그인 줄 알았습니다. 그래서 전체 재설치도 해봤는데...문제가 안 없어지더라고요? 그래서 계속 일주일 동안 삽질을 하다... 그냥 다른 방법을 선택했습..

C# & .NET 2021.10.17

C# 9.0: switch의 기능, 이젠 이런 것까지?

환영합니다, Rolling Ress의 카루입니다. ​ 에...제 주력 언어는 원래 C++입니다. 그런데 요즘에 UWP 앱을 개발하면서 (거의 반 강제적으로) C#을 쓰게 되었는데, 재밌네요. 특히 비주얼 스튜디오에서 제공하는 C#의 강력한 인텔리센스 기능과 자동 완성 등이 너무 편해서 당분간은 C#을 애용하게 될 것 같습니다. ​ 오늘은 제가 특히 편리하다고 생각하는 C#의 문법 중 switch에 대해서 알아보겠습니다. 사실 'switch ~ case' 자체는 다른 언어에서도 종종 나와서 익숙하신 분들이 많을 겁니다. 주어진 식에 따라 분기를 나누는 역할을 하죠. int flag = 3; switch (flag) { case 1: DoFunc1(); break; case 2: DoFunc2(); brea..

C# & .NET 2021.05.14
반응형