개발자는 고속 프로그래밍 방법론을 발견했습니다.

게시 됨: 2020-08-19

이 리뷰에서는 소프트웨어 개발 산업에 대해 이야기할 것입니다. 이 산업의 주요 제품은 소프트웨어 제품 및 서비스의 형태로 구현된 아이디어입니다. 이들은 현대 기업의 모든 프로세스를 관리하기 위한 대규모 ERP 시스템뿐만 아니라 수많은 모바일 애플리케이션이 될 수 있습니다. 오늘날 그것은 세계 경제에서 가장 빠르게 성장하고 가장 역동적인 부문 중 하나입니다.

스타트업과 소프트웨어 개발자가 직면한 문제는 무엇입니까?

  1. 개발 품질. 보안 및 호환성도 포함됩니다. 응용 프로그램 또는 전체 시스템에서 문제와 오류를 일으킬 수 있는 모든 것. 오늘날 IT 부문은 너무 빠르게 발전하여 신제품이 가능한 한 빨리 시장에 출시되는 경향이 있으며 이는 품질에 영향을 미칩니다. 그 이유는 불충분한 테스트부터 실행 프레임워크가 아닌 "원시" 사용에 이르기까지 매우 다양할 수 있습니다.
  2. 개발 비용. IT 부문의 폭발적인 성장은 개발자에 대한 높은 수요로 이어졌고, 이는 최종 소프트웨어 제품의 높은 임금과 높은 가격으로 이어졌습니다. 우리는 소프트웨어 개발이 비용과 비용이 많이 드는 생산이라는 것을 인정해야 합니다.
  3. 개발 속도. 현대 시장은 제품의 성공을 시장 출시 속도와 동일시합니다. 게다가 속도 요인은 앞의 두 가지 문제(품질 및 비용)와 관련이 있습니다.

그러나 이러한 문제는 IT 영역에만 국한된 것이 아니라 가격, 품질 및 생산 속도 간의 균형을 설정하는 모든 생산 또는 기술 프로세스의 표준 요소입니다.

이제 검토 대상인 JavaScript Framework Webix와 그 작성자 Maksim Kozhukh로 돌아가 보겠습니다.

Maksim은 Webix의 수장이자 웹 기술 분야에서 20년 이상의 경험과 광범위한 전문 지식을 갖춘 소프트웨어 설계자입니다. Netscape 시대에 IT를 시작하여 웹 업계의 모든 동향, 재해 및 발명품을 통과했습니다.

  • Max, 귀사의 제품이 "3중 제한"이라는 Gordian 매듭을 잘라 소프트웨어 제품을 저렴하고 고품질이며 가능한 한 최단 시간에 생산할 수 있습니까?
  • 아니요.
  • 이것으로 인터뷰가 끝날 수도 있지만 더 자세히 이야기할 수 있는 기회를 드리겠습니다.
  • 이 기회를 주셔서 감사합니다. 사실 우리는 거짓 약속을 할 수 없습니다. 어떤 식으로든 소프트웨어 개발 프로세스를 통합하려는 모든 시도는 다양한 제약과 관습에 어긋납니다. 오늘날 모든 블로깅 플랫폼에서 단일 페이지 웹사이트를 빠르고 저렴하게 구축할 수 있습니다. 그러나 이것은 전문적인 결정이 아닙니다. Sitecore와 같은 매우 멋진 시스템을 사용할 수 있지만 이것은 저렴한 솔루션이 아닙니다.

