code: @Override
      public void writeColumnNames(List<Column> columns) throws IOException {
          Writer writer = getWriter();
          for (int i = 0; i < columns.size(); i++) {
              checkSurroundByQuotesAndWrite(writer, getDelimiter(), columns.get(i).getName());
              if (i != columns.size() - 1) {
                  writer.write(getDelimiter());
              }
          }
          writer.write(getEndline());
          writer.flush();
      }
docs: The method to output the column names using the {@link CSVDataWriterImpl#delimiter} delimiter
  using {@link CSVDataWriterImpl#writer}.
  
  @param columns the list of column names.
  @throws IOException appears if the output into writer is impossible.