'it 개발자(?) 위한 개발툴 모음'에 해당되는 글 1건

  1. 2010.10.22 it 개발자(?) 위한 개발툴 모음
90.개발관련문서2010. 10. 22. 17:44
반응형

출처 : http://www.msaccess.co.kr/newpage/tech/access/access_2.php#1

아래의 내용은
15년 가량 IT를 경험한 컨설턴트가 평가한 것으로 PowerBuilder, Visual Basic, COBOL, Oracle, SQL-SERVER, MySQL 등 다양한 종류의 프로그램언어와 데이터베이스를 경험한 이후에 기술된 내용입니다.

 

목차 

1.    가장 강력한 Component형 개발 툴

2.    편리한 Database Bound형태의 개발 툴

3.    엔진이 필요 없는 Server 혹인 Client형 데이터베이스

4.    최고의 Rapid 개발 툴

5.    QBE를 이용하여 초보자도 사용 가능한 강력한 SQL언어 제작기능

6.    어떠한 자료 형태도 관계형 데이터베이스처럼 연결(Relation Join) 가능

7.    ODBC를 이용한 모든 데이터베이스의 연결 및 통합

8.    calable개발 툴

9.    Data Migration을 위한 통합형 데이터베이스

10.   Win32 API 및 ActiveX 와 100% 호환

11.  Engine이 필요 없는 관계형 데이터베이스

12.  오피스 제품과의 완벽한 자료호환성

13.  데이터베이스와 프로그램을 통합한 새로운 개발 툴

14.  VBA언어 사용

15.  Application OLE기능

16.  Setup 및 Distribution의 자유로움

17.  Xml 지원 및 ADO, DAO, ODBC등 다양한 형태의 자료연결 기능

18.  개발자를 위한 강력한 마법사 기능

19.  데이터베이스 분석 툴 및 Documentation 기능

20.  준비된 내장함수

21.  사용자 중심의 표현식 작성기(Expression Builder)

22.  전산실이나 급하게 개발해야 하는 프로그램에 용이

23.  중소기업을 위한 진정한 개발 툴이 존재 하는가요?

24.  액세스 !! 만남 자체만으로도 여러분에게 많은 신선함을 약속할 수 있습니다

       

        1.       가장 강력한 Component형 개발 툴

       Form, Table, Query, Report, Module

자주 개발하는 프로그램에서 이전에 사용한 프로그램을 재사용하는 것은 프로젝트에 있어서 아주 중요한 문제입니다. 보안 및 사용자 계정, 네트워크 구성에 따른 모듈 등이나, 기본적인 자료를 처리하는 반복적인 업무의 프로그램 개발은 생산성을 떨어뜨리는 원인이 됩니다.

아무리 잘 만든 프로그램 logic이라 하더라도 다른 프로그램을 개발할 경우에는 이미 잘 만들어진 ActiveX 컨트롤이 아닌 다음에는 반드시 일부는 재개발 해야 하는 것을 피할 수 없습니다.  이럴 때 가장 중요한 것이 이전에 만들어 놓은 폼, 보고서, 스크립트 등의 일부라도 쉽게 가져올 수 있게 하는 것입니다.

이러한 면에서 액세스는 두 개의 액세스화면을 열어 놓고 마우스로  Drag & Drop만을 하면 어떠한 형태의 객체(Form, Table.)든 관계없이 객체를 주고 받을 수 있는 재사용성이 뛰어난 개발툴 입니다.