우리 제품은 비즈니스 지향적인 웹 앱의 창조라는 매우 좁지만 인기 있는 영역에서 가격 품질의 악순환을 끊으려는 성공적인 시도입니다. 그리고 웹 앱을 위한 사용자 인터페이스만큼 전체 웹 앱이 아닙니다.

  • 왜 UI인가? 백엔드에 집중하는 것이 더 논리적일까요? 아니면 시간이 더 많이 소요되는 일일까요?
  • 몇 가지 이유가 있습니다. 첫째, UI는 백엔드 계층만큼 개발하는 데 비용이 많이 들 수 있습니다. 둘째, 많은 아이디어와 스타트업이 사용자의 요구 사항을 UI 계층으로 시각화하는 데 중점을 둡니다. UI 프로토타입은 자금 조달을 위해 투자자에게 보여줄 수 있는 것입니다. 셋째, UX 영역 전체가 크게 저평가되어 있으며, 이는 UI 개발자의 수가 부족하거나 기술이 부족한 것으로 표현됩니다. 우리는 주요 소프트웨어 공급업체이고 주로 우리 자신을 위해 Webix 제품을 만들었기 때문에 이러한 문제를 알고 있습니다. 그리고 나서야 우리는 그것을 시장에 소개했습니다.
  • 그래도 단일 자바 기반 프레임워크에서 백엔드와 프론트엔드를 개발하는 Vaadin의 길을 따라가는 것은 어떨까요?
  • 유연성과 다용도성에 관한 모든 것입니다. 우리는 프레임워크나 시스템 제한에 얽매이지 않았습니다. 우리 블로그의 사례 연구 섹션을 보면 .Net 기반 SharePoint까지 다양한 플랫폼에 대한 구현 예를 찾을 수 있습니다.
  • 제품 자체에 대해 자세히 알려주세요.
  • Webix는 UI 프레임워크 및 JavaScript 라이브러리입니다. 즉, 웹 인터페이스의 빠른 개발을 위한 웹 개발 도구입니다. 이 제품은 UI 계층 개발에 시간을 절약하려는 전문 개발자와 가능한 한 빨리 고용주에게 혜택을 주고자 하는 주니어 개발자 모두를 대상으로 합니다. 실용적인 관점에서 Webix는 모든 비즈니스 애플리케이션을 구축하는 데 사용할 수 있는 100개 이상의 UI 컨트롤 및 위젯입니다. 이 외에도 사용자는 보다 편리하고 빠른 개발을 위한 또 다른 도구 세트, 즉 적절한 애플리케이션 지원 및 사용자 지정을 위한 마이크로프레임워크, 시각적 UI 디자이너, 템플릿 카탈로그, 문서 및 사용자 지원을 얻습니다. 또한 복잡한 위젯을 강조하고 싶습니다. 파일 관리, 사용자 관리, 작업 관리, 스케줄러, SQL 쿼리, 채팅 메신저와 같은 가장 인기 있는 응용 프로그램 작업을 위한 본격적인 SPA 응용 프로그램입니다.
  • 표준 소리. 다른 도서관과 어떻게 다른가요?
  • 한 번에 모든 문제를 해결하려고 하지 않기 때문입니다. 우리는 복잡한 비즈니스 기능에 초점을 맞추고 이러한 기능이 완벽하게 작동하는 전체 에코 환경을 만들고 기능을 완벽하게 만들었습니다. 예를 들어, 우리는 각각의 개별 프레임워크 또는 시스템 플랫폼에 대해 전문화된 솔루션을 제공하지 않습니다. 숙련된 개발자는 기존 문서의 도움으로 이를 쉽게 처리할 수 있습니다. 그러나 우리는 고성능 및 기능이 풍부한 구성 요소를 제공합니다. 예를 들어 DataGrid에는 20개 이상의 기능(클립보드 지원, 바로 가기, 컨텍스트 메뉴, 드래그 앤 드롭, 필터, 데이터 유효성 검사, 페이지 매김, rowspan, colspan, 그리드 그룹화)이 있습니다. Webix의 또 다른 기능은 검증된 디자인입니다. 우리는 우리의 제품을 모든 프로젝트에 대한 재료 설계 전문 지식의 전달자로 홍보합니다. 우리는 모든 위젯이 완벽하게 호환되도록 열심히 노력했습니다. Webix 사용자는 상자에서 꺼내자마자 정확하고 아름다운 머티리얼 디자인을 얻을 수 있습니다.
  • 이런 화려한 기능에 대한 저속 작업 대가 아닌가?
  • 거꾸로. Webix는 DataGrid 위젯에 대한 최고의 렌더링 속도 중 하나를 보여줍니다(Bryntum 전문가의 연구에 따르면). 이것은 우리의 연구가 아니라 경쟁 개발자에 의해 수행되었습니다.
  • 귀하의 제품에 대한 진입 임계값은 무엇입니까?
  • 객체 지향 프로그래밍을 사랑하고 JavaScript의 기본 사항을 알고 있어야 합니다. 나머지는 학습 자료, 대화형 자습서, 예제 및 기성 템플릿을 사용하여 스스로 배울 수 있습니다.
  • 그럼에도 불구하고 Angular나 React가 있을 때 제품의 요점은 무엇입니까?
  • 이것은 가장 자주 묻는 질문 중 하나입니다. Angual이나 React와 같은 글로벌 플랫폼과 경쟁하지 않습니다. 우리는 그것들을 유기적으로 보완합니다. Webix는 모든 아키텍처에 쉽게 통합됩니다. 예, 지정된 프레임워크에는 구성 요소 라이브러리가 있습니다. 그러나 그것들은 우리의 솔루션만큼 기능적이고 다재다능하지 않습니다. 숙련된 개발자는 순수 React 라이브러리에 필요한 기능을 사용자 지정하거나 구현하는 데 얼마나 많은 시간과 리소스를 소비할지 알고 있습니다. Webix는 이미 기성품 솔루션을 제공합니다. 그리고 여기에서 우리는 대화의 초석인 "삼중 제한"에 대해 언급했습니다.

