오늘부터 요즘 내가 공부하고 있는 닷넷과 XML 에 대해 정리해서 올리고자 합니다.

내용이 허접하더라도 예쁘게 보아 주기 바라며 많은 질책과 질문을 보내주기 바랍니다.

이 글은 다른 사람들을 대상으로 했다기 보다 공부한 것을 정리한 것이라 생각해 주기 바랍니다.

아는 바가 없어 되도록이면 쉽게 풀어 나가겠지만 읽던 도중 의문점이나 틀린점이 발견되면 제게 한 수 알려주시기 바랍니다.

지금부터 몇번에 걸쳐 연재를 할 생각인데

순서는 이렇습니다.

일단은 닷넷에서 지원하고 있는 XML의 개요를 간단히 짚고 넘어 갈 것이고

XML 읽기, XML 쓰기, XML 쿼리하기, XML 조작, XML 변형, XML 전송, 그리고 XML Web service등을 짚고 넘어 갈 것입니다.

크게는 8부분이지만 한번에 한 부분씩 하는 것은 제게 무리가 따를 것 같은 생각이 드는군요. 그래서 되는 데로 많이 올려 빨리 XML 하나를 마치도록 하겠습니다.

 

그럼 시작해 보도록 할까요? ^^;

현재 기업들은 인터넷이라는 네트웍 건너의 다른 많은 업체와 데이터를 교환하고자 하고 있습니다. 이런 이유로 그러한 기업들은 시스템을 다시 구축하고, 변경하는데 막대한 시간과 돈을 들이고 있습니다.

그래서 현재 사용하고 있는 데이터와 파트너 사가 현재 사용하고 있는 데이터를 통합하는 것이 지금 프로그래머에게 닥친 문제라 하겠습니다.

이렇게 파트너사들과 데이터를 통합하려하는데 있어서 생각해 봐야 할 것들엔 어떤 것들이 있을까요? 통합을 어렵게 하는 점은 어떤 것이 있을까요?

그리고 그런 문제점은 어떻게 하면 해결을 할 수 있을까요?

1.       다른 프로그램들의 통합

현재 각 회사에서 실행중인 어플리케이션은 다른 OS 환경에서 동작하고 종류도 억쓰로 많습니다.

이런 상황에서 통합을 위해 시스템을 새로 구축하려 한다면? 뜨아… 상상치 못할 정도의 자금이 들 것입니다.

그리고 데이터가 저장되어있는 공간 또한 SQL Server 와 같이 RDBMS 에 저장되어있는 경우가 있기도 하고 문서파일에 저장되어있기도 하죠.

2.      서로 다른 문서 포맷사이에서의 translating

문제점들 가운데 가장 큰 문제라고 할 수 있는 점이죠.

예를 들어 Xml로 데이터들을 교환을 하겠다고 결정하더라도 xml의 특성중의 하나인 element나 attribute 사용에 있어서의 유연성 때문에 너무 많은 포맷이 나올 수 있을 것입니다.

교환된 xml파일을 바탕으로 각 포맷에 맞도록 다시 변환해야 하겠죠.

그래서 이점을 해결하려면 문서 포맷을 표준화 하는 것 밖에 없겠죠…

또한 데이터의 source는 RDBMS 보다는 많은 종류의 포맷으로 된 문서가 더욱 많을 것입니다. 예를 들면 CVS 파일이나 Tab을 구분된 파일, 워드파일일 수도 있고 XML 파일일 수도 있겠죠, text 파일일수도 있구요.

이런 파일로부터 다시 상대 회사에서 원하는 형태의 XML을 생성해야 하겠죠.

그리고 XML을 생성할 때는 데이터가 유효한 형태인지 그 구조가 정확한지를 check 해야 할 것입니다..

3.      데이터 탐색, 쿼리

여러 종류의 데이터 포맷의 데이터 source로부터 내가 필요로 하는 정보를 찾아내기란 쉬운 일이 아니겠죠..

찾아 낸 정보는 다시 나 자신이 원하는 형태로 출력하기 위해 비교하고 조합해야 할 것이구요.

4.       데이터 조작

그렇게 데이터를 변형하여 전의 데이터 포맷과는 다른 HTML이나 PDF와 같은 포맷의 문서로 변형시킬 수도 있어야 겠지요.

그 데이터들을 display 하고 report 하기도 해야 할 테니까 말이죠…

 

이러한 점들을 해결하기 위한 것을 XML이라고 본것이죠.

그 선택에서 단점보다는 장점을 더욱 많이 찾을 수 있기 때문일 것입니다.

그리고 .NET은 XML을 다루는 데 있어서 간편하고 다양한 interface를 제공하고 있습니다.

 

woojja ))*

\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\

