Веб-приложение [закрытый] процесс разработки

Я рекомендую вам прочитать эту статью. Это очень хорошо объясняет, как использовать гистограммы. https://blog.risingstack.com/d3-js-tutorial-bar-charts-with-javascript/

Я использовал ваш код и сделал простой пример. https://codepen.io/mp-9007/pen/jJpEWY

Основные проблемы связаны с возвращаемыми значениями x, y и height; Вы должны указать координаты x и y в области графика. Рисование гистограммы аналогично рисованию на декартовой плоскости, вы должны указать координаты, где начать полосу, ширину полосы и ее высоту. Источник плана находится в левом верхнем углу изображения.

.attr("x", function(d, i) { //d = input data, i = index of it
    return Xscale(d); //The scaling function returns the coordinate for a given domain value.
})
.attr("y", function(d, i) { //d = input data, i = index of it
    return Yscale(d); //The scaling function returns the coordinate for a given domain value.
})
.attr("width", Xscale.bandwidth())
.attr("height", function(d, i) { //d = input data, i = index of it
    return height - Yscale(d); //The computed y coordinate has to be subtracted from the height of the chart to get the correct representation of the value as a column.
});

Кроме того, домен для оси х можно рассматривать как категории. В вашем коде вы указали только две категории: 0 и data.length. Предоставление массива решило эту проблему.

var Xscale = d3.scaleBand().domain(data)

7
задан GeekJock 6 April 2009 в 22:36
поделиться

9 ответов

Я предполагаю, что у Вас уже есть некоторые пользовательские истории и требования. Мне нравится создавать элементарную модель предметной области (в основном диаграмма классов), возможно, не имея ВСЕХ полей, которые все будет содержать, но достаточно получить общее представление о том, как все соединено, иерархии наследования, и каково все.

Что касается кодирования, мне нравится запускаться с единственного ресурса и получать некоторую основную функциональность, созданную вокруг этого. Я обычно не сцепляю его до DB в этой точке, я применяю довольно простой ДАО, который наполняет вещи в набор объектов области.

Затем, я добавляю горстку незначительных связанных ресурсов и начинаю создавать различные ссылки между ними. На данном этапе я имею несколько объектов области на месте, но, возможно, не создал все поля и материал, в котором они нуждаются. Всего несколько важных полей, которых является достаточно, чтобы дифференцироваться между экземплярами объектов и связать горстку их вместе.

На данном этапе я пытаюсь изложить в деталях объекты области, которые я имею с полями и поведениями, и добавляю необходимые биты к представлению (представлениям) для создания тех функций применимыми. Затем я получаю своего рода реальную применимую работу персистентности, настраиваю проверку и делаю представления симпатичными.

Совершенствуйте то, что Вы имеете, затем выполняете итерации для покрытия остатка от модели.

4
ответ дан 6 December 2019 в 06:51
поделиться

"пользовательские истории"> прототип> дизайн> кодирующий> iteration1> iteration2>...> выпуск

Вот хороший пример повторений:

http://www.asp.net/mvc/

Прокрутите вниз на "ASP.NET Пример приложения менеджера по Контакту MVC", он похож:

  • Повторение № 1 - Создает приложение
  • Повторение № 2 - Подает заявку выглядеть хорошей
  • Повторение № 3 - Добавляет проверку формы
  • Повторение № 4 - Подает слабо связанную заявку
  • Повторение № 5 - Создает модульные тесты
  • Повторение № 6 - разработка через тестирование Использования
  • Повторение № 7 - Добавляет функциональность Ajax
5
ответ дан 6 December 2019 в 06:51
поделиться

Запустите с пользователя, если Вы хотите приложение, которое людям нравится использовать. Затем работайте назад к проектированию баз данных, которое работает с пользовательскими историями.

Если Вы хотите приложение, которое работает как многие, мы знакомы с, где пользователи должны просто там выполнить сопровождение базы данных, запустите с базы данных. Вы, вероятно, закончите быстрее, но Ваши пользователи не будут так же довольны результатом.