2.       편리한 Database Bound형태의 개발 툴

    Bound형태란 일반 프로그래밍 툴에 있어서는 생소할 수 있습니다. 여기에 해당하는 것은 3rd Party툴 형태로 지원되는 ActiveX DLL, Component형태로 지원되는 라이브러리 등이 있습니다. Bound폼이나, Bound Report에는 이러한 여러 종류의 라이브러리 중 데이터에 관한 ActiveX형태의 컨트롤이 폼이나 Report자체에 들어 있다고 보면 됩니다.

      Form

                                                물론 액세스의 Bound폼에는 데이터를 가져오는 ActiveX는 어디에도 보이지 않습니다. 폼 자체가 ActiveX와 같은 형태일 수 있습니다.

                                               그러나 이 폼은 DataGrid 컨트롤과 같은 형태와는 비교도 안 되는 유연함을 보여주면서도, 개발자 스스로가 VB  와 같이 Unbound 형태로 개발해도 아무런 문제가 없습니다.

                                                액세스의 Bound폼은 5가지 형태로 제공됩니다. 5가지 형태의 폼은 불과 1~3초 만에 정교한 폼을 만들어 주나, Visual Basic이나 Delphi 등으로 만들면 최소 30분에서 1 이상 소요됩니다. Report 뿐만 아니라 폼에서도 액세스는 Bound 형태이면서도 일반 ActiveX처럼 배포에 대한 불편함이나 Licence에 대한 부담이 없습니다. 또한, 이러한 ActiveX조차도 Windows자체가 지원하는 라이브러리 내에 존재하기 때문에 속도가 상당히 빠릅니다.

       Report

                                              일반적으로 가장 많이 사용되는 Report툴은 Segate사의 Crystal Report입니다. 필자도 대형 프로젝트를 통해 Crystal Report2년 가까이 꾸준히 사용해 보았기 때문에 개발의 편리상이나 개발 속도적인 면, 보고서의 모양 등에 있어서 최고의 툴로 평가해도 과하지 않다고 생각합니다.

                                              그러나 액세스가 가지고 있는 보고서 기능은 이 Crystal Report에 못지 않은 많은 기능을 가지고 있습니다. 오히려 Crystal Report가 가지고 있지 않은 유용한 형태의 많은 보고서를 제공합니다. 더욱이 Bound Unbound형태를 모두 제공하기 때문에 자연스럽고 고급스런 보고서를 작성할 수 있습니다.

3.       엔진이 필요 없는 Server 혹인 Client형 데이터베이스

       액세스는 엔진이 없는 상태에서도 데이터베이스로 만족한다

                                               액세스는 모든 자료형태로 표현되는 Text파일이나  Excel, Dbase ISAM파일, Paradox 등 기타 많은 자료를 링크하여 관계형 데이터베이스처럼 활용가능 할 뿐만 아니라, 서로 다른 자료 형태를 관계형으로 연결 할 수 있습니다.

상상할 수 없었던 형태, 예를 들면 서버의 Oracle 데이터베이스와 일반 PC에 존재하는 Text데이터나  Excel 같은 형태의 자료를 서로 관계형 데이터베이스로서 Join하는 작업을 쉽게 만들어 줍니다. 또한 이렇게 연결된 자료들을 아무런 작업 없이 그대로 SQL에 사용 가능한 방법을 제공합니다

       Client/Server의 대형프로젝트에 필수적인 데이터베이스

진정한 형태의  Client/Server프로그램은 Client에 데이터베이스를 둠으로써 전체적인 프로그램을 효율적으로 운영하기 위한 방법의 제안 이었습니다.

                                                 그러나 국내에서 이러한 형태의 Client/Server프로그램을 구현하는 방법은 서버에 Oracle과 같은 대형 데이터베이스를 두고 Client에는 Sql-Server같은 데이테베이스를 둠으로써 Client자체가 일반 PC가 아닌 서버급의 고비용을 발생하게 하는 형태로 발전하게 되었습니다.

                                                진정한 Client/Server응용 프로그램은 Client PC에 데이터베이스를 둠으로써 데이터베이스 서버의 가격을 낮추고 성능 저하의 원인이 되는 데이터의 집중현상을 줄이기 위한 방법이어야 합니다. 즉, 일반 PC에 데이터베이스를 둠으로써 가장 효과적인 시스템구축 방법을 찾기 위한 수단이 되는 것입니다.

                                                예를 들어, 한 회사에서 1,000건이 넘는 상품코드를 사용할 경우 하나의 재고관리 프로그램에서 조회하는 상품코드는 프로그램이 실행되는 동안에는 계속해서 상품코드를 조회합니다. 매번 프로그램을 실행할 때마다 이 상품코드를 서버에서 가져온다면 서버자체의 물리적 성능이나 데이터베이스의 성능이 상당히 월등해야 합니다. 그러나 서버에 존재하는 상품코드의 복사본을 Client에 가지고 있고 이 상품코드를 서버에서 가져오지 않고 Client PC 즉, 현재 프로그램이 실행되고 있는 PC에 보관하고 사용한다면 아주 효율적인 시스템이 구축됩니다.

 액세스는 Client(PC)에 엔진이 필요없는 관계형 데이터베이스를 제공함으로써 Client/Server에 전형적인 시스템 구축을 도와 줍니다.

