Я не знаю, что значит «западная разработка», под этим обычно понимают Европу.
На самом деле BPWin изначально делала Logic Works, потом CA купила. Ни та, ни другая компания не являются европейскими.
Да и меня интересует не то, в Европе, в России или в США что-то сделано, а то, насколько это что-то мои потребности закрывает за те деньги, которые за это что-то просят.
В этом обзоре хотелось бы видеть описание основных отличий от других средств описания-моделирования, например, от Enterprise Atchitect, который продаётся за очень разумные деньги.
Отличный пример советского подхода к управлению. Одна проблема — сейчас мир гораздо более открытый… И такой подход приводит к тому, что под управлением остаются только те, которым лучше ничего и не делать — меньше накосячат.
Ну не смешите мои тапочки, а то сейчас российские программисты по вокзалам побираются…
Грамотные специалисты сами решают, что им изучать, и куда посылать тех, кто говорит им чем заниматься.
Вообще, ощущение, что народ лозунгов начитался каких-то…
Да ладно, а кто-то посчитал, для интереса, сколько будет стоить:
— переписывание существующего софта — для работы с/под/над импортозамещённым софтом, его тестирование
— обучение программистов/архитекторов/администраторов
— аттестация, сертификация, прочие мероприятия, связанные с изменениями
— адаптация средств защиты под новые чудесные приложения
Кто возьмёт на себя бремя тестирования в промышленных масштабах нового софта? У Сбера вон с Ораклом проблемы были, так это Оракл, которого полмира использует и Сбер, который половине страны деньги переводит. А тут будем новые грабли на себе пробовать? Кто за это платить станет?
Куда пошлют импортозаместителей грамотные специалисты, которым предложат забыть Оракл или Java и начать изучать СУБД Ока-4 (кто знает, тот поймёт ;) ) или язык программирования Чай-2?
Может уж лучше направить титанические усилия на создание чего-то действительно нового, чем на переписывание имеющегося?
Вообще, мне каким-то вредительством это дело кажется…
Я не понимаю, почему вместо нормального рыночного подхода цена-качество начинают впихивать непонятные вещи под красивым бантиком «Импортозамещение»… Попилят кучу денег, по качеству окажется… ну, как и всё отечественное, стоить будет раза в два больше аналогичного буржуйского…
Это за IntelliJ IDEA Ultimate для Individual Developer, на один год.
Нет, я, конечно, понимаю, что по сравнению со стоимостью лицензии на Delphi это абсолютно жалкие копейки, но…
Мда, цена не порадовала.
Вот раньше была безумно дорогая лицензия на Photoshop и относительно гуманная лицензия на Lightroom. Теперь вместо этого можно платить в месяц 300-1 рублей и пользоваться обоими продуктами. За два года такой подписки получается стоимость «обычной» лицензии на Lightroom, а фотошоп становится приятным подарком.
Это правильная подписка.
Здесь же за год просят $119 — почти столько же, сколько и лицензия для Individual Developer была.
Вот это уже фигня какая-то. Во времена 30-рублей-за-доллар это ничего было бы, но сейчас…
Ога, аналогичное решение пользуем. Только даже без сервиса, thread результат постит.
Кого напрягает потенциальное количество одновременных потоков — есть заклинание «ExecutorService».
Хм, то есть предлагаете сделать так, чтобы всё содержимое Google Play входило в состав любого андроид-устройства изначально? А как ж иначе, иначе получается ограничение чьих-то интересов. Вдруг человек не догадается перейти на маркет и скачать нужно ему приложение…
Вы забываете о разработчиках софта для телефонов. Если нет части требуемых и ожидаемых API, наступает пипец. Как приложение зарегистрируется для получения Push-уведомлений, если не предустановлены Google Play Services? Единственный вариант — принудительно отправить пользователя скачивать их на Google Play. Задача усложняется, если ещё и Google Play не установлен.
Сейчас я уверен, что почти на любом устройстве установлены гугло-карты, Google Play Services — то, что используют наши приложения.
Мы уже сталкивались с устройствами, на которых они не предустановлены, приходится анализировать, перепинывать пользователя на загрузку на Google Play, жесть.
Можно пойти и дальше, и при загрузке девайса спрашивать — а вот для видеоподсистемы поддержку какую хотите, от такого производителя, или от другого, в каком виде ядро собрать желаете? Хотите стандартный SQLite или какой-нибудь другой? Для push-уведомлений стандартную реализацию или вот восемь на выбор, между собой не совместимых?
А как быть с альтернативными прошивками? На них тоже в ФАС подавать станете?
Для разработчика и так достаточно головной боли с поддержкой разных версий (2, 4, 5), так ещё и тут добавить хотят.
А кто-нибудь смотрел яндекс-карты для городов в регионах? У нас как-то был реквест на замену гугло-карт на яндексовые, почему-то считали, что они для России точнее, ога. Но показав отображение пары уральских городов в гуглокартах и в яндекс-карте, вопрос автоматом снялся. Потому как в яндексе — красивое зелёное поле, а в гугле — улицы, номера домов и прочие ожидаемые радости.
Хотите ставить свои приложения на устройства дополнительно — ну, договаривайтесь с вендорами. В Самсунге, например, и так много мусора разного ставится, пусть ещё будет. Главное дать возможность удалить всё это потом.
А теперь — пусть ФАС говорит — эй, гугль, давай включи уже эти чудесные Яндекс-приложения в базовый образ системы. Ок. Включили. Другие производители софта — вот ж нифига себе? А наши приложения?!
И ещё раз: наличие сервисов Google — это не прихоть, это критичные API. Выкинуть их — это как взять Андроид и обрезать ему левую руку и правую ногу. Ползать будет, но медленно и забавно.
Имеет смысл не лениться и для каждого события сделать отдельный класс, это событие описывающее — тогда не будет проблем с разбором того, кто что хотел и кто что получил.
А так как это класс — то туда легко и удобно добавить полученный результат запроса. При этом активити просто просит сервис что-то сделать — и ждёт event (Event)соответствующего запросу типа. Получив этот event, вызывает у него, к примеру, getData() — и в путь.
Ну и, более того, ещё удобнее в этот же Event добавить информацию о том, успешно ли выполнился запрос. В этом случае активити вначале спросит — эй, event.hasError()?
Кроме того часто бывает возможным такой сценарий: однообразные запросы формируются при выборе пользователем каких-то элементов из списка — ну, например, загрузка выписки по банковской карте.
Вполне может быть так, что пользователь кликнул по одной, ждать ему надоело, он кликнул по другой. А сразу после этого данные по первой карте загрузились и в активити прилетел соответствующий event.
Таким образом видим, что надо как-то отслеживать контекст запроса — и игнорировать ответ, если этот ответ устаревший.
Наиболее простой способ — добавить в event ещё одно поле — requestId.
Активити при вызове сервиса формирует (логично — что UUID) значение requestId и вместе с другими параметрами передаёт его на/в сервис. Сервис по окончании обработки создаёт event, устанавливает ему результат, признак ошибки, бла-бла-бла — и этот самый requestId.
А активити теперь получает event и сравнивает — requestId у этого event такой же, как только что сделанный? Если нет — значит игнорируем event этот, не нужен он больше…
Хорошо если так, очень здорово когда менеджер сам что-то пишет — ему проще понимать возникающие проблемы и транслировать их наверх. Но не у всех хватает на такое занятие времени — семья, дела после работы разные…
Ну с тем же успехом вместо программирования можно подставить: художника, поэта, музыканта, автогонщика, футболиста и кучу других профессий, в которых рост вверх особо и не предусмотрен.
С уходом в менеджмент есть и другая проблема: можно забыть про программирование, базы данных и прочие интересности. То есть можно расти в области управления проектами, но в программировании уже никак, просто не будет времени на это.
Тут уже вопрос личных предпочтений: что больше нравится? Делать что-то самому или руководить другими. Каждый для себя решает.
Здесь сильно от способа взаимодействия с устройством зависит.
Если (для правши) держать в левой ладони, а пальцами правой руки — общаться с девайсом, проблема вряд ли будет иметь место.
Правый верхний угол — это место, куда обычно смотрят в первую очередь, так что положить список того, что можно сделать прямо сейчас, наверное, логичен.
Кроме того, наиболее частые действия показываются иконками на action-bar, за ними в выпадающий список и ходить не надо.
Реализация «меню из нижнего левого угла» имела место с выделенной кнопкой «Меню» по факту.
Что же касается планшетов, то там про работу одной рукой говорить вообще не приходится — если не использовать его, планшет, в качестве веера.
Например, меню настроек на планшете — слева категории, справа — содержимое выбранной категории.
Аналогично в почтовом клиенте: заголовки писем слева, содержимое — справа.
Я не думаю, что тут есть проблема с «дотягиванием» до меню действий — ведь на последних трубках с большим экраном, держа её в правой ладони, всё-равно верхняя половина экрана остаётся недоступной.
Кроме того, навигация находится в верхней части, до которой «одной рукой» не дотянешься — кнопка Up, спиннер или табы. Поэтому вряд ли с этим есть проблема.
На самом деле BPWin изначально делала Logic Works, потом CA купила. Ни та, ни другая компания не являются европейскими.
Да и меня интересует не то, в Европе, в России или в США что-то сделано, а то, насколько это что-то мои потребности закрывает за те деньги, которые за это что-то просят.
В этом обзоре хотелось бы видеть описание основных отличий от других средств описания-моделирования, например, от Enterprise Atchitect, который продаётся за очень разумные деньги.
Грамотные специалисты сами решают, что им изучать, и куда посылать тех, кто говорит им чем заниматься.
Вообще, ощущение, что народ лозунгов начитался каких-то…
— переписывание существующего софта — для работы с/под/над импортозамещённым софтом, его тестирование
— обучение программистов/архитекторов/администраторов
— аттестация, сертификация, прочие мероприятия, связанные с изменениями
— адаптация средств защиты под новые чудесные приложения
Кто возьмёт на себя бремя тестирования в промышленных масштабах нового софта? У Сбера вон с Ораклом проблемы были, так это Оракл, которого полмира использует и Сбер, который половине страны деньги переводит. А тут будем новые грабли на себе пробовать? Кто за это платить станет?
Куда пошлют импортозаместителей грамотные специалисты, которым предложат забыть Оракл или Java и начать изучать СУБД Ока-4 (кто знает, тот поймёт ;) ) или язык программирования Чай-2?
Может уж лучше направить титанические усилия на создание чего-то действительно нового, чем на переписывание имеющегося?
Вообще, мне каким-то вредительством это дело кажется…
Я не понимаю, почему вместо нормального рыночного подхода цена-качество начинают впихивать непонятные вещи под красивым бантиком «Импортозамещение»… Попилят кучу денег, по качеству окажется… ну, как и всё отечественное, стоить будет раза в два больше аналогичного буржуйского…
Нет, я, конечно, понимаю, что по сравнению со стоимостью лицензии на Delphi это абсолютно жалкие копейки, но…
Вот раньше была безумно дорогая лицензия на Photoshop и относительно гуманная лицензия на Lightroom. Теперь вместо этого можно платить в месяц 300-1 рублей и пользоваться обоими продуктами. За два года такой подписки получается стоимость «обычной» лицензии на Lightroom, а фотошоп становится приятным подарком.
Это правильная подписка.
Здесь же за год просят $119 — почти столько же, сколько и лицензия для Individual Developer была.
Вот это уже фигня какая-то. Во времена 30-рублей-за-доллар это ничего было бы, но сейчас…
Кого напрягает потенциальное количество одновременных потоков — есть заклинание «ExecutorService».
— OK, Google!
— Яндекс, ФАС!
Сейчас я уверен, что почти на любом устройстве установлены гугло-карты, Google Play Services — то, что используют наши приложения.
Мы уже сталкивались с устройствами, на которых они не предустановлены, приходится анализировать, перепинывать пользователя на загрузку на Google Play, жесть.
Можно пойти и дальше, и при загрузке девайса спрашивать — а вот для видеоподсистемы поддержку какую хотите, от такого производителя, или от другого, в каком виде ядро собрать желаете? Хотите стандартный SQLite или какой-нибудь другой? Для push-уведомлений стандартную реализацию или вот восемь на выбор, между собой не совместимых?
А как быть с альтернативными прошивками? На них тоже в ФАС подавать станете?
Для разработчика и так достаточно головной боли с поддержкой разных версий (2, 4, 5), так ещё и тут добавить хотят.
А кто-нибудь смотрел яндекс-карты для городов в регионах? У нас как-то был реквест на замену гугло-карт на яндексовые, почему-то считали, что они для России точнее, ога. Но показав отображение пары уральских городов в гуглокартах и в яндекс-карте, вопрос автоматом снялся. Потому как в яндексе — красивое зелёное поле, а в гугле — улицы, номера домов и прочие ожидаемые радости.
Хотите ставить свои приложения на устройства дополнительно — ну, договаривайтесь с вендорами. В Самсунге, например, и так много мусора разного ставится, пусть ещё будет. Главное дать возможность удалить всё это потом.
А теперь — пусть ФАС говорит — эй, гугль, давай включи уже эти чудесные Яндекс-приложения в базовый образ системы. Ок. Включили. Другие производители софта — вот ж нифига себе? А наши приложения?!
И ещё раз: наличие сервисов Google — это не прихоть, это критичные API. Выкинуть их — это как взять Андроид и обрезать ему левую руку и правую ногу. Ползать будет, но медленно и забавно.
Имеет смысл не лениться и для каждого события сделать отдельный класс, это событие описывающее — тогда не будет проблем с разбором того, кто что хотел и кто что получил.
А так как это класс — то туда легко и удобно добавить полученный результат запроса. При этом активити просто просит сервис что-то сделать — и ждёт event (Event)соответствующего запросу типа. Получив этот event, вызывает у него, к примеру, getData() — и в путь.
Ну и, более того, ещё удобнее в этот же Event добавить информацию о том, успешно ли выполнился запрос. В этом случае активити вначале спросит — эй, event.hasError()?
Кроме того часто бывает возможным такой сценарий: однообразные запросы формируются при выборе пользователем каких-то элементов из списка — ну, например, загрузка выписки по банковской карте.
Вполне может быть так, что пользователь кликнул по одной, ждать ему надоело, он кликнул по другой. А сразу после этого данные по первой карте загрузились и в активити прилетел соответствующий event.
Таким образом видим, что надо как-то отслеживать контекст запроса — и игнорировать ответ, если этот ответ устаревший.
Наиболее простой способ — добавить в event ещё одно поле — requestId.
Активити при вызове сервиса формирует (логично — что UUID) значение requestId и вместе с другими параметрами передаёт его на/в сервис. Сервис по окончании обработки создаёт event, устанавливает ему результат, признак ошибки, бла-бла-бла — и этот самый requestId.
А активити теперь получает event и сравнивает — requestId у этого event такой же, как только что сделанный? Если нет — значит игнорируем event этот, не нужен он больше…
С уходом в менеджмент есть и другая проблема: можно забыть про программирование, базы данных и прочие интересности. То есть можно расти в области управления проектами, но в программировании уже никак, просто не будет времени на это.
Тут уже вопрос личных предпочтений: что больше нравится? Делать что-то самому или руководить другими. Каждый для себя решает.
Если (для правши) держать в левой ладони, а пальцами правой руки — общаться с девайсом, проблема вряд ли будет иметь место.
Правый верхний угол — это место, куда обычно смотрят в первую очередь, так что положить список того, что можно сделать прямо сейчас, наверное, логичен.
Кроме того, наиболее частые действия показываются иконками на action-bar, за ними в выпадающий список и ходить не надо.
Реализация «меню из нижнего левого угла» имела место с выделенной кнопкой «Меню» по факту.
Что же касается планшетов, то там про работу одной рукой говорить вообще не приходится — если не использовать его, планшет, в качестве веера.
Аналогично в почтовом клиенте: заголовки писем слева, содержимое — справа.
Очевидно, про это речь.
Кроме того, навигация находится в верхней части, до которой «одной рукой» не дотянешься — кнопка Up, спиннер или табы. Поэтому вряд ли с этим есть проблема.