전체 글
-
닷넷 3.5를 이용한 디자인 패턴의 구현 (4)DesignPatterns 2009. 8. 5. 02:32
이름에 짐작할 수 있듯이, Observer 패턴은 오브젝트의 상태를 관찰하는 데 사용된다. 이 패턴이 약간 변형된 패턴이 출판 (Publish)과 구독(Subscribe)이다 관찰 대상 오브젝트는 어떤 이벤트 혹은 이벤트들을 "출판"하고 이들을 주시하고 있던 오브젝트들(관찰자들)은 발생한 이벤트를 "구독"한다. 이것을 좀 더 단순화하기 위해, 두 패턴을 모두 Observer 패턴이라고 부를 것이다. 사실 이 두 가지 패턴의 차이는 보는 관찰 시점의 차이일 뿐이다. 쉽게 얘기해서, '당신이 나를 관찰하고 있나요? 와 내가 당신이 구독하려는 나의 이벤트를 출판하고 있나요? 의 차이와 같다. 전자는 나를 보는 관점이 타인이 시점이고 후자는 자신의 시점에서 일어나는 이벤트를 관찰하게 된다. Observer 패턴..
-
[MSDN Newsletter] Windows 7, 이제는 제대로 개발을 준비해야 할 때!MSDN News 2009. 8. 4. 23:03
본 메일은 2009년 08월 04일 기준으로 당사의 메일을 수신 동의하신 고객 분들에게만 발송되는 메일입니다. 메일 수신을 원치 않으시면 제목란에 "UNSUBSCRIBE"라고 적으신 후 회신하여 주십시오. 또한 프로필 센터를 통하여 뉴스레터에 대한 모든 구독 관리를 하실 수 있습니다. 주소: 서울특별시 강남구 대치동 892번지 포스코센터 서관 5층 (우편번호 135-777) 고객지원센터: 국내 1577-9700 / 해외 82-2-567-7881 ⓒ 2009 Microsoft Corporation. All rights reserved. 사용권에 대한 고지 사항 | 개인정보취급방침 및 청소년보호정책 | 문의처
-
닷넷 3.5를 이용한 디자인 패턴의 구현 (3)DesignPatterns 2009. 8. 3. 03:26
3.5 SP1 기준 MVC 다운 HTTP://ASP.NET/MVC ASP.NET MVC Framework 3.5 버전의 일부를 포함한 대부분의 닷넷 버전에서는 컨트롤로의 역할이 이벤트 치리기, 프레임워크, CLR,운영체제등으로 분산되어 있기때문에 MVC패턴을 쉽게 개발하지 못한다. 대신, 마이크로소프트는 n-티어 개발 방식을 강조했고 모델의 역할을 비즈니스 오브젝트와 데이터 오브젝트로 더 명확히 구분한다. 데이터 오브젝트는 많이 사용하는 ADO.NET클래스 라이브러리나 Entity Framework같은 형태로 제공된다 하지만 마이크로소프트는 ASP.NET를 위한 MVC Framework를 제공한다. 이 프레임워크는 닷넷 프레임워크에 MVC디자인 패턴을 매핑시켜 강력한 시너지 효과를 만들어 준다. ASP...
-
닷넷 3.5를 이용한 디자인 패턴의 구현 (2)DesignPatterns 2009. 8. 3. 00:57
N-티어 패턴 마이크로소프트는 매우 긴 시간 동안 n-티어 개발에 전념했다. 그것은 1999년에 소개되어 핸져는 거의 사양화된 DNA(Distributed interNet Architechture)의 핵심이었고, 현재는 닷넷의 핵심으로 남아있다 이전에는 N-티어라고 하면 "3계층 혹은 그 이상"을 의미했다. 필수적으로 요구되는 3계층은 UI를 담장하는 프리젠데이션, 비즈니스로직, 데이터계층이었다 물론, 3계층보다 더 많은 것도 가능하다 . 예를 들어, 일부 개발자들은 로직처리를 담당하는 비즈니스 계층을 업무흐름(workflow)과 규칙(rule)으로 분리하기도 하고, 데이터 계층을 프로그램에서 처리할 부분과 DB에서 처리할 부분으로 분리하기도 한다. 견고한 n-티어 개발의 핵심은 각 계층의 명확한 분리이..
-
ASP.NET MVC 2 가 나오네.NET/ASP.NET MVC 2009. 8. 1. 09:57
MVC 2 가 나오네 내가 공부하는 양보다 기술 나오는 양이 더 많은듯 ㅎㅎ 스캇형님의 블로그 http://weblogs.asp.net/scottgu/archive/2009/07/31/asp-net-mvc-v2-preview-1-released.aspx 아래 다운로드 링크 http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=d34f9eaa-fcbe-4e20-b2fd-a9a03de7d6dd#Overview
-
닷넷 3.5를 이용한 디자인 패턴의 구현 (1)DesignPatterns 2009. 7. 31. 02:08
닷넷 3.5는 좋은 설계 디자인을 발전시킨다 닷넷 3.5는 업계 전반에서 요구하는 구조적인 디자인 패턴들을 쉽게 구현할 수 있도록 도와 주기 때문에 좋은 품질의 프로그램을 만들 수 있다. 다음은 이 패턴들 중 중요한 것을 정리해 본 것이다 - N-티어 패턴은 사용자 인터페이스와 비즈니스 오브젝트 및 데이터 계층을 분리할 수 있도록 해준다 - MVC(Model-View0Controller)패턴은 최근에 ASP.NET MVC Framework로 통합되어었다 그래서 비주얼 스튜디오를 이용해서 MVC 디자인을 선택적으로 적용할 수 있다 - Observer (옵저버) 패턴은 흔히 출판(Publish)과 구독(Subscribe)으로 널리 알려진 패턴이다 - Factory Method패턴은 오브젝트의 생성을 추상화한..
-
중첩 마스터 페이지의 FindControl로 컨트롤 찾기 - FindControlRecursive Method 만들기.NET/ASP.NET 2009. 7. 29. 19:32
먼저 그림 설명 위의 화면은 중첩 마스터 페이지중에 서브 마스터 페이지의 컨트롤 들이다 위 화면은 Default페이지의 구현 화면 전체 소스 using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; public partial class Default2 : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { (FindControlRecursive(this.Master.Master, "Button1") as Button).Text = "..
-
uniqueidentifier 데이터 사용Database/MS-SQL 2009. 7. 29. 12:37
http://msdn.microsoft.com/ko-kr/library/ms190215.aspx uniqueidentifier 데이터 사용 uniqueidentifier 데이터 형식은 GUID(전역 고유 식별자) 역할을 하는 16바이트 이진 값을 저장합니다. GUID는 고유한 이진 숫자입니다. 전 세계 모든 컴퓨터는 고유한 GUID 값을 생성합니다. GUID의 주된 용도는 여러 사이트에 많은 컴퓨터가 있는 네트워크에서 고유한 식별자를 지정하는 것입니다. uniqueidentifier 열의 GUID 값은 일반적으로 다음 방법 중 하나로 얻습니다. Transact-SQL 문, 일괄 처리 또는 스크립트에서 NEWID 함수를 호출하여 응용 프로그램 코드에서 GUID를 반환하는 응용 프로그램 API 함수 또는 메..
-
[ASP.NET AJAX] ReorderList with ObjectDataSource (ReorderList 예제).NET/ASP.NET AJAX 2009. 7. 29. 09:55
horovitz 의 .net Programming 3.5를 따라하다가 오류가 났다(해결이 힘들었다 그래서 다른 리오더리스트 예제를 삽질하다가~ 찾은 블로그..http://weblogs.asp.net/justinsaraceno/archive/2008/02/22/reorderlist-with-objectdatasource.aspx저스틴이라는 친구의 예제는 실행이 되는데 중요한것은 IE 8에서는 작동을 하지 않는것이다.(IE 7에서는 작동한다) 크롬 2와 파이어폭스 3에서는 작동한다. http://app.lightstreamer.com/AtlasDemo/
-
AJAX ToDo List.NET/ASP.NET AJAX 2009. 7. 28. 22:03
http://www.codepost.org/view/120 AJAX ToDo List Posted by Erik on Feb 10 2006 @ 13:41 :: 19622 unique visits Here is the code for my simple AJAX ToDo List, you can use this code to implement a similar todo list on your own website. Example usage Hopefully the code contains enough comments to understand what it does. The Javascript CODE: JAVASCRIPT // the list element var list = document.getEleme..
-
-
방법: 컴퓨터에서 사용 가능한 ASP.NET 성능 카운터 보기.NET/ASP.NET 2009. 7. 22. 18:33
방법: 컴퓨터에서 사용 가능한 ASP.NET 성능 카운터 보기 Windows 성능 카운터 도구를 사용하여 ASP.NET에 대해 사용 가능한 시스템 수준 성능 카운터를 확인할 수 있습니다. 사용 가능한 ASP.NET 카운터를 보려면 Windows에서 시작, 실행을 차례로 클릭합니다. 실행 대화 상자에서 perfmon을 입력한 다음 확인을 클릭합니다. 성능 대화 상자의 트리에서 시스템 모니터를 선택합니다. 상태 창 도구 모음에서 보고서 보기 단추를 클릭합니다. 도구 모음에서 추가 단추를 클릭합니다. 카운터 추가 대화 상자가 나타납니다. 성능 개체에서 추적할 ASP.NET 개체를 선택하고 모든 카운터를 선택한 다음 추가를 클릭합니다. 각 ASP.NET 성능 카운터에 대한 내용은 ASP.NET의 성능 카운터를 ..
-
[MSDN Newsletter] Silverlight 3와 Expression 3가 한 자리에!MSDN News 2009. 7. 22. 11:36
본 메일은 2009년 07월 22일 기준으로 당사의 메일을 수신 동의하신 고객 분들에게만 발송되는 메일입니다. 메일 수신을 원치 않으시면 제목란에 "UNSUBSCRIBE"라고 적으신 후 회신하여 주십시오. 또한 프로필 센터를 통하여 뉴스레터에 대한 모든 구독 관리를 하실 수 있습니다. 주소: 서울특별시 강남구 대치동 892번지 포스코센터 서관 5층 (우편번호 135-777) 고객지원센터: 국내 1577-9700 / 해외 82-2-567-7881 ⓒ 2009 Microsoft Corporation. All rights reserved. 사용권에 대한 고지 사항 | 개인정보취급방침 및 청소년보호정책 | 문의처
-
지나가다 본 코드2Algorithm 2009. 7. 20. 22:49
//ListBox lb = sender as ListBox; //ShoppingCartItem scItem = lb.SelectedItem as ShoppingCartItem; //LongDescriptionLabel.Text = scItem.LongDescription.ToString(); LongDescriptionLabel.Text = ((sender as ListBox).SelectedItem as ShoppingCartItem).LongDescription.ToString(); 이런 코드 크레이티브하다 넘좋아~! - 참고 Programming .Net 3.5 by Jesse Liberty and Alex Horovitz. 코드를 줄일려고 이런 책도 검색 해 두었다. 참고~! 숏코딩이란다~! 저자..
-
WPF 기초 리스트에 바인딩하기.NET/WPF 2009. 7. 20. 22:09
훨씬 더 강력하고 현실적인 기능은 동적 컬렉션과 ListBox를 바인딩하는 것이다. 이번 예제에서는 미리 크기를 알 수 없는 컬렉션에 속한 다중 아이템들을 ListBox와 바인딩할 수 있도록 수정할 것이다 장바구니에서 항목들을 만들기 위해, C# 코드 중 한 가지를 변경해야 한다. ShoppingCart 클래스를 추가하고 List을 상속받도록 한다. 다음으로 ShoppingCartItem의 컬렉션을 만들기 위해 XAML의 Resources 섹션을 수정해야 한다( 이 코드들을 모조리 다 입력하는 것은 좋은 생각이 아니기 때문에 그냥 예제를 실행시켜 보고 결과를 확인해 보길 추천한다) 이제, 컬렉션의 항목들을 보여 줄 준비가 되었다. 이번에는 화면상에 출력해야 할 항목의 수를 할 수 없기 때문에 이전처럼 G..
-
patterns & practices – Enterprise Library.NET/Framwork 2009. 7. 20. 09:47
http://entlib.codeplex.com/ 엔터프라이즈 라이브러리 The Microsoft Enterprise Library is a collection of reusable software components (application blocks) designed to assist software developers with common enterprise development challenges. Application blocks are a type of guidance; they are provided as source code plus documentation that can be used "as is," extended, or modified by developers to use on co..
-
WPF 기초 데이터 바인딩.NET/WPF 2009. 7. 18. 02:15
데이터 바인딩 조만간, 특히 상업용 프로그램을 작성하고 있다면, 화면 위젯을 기존 데이터와 연동시켜야 하는 경우가 있을것이다 이러한 데이터들은 매우 다양한 형태로 존재한다. 인터넷상의 공개된 데이터, 이메일, XML파일, 운영체제, 데이터베이스 등에서 가져올 수도 있다, 좀 범위를 좁혀 보면, 가장 자주 사용하는 것은 관계형 데이터베이스일 것이고, MS쪽 프로그램을 다룬다면 아마도 SQL Server를 주로 사용할 것이다. 컨트롤을 어떤 데이터 타입이든 간에 데이터 소스와 바인딩시키는 기능은 효율적이고 좋은 프로그램을 만드는 데 중요한 요소이다. 만약, WPF가 ASP.NET이나 윈폼을 다룰 때처럼 상당한 수준의 데이터 바인딩 기능을 가지지 못했다면 단순히 인상적인 장난감 정도에 지나지 않았을 것이다 W..
-
WPF 기초 복합 컨트롤.NET/WPF 2009. 7. 17. 23:51
복합 컨트롤 WPF의 컨트롤 , 드로잉, 리소스 등에 익숙하다면, 이와 같은 기능들을 조합시켜 복합적인 사용자 인터페이스를 만들기 위해 정교한 애니메이션을 만드는데 사용할 수 있다. 이러한 기능들은 다른 포맷에서도 재사용할 수 있는 매우 강력한 기능을 제공한다. 이번 예제는 이런 생각을 정리하는 차원에서, 백악관의 웹사이트에서 가져온 역대 미국 대통령의 사진을 슬라이드 처럼 보여주는 인터페이스를 만들 것이다. 물론, 재사용성의 강력함을 보여주기 위해서 이 코드를 다음 장에서도 재사용할 것이다. United States Presidents 이 코드는 새로운 것이 전혀 없다. 그렇지만 , 코드에 사용된 엘리먼트들을 새로운 방식으로 사용햇다. 이예제를 따라 해 보려면 일단 리소스 딕셔너리에 원하는 색상의 Gr..
-
WPF 기초 의존 프로퍼티와 첨부 프로퍼티 애니메이션, 동시 실행 애니메이션.NET/WPF 2009. 7. 17. 09:46
WPF에서 애니메이션을 사용하려면, 대상 오브젝트는 반드시 필요한 세 가지 조건이 있다 1. 의존 프로퍼티(dependency property)를 가지고 있어야한다 2. DependencyObject 에서 상속받고, IAnimatable 인터페이스를 구현해야한다(Button, Panel, Shape 같은 컨트롤들은 모두 이러한 처리 과정을 거쳤기 때문에 , 애니메이션을 적용하는 데 거의 문제가 없다) 3. 호환 가능한 애니메이션 타입을 이용할 수 있어야 한다(그렇지 않으면 스스로 만들 수 있다) 보통 애니메이션을 시작하는 첫 번째 단계는 애니메이션을 적용한 프로퍼티를 고르는것이다. 각도는 Angle 프로퍼티로 설정하는데. 이프로퍼티의 데이터 타입이 Double 이기때문에 DoubleAnimation을 이..
-
WPF 기초 엘리먼트 간의 포함 관계 Window.Resource 형태변형.NET/WPF 2009. 7. 16. 21:38
얼리먼트 간의 포함 관계 Ready, Fire, Aim! 리소스(Window.Resource) Little Green Men 리소스는 XAML에서 사용할 오브젝트를 정의하고 공유할 수 있게 해준다. 리소스를 공유할 수 있는 범위는 일반적으로 Page 혹은 Window 수준에서 사용하지만, 전체 프로그램이나 심지어는 전체 시스템 차원에서 공유할 수 있다. XMAL의 Resources 섹션은 가끔 "리소스 딕셔너리(resource dictionary)"로서 참조된다 이 리소스는 TextBlock 의 Foreground 프로퍼티에 리소스 자체를 값으로 넘겨주면 적용된다. 이때 StaticResourced 키워드를 사용하면 이 리소스는 컴파일 타임에 설정되고 런타임 시에는 수정할 수 없다. 반대로, Dynami..
-
WPF 기초 Resource, Linear Gradient , Style.NET/WPF 2009. 7. 16. 01:22
전체 소스 Press Me! Resource 처음 도입부는 Windows 엘리먼트를 선언하고 네임스페이스를 추가한 후, Resources 섹션을 선언한다. Resouces 섹션에 선언한 스타일이나 엘리먼트들은 프로그램을 구성하는 UI 어느곳에서나 공유할 수 있다. Linear Gradient 리니어 그레이디언트는 선을 따러서 색상을 입힌다. 색상은 한 지점에서 다른 지점까지 선을 따라서 점진적으로 변한다 (새로운 색상을 적용하기 위해 GradientStop 오브젝트를 사용하면 점진적으로 변하던 값들이 변경된다) 리니어 그레인언트는 꼭 그렇지는 않지만 보통 대각선으로 적용된다. 이때 , 사용되는 가상의 선은 시작점과 종료점에 따라서 결정되며 지정할 경우 좌측 상단의 시작점에서 우측 하단의 종료점까지 (x,..
-
WPF 기초 <Viewbox><Canvas> <Path>.NET/WPF 2009. 7. 15. 22:10
모든 쉐이프 객체들 (Ellipse, Line , Path, Polygon, Poliline, Rectangle) 은 공통적인 프로퍼티들을 공유한다, 다음은 가장일반적인적으로 사용하는 것이다 Stroke - 쉐이프의 윤관선을 어떻게 그릴지 지정한다. StrokeThickness - 그릴 윤관선의 두께를 지정한다. Fill - 쉐이프 내부를 어떻게 채울지 지정한다 이 모든 프로퍼티들의 좌표와 꼭짓점은 장치 독립적인 픽셀(device-independent pixcel)을 단위로 사용한다 Canvas는 자식 엘리먼트들이 절대 좌표(absolute positioning)을 사용할 수 있도록 해준다 Viewbox 때문에 창의 크기를 변경하면 자동으로 크기가 변경된다 - 출처 Programming .Net 3.5 ..
-
WPF 기초 StackPanel 사용과 <FlowDocumentReader> <FlowDocument> <Paragraph> <Paragraph.FontFamily> <Paragraph.FontSize> <Bold> <LineBreak />.NET/WPF 2009. 7. 15. 02:06
© 2007 O'Reilly Media, Inc. All trademarks and regustered trademarks appearing on oreilly.com are the property of their respective owners. Verdana 18 Getting Started with .NET 3. Verdana 18 By Jesse Liberty and Alex Horovitz September 2006 Pages : 56 Learn how to create more dynamic user experiences and build secure web servies using Windows Communication Foundation(WCF) and Windows Presentation..
-
WPF 기초 DockPanel 선언 순서가 중요하다.NET/WPF 2009. 7. 15. 01:29
I am the left... I am the Right I am the top... I am the bottom I am the Fill(of the center) I am the top... I am the bottom I am the left... I am the Right I am the Fill(of the center) I am the top... I am the bottom I am the left... I am the Fill(of the center) I am the Right - 출처 Programming .Net 3.5 by Jesse Liberty and Alex Horovitz. (소수 수정)