2009-07-26 6 views
0

C/S 엔터프라이즈 응용 프로그램의 현재 데스크탑 UI 대신 웹 UI를 제공하고 있습니다.클라이언트 측 웹 UI 및 서버 측 개발을 분리하는 방법

데스크톱 버전에서 클라이언트 측을 개발할 때 UI 개발자는 모든 서버에 연결할 수 있으므로 클라이언트 측 환경 만 필요했습니다.

웹 UI (브라우저에서 클라이언트 측 JavaScript)를 개발할 때 UI는 브라우저의 "같은 출처 정책"에 의해 바인딩되므로 UI는 UI 코드가 다운로드 된 동일한 서버와 통신해야합니다.

는 지금까지 내가 지금까지 볼 같이 UI들에 대한 개발 시나리오는 다음과 같습니다

  1. 개발자 지역 컴퓨터에 서버를 설치하고 실행합니다.
  2. 개발자가 로컬 설치시 HTML + JS + CSS 파일을 편집합니다.
  3. 개발자는 새로운 서버 동작에 대해 UI 코드를 테스트해야 할 때마다 로컬 컴퓨터에 서버를 다시 설치하거나 업데이트해야합니다.

이것은 이전의 C/S 스타일 개발과 비교할 때 너무 편안하지 않습니다.

UI 개발자가 개발 컴퓨터에 서버 측 구성 요소를 설치하고 업데이트하지 않아도되는 다른 방법이 있습니까? 또는 개발 프로세스를 간소화 할 수있는 기타 관련 사항이 있습니까? 일부 해명에서


편집 :-)

감사합니다 :

  • 나는 UI 코딩이 아니라 UI 디자인의 측면에서 주로 관심이 있어요.

답변

0

개발자 컴퓨터에서 일부 경로가 서버로 리디렉션되고 일부 경로가 로컬 폴더로 리디렉션되는 프록시를 사용해 볼 수 있습니다.

+0

감사합니다. 이것은 내가 원하는 해결책과 같은 소리입니다. 정교하게 주시겠습니까? "프록시"란 IIS/Tomcat과 같은 웹 서버를 의미합니까? 이 프록시는 모든 HTTP 작업을 지원할 수 있습니까 (예 : 인증 헤더 등을 전달할 때) – ob1

+0

나는 Squid와 같은 http 프록시를 의미했습니다.내가 세부 사항을 설정해 본적이 없기 때문에 어떤 세부 사항으로도 당신을 도울 수는 없지만, 트릭을해야하는 것처럼 보입니다. –

1

공유 서버에 개발 최신 서버를 가지고, 따라서 필요하지만, 따라 - RESTful 웹 parrallel에서 개발 서비스에서 얻는 데이터 -

  • 나는 서버의 상호 작용이 많이 필요 팀의 크기에 .. 그것은 버전 제어와 관련하여 즐겁습니다.

    야간 빌드가있는 자동 생성 가상 머신을 배포하므로 개발자는 설치할 필요가 없지만 항상 최신 버전을 사용할 수 있습니다.

    일반적인 REST 서버에 따라 UI 개발자의 경우 UI 개발은 로컬 컴퓨터에서 수행 할 수 있으며 REST 서비스는 중앙 서버에 있어야합니다. REST 서비스가 변경되면 중앙 서버에 안정적으로 배포해야하므로 모든 개발자가 최신 버전을 사용할 수 있습니다 (이는 testdata에도 도움이 됨).

  • 1

    개발 플랫폼을 지정하지 않았습니다.

    순수 HTML/JS/CSS에 관한 한 서버는 필요하지 않습니다. UI 개발자는 UI 구성 요소를 로컬에서 미세 조정할 수 있습니다.

    (AJAX, JSP, ASP ...를 통해) 서버에 대화/통합하고 싶을 때 변경 사항을 서버에서 처리해야하므로 개발 서버에 연결해야합니다.UI 미세 조정의 대부분은 또한 유행에 따라 디자인 변경은 우리가 로컬 복사본으로 페이지를 저장하고 UI 디자이너로 보낼 필요 사무실에서 Firebug

    에서 수행 할 수

    , 그는 자신의 변화와 우리를 만든다 그들을 통합하십시오. 따라서 UI 디자이너는 개발 환경을 유지할 필요가 없습니다.

    1

    JSONP 같은 원점 문제 (서버 지원 포함)를 해결할 수 있습니다! 프런트 엔드 브라우저 개발자가 jQuery 또는 (내가 가장 좋아하는) Dojo로 훌륭한 프레임 워크를 사용한다면 JSONP는 일반 JSON보다 더 어려워 야하지 않습니다.

    0

    흠, 실제로 어떤 종류의 기술을 사용하고 있는지에 대한 정보는 얻지 못했습니다. UI 개발자의 경우 - CSS, 레이아웃 등을 신경 써야하는 디자이너를 의미한다면 lud0h가 말한 것과 동일합니다. 우리 (개발자)는 UI 디자이너에게 서버 측 제작 HTML 페이지의 복사본을 보냅니다. 그런 다음 액세스 가능성 가이드 라인, CSS 및 레이아웃에 따라 HTML 페이지를 편집하고 작업 결과를 다시 전송합니다. 우리는 HTML 페이지를 사용하여 웹 응용 프로그램에서 HTML 페이지를 통합합니다.

    CSS를 조정하는 것뿐만 아니라 JavaScript/Ajax 기능을 작성하는 경우 의사 소통중인 서버를 사용해야합니다. 당신이 말했듯이, 이것은 보통 서버 환경과 유사한 로컬 환경을 가짐으로써 수행됩니다. NET에서 Visual Studio '08은 내부 웹 서버를 제공합니다. 또는 IIS를 로컬로 설치해야합니다. Java 환경에서는 Tomcat 및 관련 기술을 설치해야합니다. 내 눈에는 이것이 필수입니다. 당신이해야 할 일은

    • 버전 관리 시스템 개발자들이 정기적으로 커밋 (CVS, SVN, ...) (분/시간)
    • 지역 환경을 개발자가 저장소에서 소스를 체크 아웃하고있다 개발
    • 당신이 매일 배포 서버이 테스트 실행중인 제품을 테스트하기 위해 (매일처럼 될 수 빌드)

    저는 이것이 전문 개발 환경이 구성해야하는 것이어야한다고 생각합니다. C/S 애플리케이션 개발의 차이점은 웹 UI와 웹 클라이언트 코드가 서버 측에서 C/S 환경의 클라이언트 UI로 분리 될 수 없다는 것입니다. GWT 나 Silverlight와 같은 C/S와 유사한 기술로 개발하지 않는 한, 브라우저 내부에서 실행되지만 RPC 호출이나 웹 서비스를 통해 통신합니다.

    // 편집 : 내가 거의 잊었습니다. 서버에서 직접 개발하는 것과 같은 일을하지 마십시오. 모든 개발자가 코드, UI 등이있는 서버의 파일 시스템에 액세스합니다!

    0

    CORS를 사용할 수 있습니다. Ajax와 같은 새로운 기술이지만 다른 도메인에서 전화를 걸 수 있습니다. 따라서 한 서버에 단 하나의 UI 만 있으면됩니다. 이것이 당신을 도울 수 있다고 생각합니다.

    관련 문제