Автор Тема: Кому можно рекомендовать ББ - в текущем состоянии!  (Прочитано 51881 раз)

DIzer

  • Гость
Тык там написано кому:
Цитировать
...его имхо можно рекомендовать архитекторам...
понял - уточнение - этот совет с учетом текущих реалий рынка подобных решений (приложений для проектирования софта) или нет?

ilovb

  • Hero Member
  • *****
  • Сообщений: 2538
  • just another nazi test
    • Просмотр профиля
    • Oberon systems
2 valexey
Это если оно позволяет безболезненно и быстро прототипировать. Ну наверно на жабе или там додиезе еще можно, а если c++?

DIzer

  • Гость
блин, вопрос запоздал - очевидно что нет (он касался степени ответственности за предложение)

ilovb

  • Hero Member
  • *****
  • Сообщений: 2538
  • just another nazi test
    • Просмотр профиля
    • Oberon systems
понял - уточнение - этот совет с учетом текущих реалий рынка подобных решений (приложений для проектирования софта) или нет?

Вы про UML? Я не особо верю в него. Давно хочу попробовать и оценить, но все руки не доходят.

DIzer

  • Гость
понял - уточнение - этот совет с учетом текущих реалий рынка подобных решений (приложений для проектирования софта) или нет?

Вы про UML? Я не особо верю в него. Давно хочу попробовать и оценить, но все руки не доходят.
не я про степень вашей ответственности за совет (насчет прототипирования по)...

valexey_u

  • Hero Member
  • *****
  • Сообщений: 3013
    • Просмотр профиля
2 valexey
Это если оно позволяет безболезненно и быстро прототипировать. Ну наверно на жабе или там додиезе еще можно, а если c++?
А какие проблемы? Что ж это за архитектор такой, который не умеет прототипировать на с++ (если c++ основной язык реализации)?

Но возможно мы понимаем под прототипированием/архитектуриванием что-то разное. Уточни пожалуйста, что ты под этим подразумеваешь? У меня ощущение, что от твоего архитектуривания как-то гуём наносит...
Y = λf.(λx.f (x x)) (λx.f (x x))

ilovb

  • Hero Member
  • *****
  • Сообщений: 2538
  • just another nazi test
    • Просмотр профиля
    • Oberon systems
ОК. Вот к примеру я собираюсь писать текстовый редактор.

Прототип я буду писать в BB, т.к. он идеален для этих целей.
1. У меня есть возможность не отвлекаться на язык, т.к. CP очень прост и строг. Т.е. я уверен что не буду гулять по граблям и тратить на них время.
2. У меня есть возможность анализировать работу системы от и до без особого напряга, т.к. доступна вся метаинформация.
3. В CP очень стройное ООП. Очень удобно описывать интерфейс модулей естественным образом, и практически прямолинейно отражать свои мысли в абстракциях.
4. В CP сложно напороться на глупую ошибку.
5. CP - это наверно единственный язык который реально можно изучить в короткий срок и знать целиком. Других языков (не скриптовых) могущих этим похвастать я не знаю.
6. Среда разработки и прототип могут бесшовно взаимодействовать в процессе разработки. Таким наверно только Squeak может похвастаться.

Задача прототипа ведь не дать готовый результат. Его задача дать разработчику обозреть и пощупать свои мысли и идеи в работающей системе. Язык и среда прототипирования не обязаны быть языком и средой реализации. Точно также схема на бумаге не обязана быть правильным cpp классом. Архитектура приложения - это не описание полей и методов классов, точно также как архитектура здания - это не описание строительных материалов  ;) А вот пластмассовый макет, напечатанный на 3D принтере уже дает представление об архитектуре и вскрывает недостатки, которые в мысленном образе было сложно увидеть.

ps И вообще я из своего скромного опыта разработки убедился, что сложную систему с первого раза построить невозможно. Первый блин всегда будет комом сколько не усерайся, т.к. причины фейла тут обычно мало зависят от способностей разработчика. И нужно быть готовым что первую реализацию придется перепроектировать с нуля. Так вот имхо использование BB может сделать этот этап (создания прототипа и перепроектирования) максимально безболезненным.

valexey_u

  • Hero Member
  • *****
  • Сообщений: 3013
    • Просмотр профиля
ОК. Вот к примеру я собираюсь писать текстовый редактор.
Гуевый пример не интересен. Давай по другому.
К примеру я хочу написать серверное приложение (скажем, гм, форум). Как мне в прототипировании тут поможет ББ? Чем он, для прототипирования, тут будет лучше чем C++ или Go? И, тем более, почему он будет лучше, чем RoR какой-нибудь.

Не хочешь форум? Ок. Я создаю новый ЯП. Хочу набросать прототип. Скажи пожалуйста, почему мне тут для прототипирования больше годится ББ нежели AntlrWorks + Java?

ЯП слишком специфичная область? Ну, ок. Я просто пишу прототип для решения той твоей задачки. Как думаешь, в ББ я бы это решил быстрее и правильнее, чем на С++? (а то мое решение было именно что прототипом написанным быстро и грязно). Оно было бы короче? Работало бы быстрее? Спокойно кушало бы UTF8 сразу?