최근에 메신저()형태의 개인용 응용프로그램이 많이 배포되고 있습니다. 이러한 대부분의 개인용 자료를 보관(메일, 주소록, 일정관리)하는 대부분의 프로그램이 이 액세스 DB를 사용하고 있습니다. 확장자를  MDB가 아닌 다른 형태로 Rename했을 뿐 액세스 데이터베이스를 그대로 사용하고 있습니다.

4.       최고의 Rapid 개발툴

       Form, Report 제작 5 ~ 30

액세스는 Bound 형태의 폼이나 보고서를 제공하기 때문에 일반 개발 툴에 비하여 상당히 빠른 개발도구 입니다.

설계가 끝난 상태에서 프로그램을 개발할 경우라면 Visual Basic이나 Delphi, PowerBuilder등의 개발 기간이 5개월 정도라고 한다면, 액세스는 최대 1개월 이면 충분할 정도의 개발환경 및 도구를 제공합니다.

       QBF

액세스는 많은 변수로부터 자유로울 수 있습니다.

액세스는 보고서 및 폼에 있는 컨트롤이나 필드의 값을 직접 참조할 수 있는 기능을 제공하며, 이러한 형태의 값에 대한 참조를 SQL이나 모든 함수에서 사용 가능하므로 개발생산성 측면에서나 프로그램 자체를 이해하는데 있어서도 많은 도움이 됩니다.

5.       QBE를 이용하여 초보자도 사용가능한 강력한 SQL언어 제작기능

      QBE를 이용한 빠른 SQL작성(GUI환경)

액세스는 거의 최초로 제공되었던 GUI형태의 SQL Builder를 제공합니다

액세스가 처음 나왔던 91년 경에 이미 GUI형태의 SQL Builder를 제공했기 때문에 10년 이상이 흐른 현재의 Builder는 더욱 진보된 형태로 SQL을 잘 모르거나, 기억하기 어려운 Syntax등을 자동으로 생성해 줍니다.

       SQL언어 내부에 내장함수 사용이 가능하다

액세스의  SQL은 다양한 데이터베이스를 지원할 뿐만 아니라 액세스 자체에서 포함하고 있는 내장함수나, 심지어는 사용자가 만든 함수 등을 SQL에 포함하여 사용할 수 있습니다. 이러한 함수 조차도 액세스가 해석하여 다양한 데이터베이스에 사용해도 전혀 문제 없이 실행할 수 있는 강력한 SQL을 제공합니다.

      RPC, Stored Procedure사용 가능

오라클이나 대형 데이터베이스에서 제공하는 RPC, Stored Procedure를 액세스에서 만들 수 있을 뿐만 아니라 만들어진 RPC, Stored Procedure를 실행 할 수 있습니다

       Crosstab Query

직접 구현하려면 최소 50줄 이상이라야 가능한 SQL명령을 SQL Builder를 통하여 쉽게 구현합니다

▶    Crosstab Query는 기간별 영업실적, 지역별 영업실적 담당자별 영업실적 등..행의 값이 열로, 혹은 열의 값이 행으로 이동하여 통계를 구축하는 등의 어려운 SQL문장을 만들어 주는 마법사를 이용하여 불과 몇 초 만에 어느 정도 수준의 SQL사용자도 만들기 어려운 Crosstab Query를 구현해 줍니다.

        사용자 정의 함수 사용

일반 데이터베이스에서 제공하는 대부분의 SQL용 함수를 제공합니다.

액세스 내부에 포함된 모든 내장함수와 사용자 정의 함수를 SQL에 포함하여 실행할 수 있습니다.

       Query를 이용한 View Table작성