4
ответ дан 6 December 2019 в 06:51
поделиться

Лично, я всегда запускаю mindmapping все. Затем я создаю структуру своих моделей, затем я вставил логику для добавления новых данных (ли это быть панелью административного контроля или материалом фронтэнда)

Затем я пишу тесты

Затем я запускаю демонстрирующийся логика, редактирование, и т.д. и т.д., и любая дополнительная необходимая функциональность

2
ответ дан 6 December 2019 в 06:51
поделиться

Если Вы знаете то, что Вы хотите Вас, может приняться за решение проблемы от всех углов, однако, хорошие принципы разработки диктуют, что у Вас есть своего рода спецификация сначала, которая обрисовывает в общих чертах функции, которые Вы хотите. Мало того, что это помогает Вам установить свои этапы функции, но это - удивительно полезное упражнение в том, чтобы распланировать Ваше приложение.

Снова, хороший принцип разработки диктуют, что Вы разрабатываете объекты области или бизнес-объекты сначала. Это - все "существительные" в Вашем приложении. Скажите, что Вы хотите разработать веб-сайт, который показывает бейсбольную статистику для плееров высшей лиги. Объекты области здесь являются существительными "плееры", "статистика", "бейсбол", "лига" и так далее. Для каждого из них Вы создаете модель предметной области и соответствующую таблицу базы данных. Затем Вы начинаете думать о функциональности, Вы хотите добавить к каждому, например, Плеер. CareerSpan () или Плеер. GamesPlayer (международный год).

Дизайн интерфейса может также произойти параллельно, и здесь также необходимо использовать макеты или на бумаге или использующий некоторые инструменты (макеты Balsamiq мой фаворит).

В какой-то момент это просто сводится к персональному управлению и избегающий отслеживания в обратном порядке. При отмене слишком большого количества кода что-то выключено. Система управления исходным кодом поможет Вам понять это также.

3
ответ дан 6 December 2019 в 06:51
поделиться

Я запускаю с модели-> доступ к данным-> схема базы данных-> UI

я делаю то же самое для каждой пользовательской истории (и да делают разработку через тестирование),

2
ответ дан 6 December 2019 в 06:51
поделиться

Я склонен запускаться с базы данных и обрабатывать назад, как выполнение объекта, моделирующего для меня, имеет тенденцию выделять проблемы.

Оттуда я затем создам базовую структуру Веб-приложения (который в Java означает создавать мой проект, добавляя Spring, настраивая источники данных и безопасность и так далее).

После того как у меня есть вся инфраструктура, я буду, затем создавая доступ к данным, контроллеры и представления, обычно создавая одного из каждого для получения подтверждения концепции или так же, как amodel, чтобы младшие разработчики следовали.

Веб-приложения являются итеративными процессами (как правило), и я нахожу, что он лучше всего создает вертикальную часть как можно скорее.

3
ответ дан 6 December 2019 в 06:51
поделиться

Вы упомянули, что являетесь одними в своей работе.

Ответ выше Koistya хорош. Однако я нашел, что путем получения UI в showable состоянии сохраняю клиента более счастливым и получаю их закрытие сделки довольно быстро.

2
ответ дан 6 December 2019 в 06:51
поделиться

При разработке один, сделайте любые работы для Вас. Вот некоторые другие ресурсы для Вас для взгляда на в то время как придумывающий любые работы для Вас. Сообщите, что эти другие подходы принимают команду.

  • Вот страница, которую я создал, который является моей рекомендацией на SDLC.
  • Смотрите на этот обзор RUP, особенно повторяющийся образцовый график на странице 3.
  • ТОЛПА является другой интересной вещью для Вас посмотреть на.

Я надеюсь, что это помогает.

2
ответ дан 6 December 2019 в 06:51
поделиться
Другие вопросы по тегам:

Похожие вопросы: