Wireframing сверхпланирует?

В Go мы не поддерживаем бессмысленные микробенчмарки. Если вы собираетесь запустить тест, используйте пакет Go testing.

Например,

Вывод:

$ go test sum_test.go -bench=. -benchmem
goos: linux
goarch: amd64
BenchmarkSum-8    500000    2905 ns/op    4288 B/op    3 allocs/op
$

sum_test.go:

package main

import (
    "testing"
)

func sumInt(b []byte, c chan int) {
    sum := 0
    for _, num := range b {
        sum += int(num)
    }
    c <- sum
}

func BenchmarkSum(b *testing.B) {
    for N := 0; N < b.N; N++ {
        dat := make([]byte, 4*1024)
        partSum1 := make(chan int)
        partSum2 := make(chan int)
        go sumInt(dat[:len(dat)/2], partSum1)
        go sumInt(dat[len(dat)/2:], partSum2)
        sum := <-partSum1 + <-partSum2
        _ = sum
    }
}
7
задан hlfcoding 24 May 2012 в 21:50
поделиться

4 ответа

"Не удается запланировать, план перестать работать" - или что-то как этот.

Wireframing не ограничен веб-приложениями; это глубоко используется везде, где общий обзор любой системы необходим (это только что назвало что-то еще).

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

Фокус должен быть на предотвращении потраченного впустую усилия - обнаружение на полпути через это что-то существенное, которое влияет на все другие объекты, отсутствуют, не то, что Вы хотите обнаружить. Wireframing в этом случае помог бы в обнаружении большинства главных функциональных потребностей. Необходимо было бы только уточнить функциональную спецификацию, где абсолютно необходимый. Используя Photoshop для разработки Вашего также будет 'потраченное впустую усилие" - намного лучше для использования эволюционной разработки прототипа (метод RAD) с CSS/HTML - но все еще сочиняет и бумажный макет намерений.

5
ответ дан 6 December 2019 в 21:21
поделиться

Это, вероятно, зависит от того, с кем Вы работаете. Если это - Вы и разработчик, то функциональная спецификация могла бы быть слишком большой проблемой. Но в моем задании руководители хотят знать точно, что они собираются получить в конце проекта и таким образом, у нас было очень твердое время, реализовывая итерационную разработку. Обычно повторения определяются с каркасами, функциональными спецификациями и дразнят взлеты..:)

1
ответ дан 6 December 2019 в 21:21
поделиться

37Signals рекомендует пропускать даже Photoshop и идущее право на HTML. См. http://www.37signals.com/svn/posts/1061-why-we-skip-photoshop. Я соглашаюсь с их оценкой предварительного планирования. Я не думаю стоящий времени в конечном счете, когда Вы могли проводить время, создавая рабочий прототип в HTML/CSS/JS.

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

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

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

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