액세스는 액세스자체에 SQL문을 레코드셋처럼 취급할 수 있으므로 SQL을 만들어 이렇게 만들어진 SQL자체를 쿼리라는 객체형태로 마치 서버의 View테이블처럼 만들 수 있습니다.

6.       어떠한 자료 형태도 관계형 데이터베이스처럼 연결(Relation Join) 가능

       Text, Excel, Dbase 간의 연결(Relation Join) 가능

마이크로소프트가 배포하는 오피스 내부에는 Power point, Word, Excel, Visio, Frontpage, InfoPath, Outlook등이 존재하고 있으며 이러한 응용프로그램이 사용하는 모든 자료를 액세스로 주고 받을 수 있습니다

       Text, Excel, Dbase Oracle, SQL-SERVER, ORACLE간의 연결(Relation Join) 가능

오피스 내부에 존재하는 모든 자료의 형태나 일반적인 ISAM파일, DBASE등의 자료와 대형 데이터베이스와도 관계형 연결(Relational Join)이 가능합니다

7.       ODBC를 이용한 모든 데이터베이스의 연결 및 통합

       Local Database에 이 기종 및 서로 다른 Database 통합연결

현재 존재하는 거의 모든 형태의 자료와 서버에 존재하는 모든 형태의 데이터베이스와 연결 가능합니다.

이러한 연결이라는 것은 단순한 링크가 아니라 액세스 내부에서는 동일한 데이터베이스처럼 취급되기 때문에 대부분의 SQL문의 사용이 가능합니다

       Remote Database에 이 기종 및 서로 다른 Database 통합연결

원격지에 있는 데이터베이스끼리도 odbc를 통하여 연결하고 또한 Client에 존재하는 일반 ISAM 형태의 자료를 동시에 연결할 수 있습니다

액세스는 동시에 이 기종의 데이터베이스와 연결할 뿐만 아니라 동시에 EXCEL이나 ISAM 등 모든 자료를 연결할 수 있습니다. 이러한 연결은 사용자에게 데이터의 종류에 관계없이 서로간에 자료를 주고 받거나 프로그램을 하는데 있어서 대단한 편리성과 유연성을 제공합니다

8.       Scalable개발툴

      From Desktop To Enterprise level Client/Server 개발 툴

PC에서 운영되는 작은 프로그램에서부터 대형 프로젝트에 이르기 까지 어떠한 환경에서도 운영 가능한 개발 툴입니다

       Excellent Group Business Tool

특히 부서단위나, 지역단위의 프로그램이나, 이러한 형태로 개발된 데이터베이스를 통합하는 형태의 프로젝트에 있어서는 더욱 뛰어난 기능을 발휘합니다

       Standalone 개발 툴

액세스는 워낙 빠른 시간에 개발 가능한 툴이기 때문에 갑작스런 프로젝트나 실험용 프로그램, 통계 프로그램 등 한번 사용하고 버리는 형태의 프로그램에는 생산성 높은 많은 기능을 제공합니다.

      Frontend To Backend 데이터베이스

이미 구축된 ERP나 다른 응용프로그램에 존재하는 모든 데이터를 쉽게 접근하여 새로운 프로그램을 개발한다든가 혹은     이렇게 개발된 프로그램으로 기존의 ERP데이터에 자료를 검색, 입력, 수정하는 등의 형태의 개발이 뛰어납니다.

9.       Data Migration을 위한 통합형 데이터베이스

       Upsizing, Downsizing

모든 형태의 자료나 관계형 데이터베이스가 연결 가능하기 때문에 프로그램의 규모나 데이터베이스를 서버로 올린다거나 내릴 경우에는 최대의 효과 및 편의를 제공합니다.

10.   Win32 API ActiveX 100% 호환

일반적인 프로그램 개발 툴에서 사용하는 3rd Party에서 제공하는 모든 종류의 라이브러리 사용을 지원합니다 (ActiveX Control, DLL, Class 라이브러리).

