이번 포스트에서는 소프트웨어 개발 진행 시 겪게 되는 Versioning 문제에 대해서 서론하고, Versioning 방법인 Semantic Versioning에 대해서 설명한다.
소프트웨어 버전 작성(Software Versioning)은 컴퓨터 소프트웨어의 특정 상태에 대해서 정의를 하는 것이다. 개발자가 소프트웨어 특정 상태를 기록하기 위한 필수적인 사항이다. 버전이라는 구분 방식은 많은 문제(소프트웨어의 상태 혼동 등)를 해결해주었지만 개발자들의 버전 작성 방식의 시점은 제각각 달랐기 때문에 또 다른 문제를 야기했다. 그래서 소프트웨어 버전 작성 방법이 제안됐다. 여러 가지 방법이 있지만 그중 Semantic Versioning이 대세적이다. 이번 포스트에서는 Semantic Versioning에 대해 설명한다.
Semantic Versioning은 Github의 공동 창업자인 Tom Preston-Werner가 소프트웨어 버전 작성 규칙을 정하기 위해 제안한 방법이다. 아래는 Semantic Versioning(v2.0.0-rc1)에 대한 내용이다.
6-1. Patch 버전(Z)은 하위 호환되며 버그 수정 시 올라간다.
6-2. Minor 버전(Y)은 기존 공개 API가 하위 호환되고 새로운 기능, 개선이 추가되거나 공개 API 하나 이상 deprecate될 시에도 올라가야 한다. 부가적인 새 기능이나 개선이 내부 코드에 있을 시에도 올릴 수 있다.
6-3. Major 버전(X)은 하위 호환되지 않는 변화가 추가될 때 올라간다.
예) 1.0.0-alpha < 1.0.0
예) 1.0.0+001 > 1.0.0
Damac Properties is implementing a brand-new project between Port Rashid and Dubai Maritime City called Harbour Lights https://dubai-property.investments/property/harbour-lights/ . It is a 52-storey collection of marine-style apartments with all modern amenities. The new building offers to buy luxury apartments with 1, 2 and 3 bedrooms.
The fashion house de GRISOGONO acted as the main designer of the project. The interiors in the spacious cabin-like rooms and the huge pools overlooking the sea are inspired by luxury cruise liners.
From the building, you can go to the promenade with green trees and flowering plants.
The residential complex will offer a rich choice of amenities, such as:
• a pool;
• barbecue areas;
• a fitness room;
• a Pilates and yoga gym;
• various places to relax;
• landscaped parks.
The complex is located on the first coastline, and the residences will offer stunning views of the sea and the coastal zone.