주간닷넷 2016년 10월 4일
여러분들의 적극적인 참여를 기다리고 있습니다. 혼자 알고 있기에는 너무나 아까운 글, 소스 코드, 라이브러리를 발견하셨거나 혹은 직접 작성하셨다면 Gist나 주간닷넷 페이지를 통해 알려주세요. .NET 관련 동호회 소식도 알려주시면 주간닷넷을 통해 많은 분과 공유하도록 하겠습니다.
금주의 커뮤니티 소식
Taeyo.NET에서 https://docs.asp.net의 ASP.NET Core 문서를 한글화하여 연재하고 있습니다.
On .NET 소식
지난주 On .NET에는 JB Evain와 Visual Studio 2015 Tools for Unity, 그리고 .NET 프로파일링 오픈소스 라이브러리 Cecil에 관해서 얘기 나누어보았습니다.
https://sec.ch9.ms/ch9/6fe0/899e4cc5-4b17-4342-8b71-2e708a5a6fe0/onnet20160929jbevain\_mid.mp4
이번 주 On .NET에는 .NET team의 Immo Landwerth와 NetStandard 2.0에 관해 얘기 나누어 보겠습니다.
금주의 패키지 - NAudio
Naudio는 오디오 파일의 읽기, 쓰기, 디코딩, 인코딩, 컨버팅 작업 등을 손쉽게 처리할 수 있는 라이브러리입니다.
아래의 코드는 오디오 파일 정보를 화면에 표시하는 예입니다.
금주의 자마린 애플리케이션 - Speech Central
iPhone 애플리케이션 Speech Central은 인터넷 웹 페이지를 직접 보고 있지 않아도 음성으로 웹 페이지 텍스트를 읽어주는 애플리케이션입니다. 활동 중에도 음성으로 새로운 뉴스를 전달받으실 수 있으며, 화면이 꺼져있는 상태에서도 동작이 됩니다.
금주의 게임 - Hand of Fate
Hand of Fate는 전략 카드게임과 액션, RPG 요소가 포함된 게임입니다. 플레이어는 자신의 카드를 전략적으로 사용할 수 있고 제시한 카드에 따라 액션, RPG 게임이 진행되는 특별한 방식으로 게임이 운영됩니다. Hand of Fate은 Defiant Development에서 Unity와 C#을 이용해 제작 했으며, 현재 Xbox One, PlayStation4와 Steam을 통해 Windows, Mac, Linux에서 즐기실 수 있습니다.
.NET 소식
- Scientist.NET 1.0 released! : Phil Haack가 Scientist.NET 1.0 릴리즈 소식을 공유했습니다.
- TLS 1.2 Comes to Mono – Update : Miguel de Icaza가 TLS 1.2 버전 소식을 공유했습니다.
- Storing and using secrets in Azure : Bertrand Le Roy가 Azure 환경에서 민감한 보안 정보를 안전하게 저장, 접근할 수 있도록 해주는 “Key Vault” 기능에 관해 설명합니다.
- An Experience Report of Moving a Complicated Codebase to the CoreCLR : Jeremy D. Miller가 기존 코드를 CoreCLR 코드로 전환한 경험에 대해 말합니다.
- Implementing Seeding, Custom Conventions and Interceptors in EF Core 1.0 : Alina Popa가 EF Core 1.0의 Seed 방법과 Convention, Interceptor 구현 방법에 대해 설명합니다.
- Cake for Visual Studio released and Announcing Cake for Yeoman : Alistair Chapman이 Visual Studio용 Cake 릴리즈 정보와 Yeoman 지원 소식에 대해 전해드립니다.
- How to debug a Cake file using Visual Studio Code : Martin Björkström이 Visual Studio Code를 이용한 Cake 파일 디버깅 방법을 공유했습니다.
- Optimising LINQ and Adding a verb to the dotnet CLI tooling : Matt Warren이 LINQ 최적화와 dotnet CLI tool에 사용자 명령을 추가하는 방법에 대해 설명합니다.
- Should I learn .NET Core? : Jon Hilton이 .NET Core의 개발 배경과 중요성에 대해 설명합니다.
ASP.NET소식
- Sharing Authorization Cookies between ASP.NET 4.x and ASP.NET Core 1.0 : Scott Hanselman이 ASP.NET 4.x와 ASP.NET Core 1.0 애플리케이션에서 인증 쿠키를 공유하는 방법에 대해 설명합니다.
- External Network Access to Kestrel and IIS Express in ASP.NET Core : Rick Strahl이 ASP.NET Core 애플리케이션에서 Kestrel 와 IIS Express 환경으로 외부 네트위크에 접근하는 방법에 대해 설명합니다.
- Localising the DisplayAttribute and avoiding magic strings in ASP.NET Core and Injecting services into ValidationAttributes in ASP.NET Core : Andrew Lock이 ASP.NET Core 에서 지역화된 문자열 표시를 위한 DisplayAttribute 사용 방법과 유효성 검증을 위한 ValidationAttributes 사용 방법에 대해 설명합니다.
- IdentityServer4, Web API and Angular2 in a single ASP.NET Core project : Damien Bod이 하나의 ASP.NET Core에서 IdentityServer4, Web API, Angular2를 사용한 프로젝트에 대해 설명합니다.
- Introducing the ASP.Net Async SessionState Module : Matt FJH가 ASP.NET Async SessionState 모듈에 대해 소개합니다.
- Strongly typed configuration in ASP.NET Core without IOptions<T> : Filip W가 ASP.NET에서 IOptions<T>없이 명시적으로 선언하는 방법에 대해 소개합니다.
- ASP.NET Core MVC Attribute Routing : Derek Comartin이 ASP.NET Core MVC Routing 속성에 대해 설명합니다.
- Using OpenID Connect : Shaun Luttin이 OpenID Connect 활용 방법에 대해 설명합니다.
F# 소식
- Ionide F# 2.5.0 for VS Code is released, now you can write in F# Interactive! : VS Code에서 사용가능한 Ionide F# 2.5.0이 릴리즈되었습니다.
- Function Application and Composition : David Raab가 F#의 함수지향적 문법 구조와 특징에 대해 설명합니다.
- Can programming be liberated from function abstraction? : Tomas Petricek이 F# 프로그램에서 함수의 의미를 설명합니다.
- Using the ALGLIB random forest with F# : Mathias Brandewinder가 F#에 수치해석 라이브러리인 ALGLIB을 이용한 random forest에 대해 설명합니다.
- Creating Slack Slash Commands With Azure Functions : Greg Shackles가 Azure Function을 사용하여 Slack Slash Command를 구현하는 방법에 대해 설명합니다.
- BuildStats.info |> F# : Dustin Moris Gorski가 빌드 상황을 표현해주는 그래픽 위젯 BuildStats.info의 사용 경험을 공유했습니다.
Xamarin 소식
- Stable Release: Cycle 8 Service Release 0, Preview : Xamarin Profiler 0.34.2, Preview: iOS Simulator (for Windows) Update 5 and Alpha Preview: Xamarin.Mac Support on MacOS 10.12 Sierra : Adrian Murphy가 Xamarin 업데이트 정보를 공유했습니다.
- HockeySDK 4.1.0 for Xamarin : HockeyApp Team에서 HockeySDK 4.1.0 for Xamarin에 대해 소개합니다.
- Iowa Caucuses Launch Inaugural Polling Apps with Xamarin : Lacey Butler가 Xamarin으로 미국 대선 여론 조사용 모바일 애플리케이션을 개발한 사례를 공유했습니다.
- Speech Recognition in iOS10 : Pierce Boggan이 iOS 10에서 음성 인식기능 사용 방법에 대해 소개합니다.
- Enhanced Notifications in Android N with Direct Reply, Android Archiving and Publishing Made Easy : James Montemagno가 Android N에서 Direct Reply를 이용한 알림(Notification)기능, Android 애플리케이션을 개발할때 백업과 배포를 더욱 쉽게 할 수 있는 방법에 대해 공유했습니다.
- The Xamarin Show #3 : Xamarin.Forms Performance Tips and Tricks, and Updating Azure Mobile SQLiteStore to 3.0 : Xamarin Show 3화에서는 팁&트릭 기능과 업데이트된 Azure Mobile SQLiteStore 3.0 버전에 대해 공유했습니다.
- Background Audio and Cross Platform Development with Xamarin (App Dev on Xbox series) : Nikola Metulev가 UWP 애플리케이션에서 배경 음악을 추가하는 방법에 대해 설명합니다.
- Xamarin vs. Native, Default Designer, and Type Names as Storyboard IDs : Colby Williams가 Xamarin vs. Native, Default Designer, Storyboard ID에 대해 설명합니다.
- Toast Notifications for Xamarin Forms, Proxy Pattern To Separate Dependencies, and Layered Dependency Injection : Adam Pedley가 Xamarin Forms의 알림기능, 종속성 분리를 위한 Proxy Pattern, Layered Dependency Injection에 대해 설명합니다.
- Realities of Cross-Platform Development: How Platform-Specific Can You Go? : Wallace McClure가 크로스 플랫폼 애플리케이션을 개발할 때, Xamarin 에서 각 플랫폼의 특징과 기능을 얼마나 잘 표현할 수 있는지 설명합니다.
- Debugging provisioning profiles on the command line : Larry O’Brien이 iOS, Xamarin에서 command line 명령을 이용해서 provisioning profiles 파일을 확인하는 방법에 대해 공유했습니다.
- How To Design Error States For Mobile Apps : Nick Babich가 모바일 애플리케이션 개발 시 적절한 예외 상황 정의 방법과 올바른 예외 페이지 구현에 대해서 설명했습니다.
- Back It On Up! Android and Xamarin and Backups! : Matthew Soucoup가 Android 환경에서 개인화 정보 저장/불러오기 기능 구현 방법에 대해 설명합니다.
- Improving layout performance on Android : Tomasz Cielecki가 Android에서 layout을 적절하게 배치하는 방법에 대해 공유했습니다.
- Genymotion and VirtualBox install issue : Corrado Cavalli가 Genymotion과 VirtualBox를 통해서 PC에 안드로이드 에뮬레이터 환경을 구축하는 방법에 대해 공유했습니다.
Azure 소식
- Azure Functions in practice : Troy Hunt가 Azure Functions에 대하여 설명합니다.
Games 소식
- [Unity] Creating a 2D Platformer (E13. max slopes) : Sebastian Lague가 슈퍼마리오와 같은 2D Platformer(PLATFORM GAME) 장르의 게임 구현 방법을 공유했습니다.
- Unity – 2D Movement (Part 3B) – Jump : Standard Jump : Pixel Make에서 2D Movement (Part 3B) - Jump 기능구현에 대해 설명합니다.
- Unity – 2D Movement (Part 4A) – Shoot : Spawn Bullet : Pixel Make에서 2D Movement (Part 3B) - Shoot 기능구현에 대해 설명합니다.
- Curated #UnityTips No. 15 by DevDog October 2016 : DevDog가 Unity 개발에 도움이 될 수 있는 15번째 팁을 공유했습니다.
- [Unity 5] Tutorial: How to make a climbing system like in Assassins Creed in Unity – part 9 : Game에서 ‘오르기(등반) 동작’ 구현 방법에 대해 설명합니다.
주간닷넷은 .NET Blog에서 매주 발행하는 The week in .NET을 번역하여 진행하고 있으며, 한글 번역 작업을 오픈에스지의 송기수 전무님의 도움을 받아 진행하고 있습니다.