11.   Engine이 필요 없는 관계형 데이터베이스

       액세스나 오피스가 설치되어 있지 않더라도 액세스파일 자체만 가지고도 데이터베이스로서의 모든 기능이 지원됩니다.

12.   오피스 제품과의 완벽한 자료 호환성

       Excel TO Access

       MS Word TO Access

      Visio TO Access

13.   데이터베이스와 프로그램을 통합한 새로운 개발 툴

       프로그램 자체도 R-DB형태로 존재

       프로그램과 DB를 분리하여 개발 가능

      프로그램과 DB를 통합하여 개발 가능

14.   VBA언어 사용

       Visual Basic For Application

15.    Application OLE기능

액세스로 Excel이나 Word의 응용프로그램을 끌어 들여 사용 가능합니다

      Excel Application

       Word Application

16.   Setup Distribution의 자유로움

사실상 모든 개발 툴에 있어서의 최종적인 문제는 완성된 프로그램의 배포에 있습니다. 이러한 배포는 Install shield Setup Package형태로 배포하게 되는데, 실제 많은 응용프로그램 설치를 자세히 살펴보면 최소한 20~60여 개에 가까운 많은 파일이 설치 됩니다. 따라서 이렇게 많이 설치되는 파일이 어디에 존재하는지, 또한 현재 설치되는 OS에 적합한지를 판단하기 이전에 모든 설치가 마무리 되는 것을 생각해 보면 새로운 프로그램을 윈도우에 설치한다는 자체가 어느 정도의 모험이 될 수 있습니다.

더 심각한 문제는 설치한 프로그램을 제거할 경우는 아예 설치된 파일을 모르기 때문에 완벽한 제거는 포기하게 된다는 것입니다.

그러나 액세스는 단 두 개의 파일만 설치하면 됩니다. 물론 액세스를 실행하기 위한 msaccess.exe 파일을 제외하면 개발된 프로그램.mdb만을 배포하면 됩니다.

물론 배포될 컴퓨터에 오피스가 설치되어 있다는 전제가 있어야 합니다.

      MS Windows Office의 라이브러리의 호환성

       하나의 파일만으로 모든 프로그램의 배포

17.   Xml 지원 및 ADO, DAO, ODBC등 다양한 형태의 자료 연결 기능

최근에 각광을 받고 있는 XML형태의 자료를 연결하거나 혹은 원하는 자료를 내보낼 수 있는 기능이 있습니다.

       Xml Import, Export, Linking

       ADO, DAO, RDO

18.   개발자를 위한 강력한 마법사 기능

프로그램에 사용되는 모든 객체에 대한 강력한 마법사 기능으로 프로그램개발에 필요한 모든 작업을 기본적으로 제공하는 마법사를 통하여 최소 30%에서 100%에 이르는 완성도로 모든 객체를 만들어 줍니다.

       Form

       Query

      Report

       Table

        Macro

        Button Wizard

19.   데이터베이스 분석 툴 및 Documentation 기능

프로젝트 시작 시 혹은 종료 시 만들어야 할 프로젝트 문서 기능을 제공하기 때문에 개발에 포함된 각각의 객체에 대한 속성 및 리스트를 제작해 줍니다.

      Analyze Database

20.   준비된 내장함수

테이블 및 View테이블 등을 대상으로 하는 편리한 도메인 함수 및 일반적인 개발 툴이 사용하는 대부분의 함수를 제공합니다.

       도메인함수

      문자열함수

       Data Connection관련 함수

21.   사용자 중심의 표현식 작성기(Expression Builder)

변수 명이나 각 객체의 이름을 일일이 암기하지 않더라도 표현식 작성기를 통하여 모든 객체에 대한 Collection 및 속성, Value등을 쉽게 참조하기 때문에 개발 시 부담하는 변수에 대한 스트레스 등이 없습니다.

       Form, Report, Table, Query등 참조

22.   전산실이나 급하게 개발해야 하는 프로그램에 용이

일반적으로 전산실은 노가다(?) 작업을 많이 합니다. 이미 ERP나 기간업무가 개발되어 있지만, 회사는 언제 어디서든 엉뚱한(?)자료를 요구할 경우가 너무 많습니다.

