정환이가 2007년 5월 23일부터 
5개월간 삼성중공업 프로젝트에 참여하게 되었습니다.

긴 여행 후 참여하는 프로젝트입니다.

오늘 2시간정도 면접을 했습니다.

작은 프로그램을 만드는 것이 었는데...
잘 하지 않았는데... ^^;

밤 늦게 연락이 왔습니다.
참여하라는...

이렇게 전 다시 밥벌이로의 복귀를 하게 되었습니다.

열심히 하겠습니다.


정환이 화이팅. ^^












저작자 표시 비영리 변경 금지
신고
크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by woojja
TAG woojja
맛봬기로 널려져 있는 문제점을 몇가지로 풀어보았습니다.

이러한 문제점을 해결하고자 무지막지한 넘이 나타났으니 그것이 닷넷입니다.
닷넷은 MS 의 비즈니스 모델이자 처음에 제가 긴 말들로 이야기했던 세상에 널려져 있던 전산환경에서의 문제점을 해결하고자 혜성같이?(혜성같이는 아니지만...) 나타난 하나의 기술입니다.
수많은 Device, 이질적인 환경에 적합하고, 개발하기 용이하고 수많은 사용자의 수많은 요구사항에 대응할 수있는, 그리고 기존에 존재하는 legacy system, application 과 함께 사용할 수 있도록 하는 기술인 것이죠.
JAVA 또한 같은 기술중의 하나라 할 수 있습니다. 하지만 MS의 .NET과는 조금 다른 차이점이 있다고 생각합니다. MS 는 인프라를 함께 구축해 나간다는 것이죠. 하나의 개발툴만이 아닌 하나의 플랫폼을 구축해 나간다고 할수 있습니다. MS 의 개발툴뿐만이 아니라 많은 서버군들, Office 제품군들 모두 닷넷이라는 방향성을 가지고 개발되어 나간다는 것입니다. 이런 제품들을 개발하기 위한 바탕기술들을 몇년전부터 발표하고 표준으로 만들고 있습니다. 이런 추진력 또한 고개를 설래설래 흔들게 하고 무시무시하게 느껴지도록 하는 것 같습니다.

이런 기반하에 구축된 MS 의 닷넷 플랫폼의 중심에 .NET Framework이 있고 BuidingBlock Service, 그리고 VisualStudio 가 있습니다.
그리고 우리는 VisualStudio 가 지원하는 언어중의 하나인 VisualBasic.NET 을 사용하고자 하는 것이구요.

vb.net, c#, asp.net, webservice, ... 등등을 그냥 단순히 바라보기 이전에 이러한 기술들이 어떻게 발생하게 되었나를 알고 있는 것 또한 이들에 접근하는데 약간의 도움이 될 듯 합니다.

이때 이런 독보적인 위치를 점령한 MS. 이것 또한 걱정이 아닐수 없습니다. 지금까지 수많은 제품의 독점판정으로 소송에 시달렸구요. 타 개발툴들과는 당연한 일이겠지만 경쟁구도를 갖을수 밖에 없었습니다. 그래서 약간의 생각을 바꾼거죠. (생각을 바꾸면 돈이 보인다~~ ^^)

"공개".

CLI 를 공개합니다.
그리고 VisualStudio를 많은 개발툴에 오픈을 하게 됩니다. 많은 개발자들을 기술표준에 끌어들일수 있고 다른 개발랭귀지 회사들은 자신의 툴을 VS 에 포함시키려고 할 것입니다.(Cobol이 그렇고 비록 컨트롤과 같은 유사한 형태지만 PowerBuilder 의 Datawindow 이 그렇습니다. Python.net, JVM 위에서 구동되는 것은 아니지만 JAVA Language를 사용하는 J# 또한... 이렇듯 많은 랭귀지를 포함하고 있습니다. ) 그럼 자연스레 수많은 다른 랭귀지를 사용하는 개발자를 VS 사용자로 끌어들일수 있고(파워빌더.NET을 만들어달라~달라달라... ^^;), 타 랭귀지개발사들과도 경쟁구도 보다는 한결 쉬운 구도가 되겠죠? 거기다 점점 닷넷의 영향력이 커진다면... VisualStudio 는 더 많이 팔리지 않을까? ^^(하기사 많은 기업들이 기존에 가지고 있는 고가의 Unix 기반 머신들을 한꺼번에 바꿀리 없고, 모두다 개발툴을 VS 로 바꿀리는 만무하지만, 이전의 환경보다는 나은 환경을 지원할 수있도록 기업들도 조금씩 바꾸어 나가려는(Webservice와 같은 기술로) 생각을 가지지 않을까 라는 저의 막연한 작은 소견...ㅋㅋ .NET Framework을 unix 머신에 포팅까지 하는 것을 보면^^)

지금까지 본격적으루다가 강의를 시작하기 전에 맛베기를 풀어봤습니다.
(이것도 너무길면 싫어하시지 않을까 라는 걱정에... ^^;)

강의를 이런식으로 진행을 해 나가는 것이 좋은지? 아니면
간단간단하게 요점만을 똑똑 끊어서 진행하는 것이 좋은지... 고민과 걱정이 많이 되네요.

10강정도로 생각하고 있다고 말씀을 드렸건만... 1차 강의를 어느정도의 내용을 가지고 할지 지금도 아리까리 합니다.

제머리 가지고 이만큼 쓰는 것. 장난 아니게 오래 걸리거든요... ^^

그럼 저는 고생할터이니 여러분은 행복한 휴일 보내시고 행복하세요... ^^


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












저작자 표시 비영리 변경 금지
신고
크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by woojja
TAG .NET
2009.03.05 21:57

오늘부터 요즘 내가 공부하고 있는 닷넷과 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 ))*

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

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

 












저작자 표시 비영리 변경 금지
신고
크리에이티브 커먼즈 라이선스
Creative Commons License

'XML' 카테고리의 다른 글

[XML] AutomationML  (0) 2017.04.05
[XML] XML ??? ... (3)  (0) 2009.03.05
[XML] XML ??? ... (2)  (0) 2009.03.05
[XML] XML ??? ... (1)  (0) 2009.03.05
Posted by woojja
TAG xml

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

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

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

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


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

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

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

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

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

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


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


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


Korea MVPs TaeKwonDo Dancing Demo(1)

Korea MVPs TaeKwonDo Dancing Demo(2)

Korea MVPs TaeKwonDo Dancing Demo(3)


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



행복한 고수되세요...

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













저작자 표시 비영리 변경 금지
신고
크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by 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 에 관해 정리해 보기로 하겠다.












저작자 표시 비영리 변경 금지
신고
크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by woojja