허접하고 말주변이 없어...죄송합니다. ^^

 
반응형

'XML' 카테고리의 다른 글

[XML] AutomationML  (0) 2017.04.05
[XML] XML ??? ... (3)  (0) 2009.03.05
[XML] XML ??? ... (2)  (0) 2009.03.05

두달여 기간동안 여러 좋은 분들과 모여 준비하고, 힘든 것을 함께한 시간.
다리찟느라 힘들었고, 뒷차기 격파연습하니라 어지러웠으며, 세계 여러나라 개발자들 앞에서 보이느라 많이도 떨었습니다.

언제 또 이런 날들이 올까요?

멋진 추억 만들어 주신분들 감사합니다.

함께 있어 소중하고 행복한 시간이었습니다.


아래 링크는 Global Summit 에서 선보였던 태권무입니다.

외국 사람들 좋아라 합니다. 멋쪄라 합디다.

끝나고나서도 한쪽에 서있으면 한사람씩 다가와 말을 거네요.

못하는 영어에 말을 받아줍니다.

세미나때도 말을 거네요. 햐~~ 너 태권무때 봤어. 잘 하던데... 하며... VB 개발자구나... 라며...

그러나 저는 별 말이 없네요... 간단한 말 밖에는... 영어 공부 좀 더 많이 해야겠습니다. ^^'


마이크로소프트 부사장도 연설에 나와 전날 있었던 우리나라 개발자들의 태권무에 대해 열변을 토합니다.


제겐 너무나도 멋찐 추억이었습니다.


Korea MVPs TaeKwonDo Dancing Demo(1)

Korea MVPs TaeKwonDo Dancing Demo(2)

Korea MVPs TaeKwonDo Dancing Demo(3)

 


정환이를 찾아보셔요... ^^



행복한 고수되세요...

woojja ))*
\\\\\\\\\\\\\\\\\\\\\\\\\\\

반응형
프로그램을 Cording 하고 배포하기위해서는 반드시 Build 라는 과정을 거쳐야만하고(Script 가 아니라면...) 우리는 거의 매일 Build 의 과정을 반복한다.
프로그래밍의 한 과정인 Build 를 하는데 사용되는 Tool 에는 여러가지 종류가 있다.
그중 몇가지 잘 알려진 Build Tool 에 대해서 알아보고 다음편에서는 Microsoft 사의 MSBuild 에 관해 정리해 보고자 한다.

Make 방식의 Build Tool
몇가지 Build Tool은 BSD(Berkeley Software Distribution) Make Tool의 확장판이라고 할 수 있다.
그중에 잘 알려진 것들이 보면 GNU Make, NMake, OPus Make, Jam, Cook, GBS, CMake 그리고 QMake 같은 Tool 들이 있다.
위의 Tool들의 설명은 추후 Update 하거나 추가로 덫붙이기로 하겠다.

Ant/NAnt
위에 나열한 Tool 의 경우는 모두 makefile 파일 같은 Build Description File 을 이용하며 대부분 사용하기에 애매한 명령어나 Build 하는 데 필요한 완전한 Programming Language를 사용한다.
이것들의 문제점을 든다고 하면 유지보수가 어렵다는데 있다.(뭐 익숙한 사람들에게는-그렇게 말하는 고수분들은-더할 나위없는 유지보수가 쉬운 방식일수도 있겠지만...)

Ant 는 자바진영에 잘 알려진 Cross-Platform Build Tool 이다.
이는 Build 를 하기위해 명령어를 사용하거나 Programming Language 를 사용하는 것을 버리고 XML-Base 의 Configuration File 을 사용한다.

Build 의 단계는 Java Language로 구현된 Task 라고 불리는 것으로 설명되어지며 이런 Task는 다시 Target에 의해서 Group 지어진다.

Ant File 의 예

<project>
  <target name="compile">
    <mkdir dir="build/classes"/>
      <javac srcdir="src" destdir="build/classes"/>
  </target>
  <target name="jar">
    <mkdir dir="build/jar"/>
    <jar destfile="build/jar/HelloWorld.jar" basedir="build/classes">
      <manifest>
        <attribute name="Main-Class" value="sayed.HelloWorld"/>
      </manifest>
    </jar>
  </target>
  <target name="run">
    <java jar="build/jar/HelloWorld.jar" fork="true"/>
  </target>
</project>


Ant 를 사용해서 Build 를 하기 위해서는 프로그램의 Source Tree 상에 Build.xml 파일을 위치시카고 Command prompt 상에서 Ant 를 입력하고 실행시킨다.
Ant 는 Command-Line 으로 실행되지만 GUI 또한 제공된다.

다음편에서는 Microsoft의 MSBuild 에 관해 정리해 보기로 하겠다.
반응형

+ Recent posts