대부분의 전산실이 밤을 세우는 이유가 여기에 있습니다(아마..동감하는 사람이 너무도 많을 것입니다)  사용해본 사람만 알 수 있겠지만 액세스는 전산실에서 하루 종일 해야 할 작업을 10분이면 끝내줄 수 있는 모든 도구를 제공할 것입니다.

       갑작스런 자료의 통계나 추출

      갑작스럽게 주어진 업무의 해결

23.   중소기업을 위한 진정한 개발 툴이 존재 하는가요?

      국내에 모든 기업의 전산화를 위한 개발 툴이 동일하다

국내 대기업과 중소기업의 환경은 너무나 다릅니다. 하지만 전산화는 기업의 규모에 관계없이 기업을 이끌어 가는 중요한 수단으로 자리잡고 있습니다. 전산화가 목표가 될 수 는 없지만 그 목표를 달성하는 중요한 수단임은 분명합니다.

그러나 이러한 수단이 기업의 규모에 관계없이 거의 비슷하다는 현실입니다.

중소기업도 서버를 구입하고 네트워크환경을 구축해야 합니다. 지금까지의 모든 개발자들은 대기업에서 사용하던 시스템(하드웨어)나 개발  툴을 그대로 적용하는 현실입니다.

중소기업은 전산실도 없고, 컴퓨터를 잘 아는 사람도 없습니다. 2~3,000천 만원씩 하는 서버를 무료로 지원해도 중소기업은 그러한 장비와 소프트웨어를 유지할 인력이나 비용이 없다는 사실입니다.

많은 개발자 여러분들은 적은 비용으로 또는 전문인력이 없는 상황에서도 중소기업의 전산화가 잘 될 수 있도록 좋은 기술과 솔루션을 제공해야만 합니다.

중소기업의 열악한 현실을 알면서도 동일한 기술과 솔루션으로 접근하는 것은 어린아이를 물가로 몰고 가는 현실과도 같다고 생각합니다.

액세스는 일반 컴퓨터만으로도 네트워크환경에서 문제없이 움직일 수 있는 데이터베이스입니다. 데이터베이스의 백업 및 복구조차도 단순히 파일복사만으로도 충분하며  MultiUser환경을 지원합니다. 액세스는 단순한 개발 툴이라기 보다는 규모의 크기나 업무의 영역을 초월한 다양한 형태를 지원하는 하나의 솔루션입니다.

24.   액세스 !! 만남 자체만으로도 여러분에게 많은 신선함을 약속할 수 있습니다

 

    사례1>

     보험업무를 중심으로 하는 대기업에서 각 보험지국의 데이터베이스는 SQL-SERVER로 구축되어 있으며, 본사는 ORACLE로 되어 있는 상황에서 각 보험설계사가 노트북을 가지고 다니며 고객에 대한 정보를 보험지국과 본사의 서버에 모든 자료를 동기화 하려고 한다.

    해결방안>

    전형적인 Client DB를 가져야 하는 상황입니다. 그렇지 않을 경우에는 보험설계사가 노트북에 입력한 고객정보를 서버나 보험지국에 다시 한번 입력해야 하는 일이 발생됩니다.

    MS Access는 그 자체가 프로그램 개발 툴이면서 관계형 데이터베이스로서 MS Office만 설치된 노트북이라면 언제는 자체 MS Access DB에 고객정보를 입력하고, 보험지국에 돌아와서는 동일한 노트북에서 MS Access DB에 연결된 SQL-SERVER나 본사에 연결하여 그대로 자료를 전송할 수 있습니다.

    사례2>

     사례1과 동일하며 다만 고객정보가 Excel로 되어 있다

    해결방안>

    MS Access는 몇 초 만에 대부분의 자료를 관계형 데이터베이스로 쉽게 구축할 수 있습니다. 또한 일반 텍스트형태의 자료와 Excel같은 자료를 서로 연결하여 사용하거나, 이러 Excel자료를 대형 데이터베이스와 연결(Relation Join)하여 사용 가능하므로 기본자료의 종류에 관계 없이 어떠한 데이터베이스에도 연결 가능합니다.

Posted by 1010