우리는 세 가지 중요한 비즈니스 사례를 해결하기 위해 제품을 만들었습니다.

  1. 프로토타이핑. UI 프로토타입은 소프트웨어 개발 주기의 첫 번째 단계인 비즈니스 분석 프로세스의 필수적인 부분입니다. Webix를 사용하면 프로그래밍에 의존하지 않고도 UI 프로토타입을 빠르고 효율적으로 얻을 수 있습니다. 아니면 가능한 한 빨리 MVP를 받으세요. 그리고 이 모든 것은 프로젝트 개발의 가장 초기이자 가장 중요한 단계입니다.
  2. 인기 있는 애플리케이션 작업을 위한 기성품 위젯 앱. 예를 들어, 사용자 관리자는 백엔드를 포함하고 모든 다중 사용자 애플리케이션의 핵심 역할을 할 수 있는 본격적인 관리자 패널입니다.
  3. UI 레이어의 고속 프로그래밍. Webix는 객체 지향 프로그래밍에 능한 사람들에게 간단하고 직관적입니다. 기본 사항을 배우려는 노력의 대가로 Webix는 환상적인 기능을 제공합니다.
  • 그래도 몇 가지 의문점이 있습니다. 사용자를 끌어들이는 Webix 마법이 있습니까?
  • 예, 일종의 마술입니다. 다음은 12줄의 코드를 사용하여 기성품 비즈니스 애플리케이션을 얻는 방법에 대한 아름다운 예입니다. 그리고 매우 훌륭하게 작동하며 세 가지 요인 덕분에 WOW 효과를 냅니다.
  1. 미리 정의된 콘텐츠. 이것은 컨트롤을 그리는 것만으로는 충분하지 않으므로 콘텐츠로 채워야 제대로 표시되는지, 자신에게 맞는지, 치수가 올바르게 설정되었는지 여부를 이해해야 하기 때문에 이것은 매우 중요한 구성 요소입니다. 이 기능만이 개발자의 몇 시간을 절약할 수 있습니다.
  2. 완전한 기능의 라이브 애플리케이션. 모든 컨트롤과 기능이 여기에서 작동합니다. 사용자는 추가 설정 없이 앱과 상호 작용할 수 있습니다.
  3. 멋진 디자인.

WOW 효과는 개발자의 기대를 반복적으로 예상하기 때문에 발생합니다. 조금만 노력하면 품질, 기능, 아름다움 면에서 비교할 수 없는 결과를 얻을 수 있습니다.

  • 예, 이제 그것이 인상적일 수 있음을 인정합니다. 우리는 개발의 품질과 속도에 대해 이야기했습니다. 하지만 가격은 어떻습니까?
  • Webix는 무료 오픈 소스 라이브러리로 배포됩니다. 제품의 풀버전이지만 일부 위젯과 복잡한 위젯은 포함되어 있지 않습니다. 더 많은 기능이 필요하거나 상용 제품을 출시하기 위해 상용 라이선스가 필요한 사용자를 위해 Webix Pro를 제공합니다. 가격은 개발자 1명의 개별 라이선스당 USD 450부터 시작합니다.
  • 상용 제품을 개발하기 위해 오픈 소스 패키지를 사용할 수 없는 이유를 설명하십시오. 이것은 금지되어 있습니까?
  • 전혀 그렇지 않다. 물론 GNU GPL3 라이선스 규칙에 따라 오픈 소스 패키지를 사용하여 상용 제품을 개발할 수 있습니다. 그러나 주요 문제는 지적 재산권의 완전성입니다. 향후 소프트웨어 제품을 구매하거나 판매하려는 경우 제품의 라이선스 프로필을 연구하여 지적 재산권이 시작되고 끝나는 위치를 이해해야 합니다. 이것은 상용 라이센스로 수행하는 것이 훨씬 쉽습니다.
  • 흥미로운 이야기에 감사드리며 이 매력적인 제품 개발에 성공하시기를 바랍니다.

이에 대한 생각이 있습니까? 의견에 아래로 알려주거나 Twitter 또는 Facebook으로 토론을 진행하십시오.

편집자 추천:

  • Android 에뮬레이터는 컴퓨터에서 실행하기에 안전합니까?
  • IoT 개발 서비스의 이점
  • 앱 개발 프로세스: 아이디어에서 실현 가능한 제품으로 가는 6단계
  • Google의 Android Dev Summit은 앱 업데이트 및 폴더블 화면 지원에 대한 변경 사항을 제공했습니다.