Microsoft MVP성태의 닷넷 이야기
Windows Form Application는 사라질까요? [링크 복사], [링크+제목 복사]
조회: 12779
글쓴 사람
초급개발자
홈페이지
첨부 파일
 

안녕하세요?
현재 까지 C#으로 주로 Windows Form개발만 했는데
점점 신기술에 뒤쳐지는 기분이네요..
MS가 UWP만 밀건지.....
그래도 복잡한 전문가용 프로그램은 윈폼으로 개발 되지 않을까요?
UWP보단 윈폼에서 표현할 수 있는게 많을거 같은데...
성태님은 어떻게 예상하고 계신지 궁금해서 글 올려 봤습니다...
앞으로의 트랜드에 대해서 조언 부탁 드립니다...^^...
감사합니다....








[최초 등록일: ]
[최종 수정일: 6/7/2016]


비밀번호

댓글 작성자
 



2016-06-07 03시25분
UWP는 그 환경이 너무 독특하기 때문에 윈폼의 경쟁 상대는 아닙니다. 오히려 WPF 응용 프로그램이 윈폼의 대체제라고 보시면 됩니다. 말씀하신 복잡성이라면, 그 복잡한 비주얼 스튜디오 IDE 자체도 WPF로 만들어졌다는 것을 감안하면 윈폼이 딱히 그 부분에 경쟁력이 있어 보이진 않습니다.

이런 면에서 봤을 때 WPF를 공부하지 않아야 할 이유는 없습니다. (UWP도 덤으로 따라오는 것을 감안하면 배워둘 가치가 충분히 있습니다.)

그렇지만 윈폼은 그 기반이 되는 Win32 구조가 살아있는 한 절대 사라지지 않을 것입니다. 또한 명백히 ".NET Full Framework"라는 배포본이 존재할 것이므로 윈폼이 거기서 제외될 가능성은 거의 없을 거라 봅니다. (설령 제외시킨다 해도 어셈블리 자체가 원래도 독립적이었기 때문에 별도 배포로도 얼마든지 살아 있을 수 있습니다.)

윈폼이 사라질 걱정은 안하셔도 되지만, 어쨌든 신기술에 뒤쳐지는 기분을 느끼는 것은 그다지 좋은 신호는 아니라고 보입니다. ^^
정성태
2016-06-08 08시05분
[spowner] 윈도 어플리케이션을 Windows Forms으로 만드는 저로서는, MS가 Windows Forms에 대한 기능 개선을 하지 않는 것에 대한 약간의 아쉬움은 있습니다.
익숙한 것이 좋다고, Windows Forms에 너무 많이 익숙하거든요. 회사 입장에서는 생산성도 굉장히 중요하므로... 그렇습니다.
어쨌든, Windows Forms의 기반 컨트롤들은 여러 상황에서 상당히 비효율적으로 동작하긴 합니다. 대표적인게 DataGrid 컨트롤 입니다.
GridLayout같은 경우, 있는 그대로 쓰려면 정말정말 느리게 동작을 하고요, 여러가지 커스터마이징 하는 기법이 있긴 한데, 가령, 배경 이미지가 들어갔다 치면...
이래저래 많이 느려집니다. 결국에는 저희고 WPF를 공부해서 사용해봐야 하는 입장이고요, WPF의 기본 성능이 얼마나 Windows Forms보다 뛰어나느냐는 확인해봐야 겠지만...
아래 성태님이 말씀하신 것 처럼 Visual Studio IDE가 WPF로 만들어졌기 때문에, 나름의 최적화는 꾸준히 이루어지지 않을까 하는 기대감이 있습니다. ㅎㅎ
UWP도 같이 공부해보시는건 당연히 좋구요. 하지만, UWP의 영역은 아래 성태님이 말씀하신 것 처럼 좀 영역이 다릅니다. UWP로 윈도 어플리케이션을 개발할 수 있지만,
아직까지는 많이 제한적인것 같더라고요... 가령, App의 배경화면을 투명으로 하고 싶은데, UWP로는 불가능 한것으로 알고 있습니다.

[guest]

... 31  32  33  34  35  36  37  38  [39]  40  41  42  43  44  45  ...
NoWriterDateCnt.TitleFile(s)
4879aos8/27/201710025DateTime 표시할 때 포맷 설정시 밀리초까지 포함하는 법이 궁금합니다 [1]
4878heyh...8/25/201710109프로세스의 프로세스 찾기(?) [2]
4877강준8/24/20179311SQLite journal_mode=wal 관련하여 질문드립니다. [1]
4876heyh...8/23/20179539프로세스 초기화하기 [1]
4874ho8/22/20179614파일 확장자명을 이용해 파일의 실행 프로그램의 전체 경로를 얻어 올 수 있을까요? [1]
4875ho8/23/201710590    답변글 [답변]: 파일 확장자명을 이용해 파일의 실행 프로그램의 전체 경로를 얻어 올 수 있을까요? [1]
4873kmi8/21/201711395전역 변수를 쓰지 않고 여러 군데에서 같은 변수를 공용하는 방법이 궁금합니다. [4]
4872abcd8/18/201710070프로세스를 초기화 하는 명령어도 있나요? [1]
4871kmi8/17/201711390메모리 부족으로 종료되는 현상의 여러가지 이유가 무엇인지 궁금합니다. [2]
4870heyh...8/14/201710202프로그램 실행시 중복일 때 버튼 색깔 원래대로 돌리기 [1]
4868kmi8/4/20179511string[] 에 Reverse 적용방법 질문해봅니다 [3]
4867heyh...8/4/20178997EventHandler에 관한 [1]
486610년차8/3/20179430dsoframer axframer open시 기존 오픈되어있는 엑셀을 먹어버리는 현상 [1]
4865heyh...7/31/201710985클릭원스로 배포 한 프로젝트가 끝났는지 알 수 있는 방법 [8]
4864초보자7/28/20179990DllIImport질문 드립니다. [1]
4863다연아빠7/23/201710213전역 예외처리에 대해 질문있습니다. [3]
4861라르크7/17/201715477window form 예제 따라하는 중인데 12.3 서비스 응용 프로그램에서 진행이 안됩니다. [3]파일 다운로드1
4859heyh...7/10/201710115다른 환경에서 실행하기 [1]
4858heyh...7/10/20179964Clickonce update에 관한질문입니다. [1]
4857heyh...7/7/201710599제가 여태까지 작성한 보고서입니다. [2]파일 다운로드1
4856heyh...7/6/20179313성태님 다른질문입니다. [4]
4855JP7/6/20179992Dispose 패턴 구현시 Finalize 재정의에 대한 질문드립니다. [2]
4854heyh...7/6/20179437
4853heyh...7/5/20179539성태님이 작성한대로 해봤습니다. [1]파일 다운로드1
4852김레오7/4/201711704서드파티 dll 디버깅에 대해 질문드립니다. [2]
4851김현준7/3/201710816Datagridview VirtualMode 시 GC가 계속 호출되는 현상이 이해가 안갑니다. [2]
... 31  32  33  34  35  36  37  38  [39]  40  41  42  43  44  45  ...