Вдогонку дискуссии с
nponeccop тут и тут.
Стоит учитывать, что тулы, языки и методологии создаются для двух диаметрально противоположных целей:
Емакс против Ворда
Оберон 2 против Явы
Шлейер-Меллор против RUP
Есть чёткие представители двух групп, где это видно. Есть такие варианты, которые лежат посредине. Но их следует признать просто неудачными попытками.
Естественно, работа на вторую группу гораздо выгоднее и приносит больше славы, почёта и уважения.
Стоит учитывать, что тулы, языки и методологии создаются для двух диаметрально противоположных целей:
- Максимально повысить эффективность инженера, автоматизировав в идеале всё кроме работы мозга
- Позволить максимально большому количеству левого народа изображать продуктивную работу, в идеале полностью выключив работу мозга (по крайней мере головного)
Емакс против Ворда
Оберон 2 против Явы
Шлейер-Меллор против RUP
Есть чёткие представители двух групп, где это видно. Есть такие варианты, которые лежат посредине. Но их следует признать просто неудачными попытками.
Естественно, работа на вторую группу гораздо выгоднее и приносит больше славы, почёта и уважения.
no subject
Date: 2013-08-29 06:58 am (UTC)кстати, емакс против ворда - не совсем корректное сравнение. Тут правильней будет "против эклипса или VS" - которые позволяют мозг совсем не включать.
P.S. а по Шлейер-Меллор что посоветуешь почитать? (кроме "Object Life Cycles: Modeling the World in States", "Object Oriented Systems Analysis: Modeling the World in Data: Modelling the World in Data" и "How to Build Shlaer/Mellor Object Models"?
да и вообще, хотелось бы ссылок на полезные ресурсы про техники про которые ты регулярно говоришь
no subject
Date: 2013-08-29 07:50 am (UTC)ничего себе. я вот работал недавно еще в компании Крайтек, которая написала одну из самых адвансд gaming engine в мире, миллионы строки кода на С++, причем часто математатически и алгоритмически насыщенного (в отличии от многих энтерпрайз систем, где 99% ванильная бизнес логика).
вся работа всегда велась в Вижуал Студии. И что, там мозг был отключен, или, скажем так, МОГ быть отключен без последствий для кода?
no subject
Date: 2013-08-29 07:53 am (UTC)no subject
Date: 2013-08-29 08:04 am (UTC)no subject
Date: 2013-08-29 08:07 am (UTC)Мне вот сейчас индусы из соседнего подразделения выкатили 2500 строк для очень простого приложения, из которых примерно 1000 можно выкинуть без всяких последствий - именно потому-что им среды позволяют этот код колбасить, а не задумываться о его организации.
no subject
Date: 2013-08-29 07:51 pm (UTC)no subject
Date: 2013-08-29 07:53 pm (UTC)no subject
Date: 2013-08-29 08:12 pm (UTC)Ссылки на ресурсы мне ставить влом. Это получатся не записки на память в блоге, а справочный портал.
Шлейер-Меллор сейчас называется Executable UML. Про актуальное состояние не знаю, давно не слышал. Может совсем сдулись.
Есть книга Меллора Executable UML, есть Action Language в очередной версии UML на OMG, ещё какие-то книжки были, но сейчас копаться влом. По сайтам http://xtuml.org/ и http://www.ooatool.com/index.html
Книжка несколько лет обсуждалась в ньюсгруппе на yahoo. [executableuml] и [executableumlTools] Но не знаю, стоит ли это читать. Если тулы умерли, всё это представляет только исторический интерес. Разве что имена можно посмотреть. Там все люди в теме отметелись.
no subject
Date: 2013-08-30 06:19 am (UTC)за xtuml спасибо - на него еще не натыкался, про остальное я знаю
no subject
Date: 2013-08-29 07:23 am (UTC)no subject
Date: 2013-08-29 07:56 pm (UTC)Правильный подход: использовать библиотеки, задавать параметрам или сделать компактный DSL, из которого эти "очень много кода" генерить нажатием кнопки.
no subject
Date: 2013-08-30 01:01 am (UTC)no subject
Date: 2013-08-30 04:38 am (UTC)Библиотеки - это везде и всюду. DSL тоже дофига и больше. Набрав XML markup language можно найти что угодно в любой области. Фреймворков без библиотек я тоже не встречал.
no subject
Date: 2013-08-30 04:47 am (UTC)Пардон. Изучить библиотеки или DSL на порядок проще, чем разобраться в куче малоструктурированного (и плохо документированного) кода.
Почему? Код вполне структурирован и укладывается в типичные методики работы с фреймворками. Просто я не встречал к примеру широкоизвестный MVC фреймворк с DSL. По этой причине у меня и вопросы. К примеру у нас есть типичное приложение для компаний. К примеру для обработки заявок. Там может быть пачка различных форм для CRUD операций. Типично для таких приложений берут какой-нибудь фреймворк и дальше делают или генерацию кода для CRUD или делают в ручную по определенным правилам. Ну или я не совсем понимаю что в данном контексте подразумевается под DSL.
no subject
Date: 2013-08-30 05:03 am (UTC)no subject
Date: 2013-08-30 05:23 am (UTC)@RequestMapping(value = "/client/{idClient}/contract/{idContract}/account/{idAccount}/edit", method = RequestMethod.GET)
Далее помещаем в специальный объект что вернуть. А из функции возвращаем строку указывающую на имя файла шаблона. А какой и откуда возьмется это уже фреймворк по настройкам сам сделает.
no subject
Date: 2013-08-29 09:05 am (UTC)no subject
Date: 2013-08-29 07:50 pm (UTC)Но люди торопились продать, так что думать о последствиях было некогда.
no subject
Date: 2013-08-29 08:09 pm (UTC)Я конечно понимаю что пугать молодешь никому неизвестным, умершим языком прикольный ход в полемике
но если сравнить
питоновское
print("hello world")
или даже сишное
#include
Я конечно понимаю что пугать молодешь никому неизвестным, умершим языком прикольный ход в полемике
но если сравнить
питоновское
print("hello world")
или даже сишное
#include <stdio.h>
int main (void) {
printf ("Hello, world\n");
}
с обероновским
MODULE HelloWorld;
IMPORT Out;
BEGIN
Out.String("Hello World!");
Out.Ln;
END HelloWorld;
- то сразу возникают вопросы и сомнения.
no subject
Date: 2013-08-29 08:22 pm (UTC)Та молодёжь, которой интересно, как живут, как развиваются и почему затухают языки, просто обязана после этого пойти и почитать про Оберон 2. Причём, про его идеологию, историю и отношения с Явой. Остальная меня не интересует.
Да, смотри, пожалуйста, что у тебя с комментариями получается. <stdio.h> стоит писать только тогда, когда ты не во вводе HTML
no subject
Date: 2013-08-31 06:22 pm (UTC)где это прочитать? (хотя я и не молодежь)
no subject
Date: 2013-08-31 07:37 pm (UTC)no subject
Date: 2013-08-31 09:24 pm (UTC)верхняя страница, это как я понимаю, vit-r.livejournal.com/85690.html (и в профиле vit-r.livejournal.com/profile тоже не вижу списка ссылок)
no subject
Date: 2013-08-31 09:28 pm (UTC)no subject
Date: 2013-08-31 09:48 pm (UTC)no subject
Date: 2013-08-29 08:16 pm (UTC)Что моим практическим опытом не подтверждается. Насчёт "большинство", естественно.
no subject
Date: 2013-08-30 05:00 am (UTC)1. Минимизация времени, затрачиваемой на работу.
2. Минимизация усилий мозга, затрачиваемых на работу.
Проблема в том, что мозга человеческая на довольно низком уровне пытается сама работать как можно меньше. Плюс, есть проблема "quis custodiet ipsos custodes" - именно мозг может заставить работать остальные части человека. Как же ему заставить работать себя?
Кстати, минимизация усилий мозга часто достигается и тупой игрой с вашими vim/emacs, в то время, когда нужно просто думать, максимум чертя на бумажке или вообще закрыв глаза.
-------------------------
С другой стороны, отсюда следует, что нужно переходить на новые языки со статической типизацией. Тогда хоть не нужно будет тратить ценные мозговые калории на контроль типов.
no subject
Date: 2013-08-30 05:23 am (UTC)