PS. Кстати, ты осознаешь, что описанное тобой прототипирование к построению архитектуры приложения никакого (почти) отношения не имеет? Это две совершенно разные фазы разработки.
Y = λf.(λx.f (x x)) (λx.f (x x))

ilovb

  • Hero Member
  • *****
  • Сообщений: 2538
  • just another nazi test
    • Просмотр профиля
    • Oberon systems
Еще уточнение:
Я не в коей мере не утверждаю что BB можно взять как есть и ваять прототип. Для начала придется организовать себе песочницу. Например однозначно придется написать нормальный профайлер.

ilovb

  • Hero Member
  • *****
  • Сообщений: 2538
  • just another nazi test
    • Просмотр профиля
    • Oberon systems
Гуевый пример не интересен. Давай по другому.
К примеру я хочу написать серверное приложение (скажем, гм, форум). Как мне в прототипировании тут поможет ББ? Чем он, для прототипирования, тут будет лучше чем C++ или Go? И, тем более, почему он будет лучше, чем RoR какой-нибудь.

1. Почему гуевый? Каким это образом соотносится архитектура текстового редактора с гуем?  ???
Гуй и архитектура тут вроде две мало влияющие друг на друга задачи.
2. Про форум не скажу, ибо очень слабо представляю как это делается (сетевые/интернет приложения/сервисы).

Не хочешь форум? Ок. Я создаю новый ЯП. Хочу набросать прототип. Скажи пожалуйста, почему мне тут для прототипирования больше годится ББ нежели AntlrWorks + Java?

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

ЯП слишком специфичная область? Ну, ок. Я просто пишу прототип для решения той твоей задачки. Как думаешь, в ББ я бы это решил быстрее и правильнее, чем на С++? (а то мое решение было именно что прототипом написанным быстро и грязно). Оно было бы короче? Работало бы быстрее? Спокойно кушало бы UTF8 сразу?

Опять при чем тут архитектура? И да ты называешь довольно специфические области, для которых есть специализированные инструменты (которые и созданы по причине специфичности области)
Да и задача эта мизерная... чего там архитектурить то?

PS. Кстати, ты осознаешь, что описанное тобой прототипирование к построению архитектуры приложения никакого (почти) отношения не имеет? Это две совершенно разные фазы разработки.

Возможно я ошибаюсь. Это моя имха из личного опыта. Как это ни странно звучит, но наверно большая часть моей работы заключается в проектировании архитектуры бизнес приложений. Что такое ошибка проектирования знаю не по наслышке. Сам допустил кучу и допускаю такие ошибки постоянно  :)
И в том что архитектура очень мало связана со средством реализации меня никто не переубедит.

valexey_u

  • Hero Member
  • *****
  • Сообщений: 3013
    • Просмотр профиля
1. Почему гуевый? Каким это образом соотносится архитектура текстового редактора с гуем?  ???
Так ты определись уже - ты прототип ваяешь, или уже архитектуру боевой системы строишь?
Y = λf.(λx.f (x x)) (λx.f (x x))

Valery

  • Full Member
  • ***
  • Сообщений: 101
    • Просмотр профиля
На самом деле чем этот ужасный ББ хуже чем турбопаскаль, который до сих пор широко используется?
Отладчика нет.
И это - правильно! :)

ilovb

  • Hero Member
  • *****
  • Сообщений: 2538
  • just another nazi test
    • Просмотр профиля
    • Oberon systems
1. Почему гуевый? Каким это образом соотносится архитектура текстового редактора с гуем?  ???
Так ты определись уже - ты прототип ваяешь, или уже архитектуру боевой системы строишь?
Не понял вопроса. Ты как-то связываешь прототип с гуем?

valexey_u

  • Hero Member
  • *****
  • Сообщений: 3013
    • Просмотр профиля
На самом деле чем этот ужасный ББ хуже чем турбопаскаль, который до сих пор широко используется?
Отладчика нет.
И это - правильно! :)
Нет, не правильно. Я уже неоднократно говорил почему. И для обучения не правильно и для работы не правильно. Другое дело, что нельзя давать обучающемуся только такие задачи, где применим пошаговый отладчик. В мире полно задачь, где он не применим вообще или его использование сильно затруднено (хотя инструментарий все поддерживает).
Y = λf.(λx.f (x x)) (λx.f (x x))

valexey_u

  • Hero Member
  • *****
  • Сообщений: 3013
    • Просмотр профиля
1. Почему гуевый? Каким это образом соотносится архитектура текстового редактора с гуем?  ???
Так ты определись уже - ты прототип ваяешь, или уже архитектуру боевой системы строишь?
Не понял вопроса. Ты как-то связываешь прототип с гуем?
Связь прототипа с гуем конечно же может быть (если задача то гуевая). Но ты то явно как-то связываешь прототипирование с архитектурой. И вот это уже не верно.
Y = λf.(λx.f (x x)) (λx.f (x x))