Здравствуйте, zverjuga, Вы писали:
SD>>ну не обязательно же данные тебе языком возможности использовать в таком уродском виде
Z>это отличный пример, который нужно переписать на сишарп или джаву, чтобы увидеть разницу между свифтом и сишарпом-джавой.
Не уверен, что до конца понял пример, но попробую.
M>>guard let httpResponse = response as? HTTPURLResponse, M>> (200...299).contains(httpResponse.statusCode) else { M>> DispatchQueue.main.async { M>> self.authenticationDidFail = true; M>> } M>> return M>> }
if (response instanceof HTTPURLResponse) {
var httpResponse = (HTTPURLResponse) response;
if (!(200 <= httpResponse.statusCode && httpResponse.statusCode <= 299)) {
DispatchQueue.main.async(() -> {
authenticationDidFail = true;
});
return;
}
}
Z>var array = Enumerable.Range(200, 299).ToArray(); Z>if (foo == null || !array.Contains(foo.someValue)) {
достаточно экстеншена bool IsWithin(this int value, int minimum, int maximum), который проверит значение: statusCode.IsWithin(200, 299)
Z>я уже и не помню, как в сишарпе одной строкой запустить код в главном потоке, потому опустил эту часть.
ровно так же как и в другом языке поддерживающим лямбды – вызовом библиотечного метода, будь то GCD или другая либа.
P.S. не спорю – в свифте очень много удобных свистоперделок, которые упрощают жизнь
P.P.S. в котлине ещё больше, и есть смарт кастинг и корутины
Здравствуйте, std.denis, Вы писали:
SD>P.S. не спорю – в свифте очень много удобных свистоперделок, которые упрощают жизнь SD>P.P.S. в котлине ещё больше, и есть смарт кастинг и корутины
согласен про котлин. сам я с ним не работаю, так как с андроидом не имею дело. но когда изучал синтаксис, то периодически ловил себя на мысли "а ведь отличная же штука, хочу такое же в свифте". думаю, что это следствие того, что котлин моложе свифта и его разработчики потому смогли избавится от тяжелого наследия устаревших штуковин и сразу все сделать хорошо.
Z>думаю, что это следствие того, что котлин моложе свифта и его разработчики потому смогли избавится от тяжелого наследия устаревших штуковин и сразу все сделать хорошо.
котлин года на 2-3 старше свифта 😝
единственное что в нём откровенно раздражает, это отсутствие тернарного оператора (только if-else), и val а не let
Здравствуйте, std.denis, Вы писали:
SD>котлин года на 2-3 старше свифта 😝 SD>единственное что в нём откровенно раздражает, это отсутствие тернарного оператора (только if-else), и val а не let
Здравствуйте, zverjuga, Вы писали:
Z>джава и сишарп — это динозавры, который застыли во времени. громоздкие и с избыточным синтаксисом. сейчас появились более современные и удобные языки, с которыми работать гораздо комфортнее. и потому программисты будут переходить на них. если сишарп и джава не начнут шевелиться и эволюционировать, то ничего хорошего им не светит.
Эволюция ограничена первоначальными установками. Яркий пример — записи,
то что было изначально заложено в скала, фшарп и т.п. с 2016 года не могут завести в сишарп.
В то же время, есть надмножество сишарпа — немерл. который с легкостью реализует новые возможности благодаря системе макросов.
Не хочешь — не пользуешься, если же используешь библиотеку с записями, то просто видишь класс с параметризированным конструктором и ридонли пропертями,
сейчас правда в коре благодаря рослину возможно слабое подобие этого(см ).
— прикольно же(если рид-конфиг вернул nil то cfg по умолчанию)?
Джава конечно более стара, это проявляется в гораздо более медленном старте приложений (на и5-ом до 5-10 секунд!).
Все-таки коре пошустрей.
Хотя появился грааль вм которая вроде умеет в натив преобразовывать бесплатно. при это потребление памяти и скорость значительно улучшаются.
Фичи замусорили сишарп уже,
например деструктор. Реально, зачем он нужен?
есть Color c;
Код будет чище если использовать if(c.Red == 255), а не c switch => (255, _, _);
Язык от этого не становится лучше, он становится сложнее только.
Здравствуйте, Ватакуси, Вы писали:
В>Что случилось с такой перспективной технологией как .net?
С технологией самой по себе все замечательно. Под .net core серверные приложения можно делать кроссплатформенными.
Если нужен классический десктоп под винду — .net core вполне себе работает с WinForms и WPF.
Проблема, мне кажется, в двух вещах.
Отсутствие хайпа. Отпугивает всех, кто на него ориентирован — некоторых начинающих, часть людей с деньгами, определенный слой людей, которые принимают архитектурные решения.
Довольно большой порог входа. Язык C# большой, чтобы просто выучить все его фичи надо много времени. Чтобы научиться их применять надо практиковаться. А это не только время, но и качество практики. Так что большинство решает не заморачиваться а учить Го или Джаваскрипт.
Здравствуйте, Mamut, Вы писали:
M>Вообще, .net начинался 20 (!) лет тому назад, как строго windows-only технология в условиях, когда Винде не было и не предвиделось альтернатив.
Напомню вкратце историю возникновения C#. Вначале была Java. Главная идеология — программы должны работать на любой платформе, поэтому если кто хотел внести изменения в язык, должны были согласовывать с Sun. Microsoft и тогда считал себя круче других, и стал вносить изменения не согласовывая. Sun подал в суд на Microsoft и выиграл. После этого Microsoft отказался от Java и создал свой язык C#, который должен был вытеснить Java.
M>Мобильная и облачная революции произошли всего 10 лет тому назад и далеко не сразу. Падение популярности windows-only .net'а, как ни странно (сарказм), совпало с относительным падением популярности винды, как платформы.
Просто Microsoft решил захватить новые для себя ниши серверов и мобильников и выпустил Windows Server и Windows Mobile. Естественно под это дело начал проталкивать C#. Только не взлетело, и популярность C# пошла на убыль.
SD>>достаточно экстеншена bool IsWithin(this int value, int minimum, int maximum), который проверит значение: statusCode.IsWithin(200, 299) PM>Зачем все эти IsWithin, Contains, LINQ? Коды HTTP уже сгруппированы по сотням:
Да, про это уже говорилось тут, но это если рассматривать API библиотек, а zverjuga рассматривал средства самого языка, а не прикладных библиотек. Т.е. например проверку statusCode на диапазон 222..333
Здравствуйте, CreatorCray, Вы писали:
CC>Здравствуйте, IID, Вы писали:
IID>>1) Флагманы андроидные не сильно дешевле, а иногда и дороже. CC>А какая разница девелоперу под ведроид сколько стоит флагман? Его интересует платежеспособность аудитории, для которой он пишет.
Откуда взялся девелопер ?
Изначальная мысль была что число огрызков стремительно сокращается, и их уже осталось совсем немного.
Собственно откуда взялись ценники-флагманы я тоже не понимаю. Тут уж просто отвечал на попытку Мамута сменить тему.
CC>Прямая. Какие аппы там будут хорошо работать а какие не потянет.
Тем не менее доля эпла падает.
CC>Ну и в целом платежеспособность/готовность покупать у людей с бюджетными моделями как правило ниже.
Неверно. Я уже писал про исследование рынка игр. Как раз небогатые люди с далеко не топовыми компами платили больше всего.
IID>>Славно пригорело. CC>Это просто ты не понимаешь о чём рассуждаешь.
Да это вы тему сменить пытаетесь.
То что в эпле сильнее доят юзеров — факт. Может это и есть причина сокращения доли эпла ?
IID>>Речь о рыночной доле телефонов. И да — доля эпла только снижается. CC>Пофигу. Интересует денежный выхлоп этой доли.
Меня не интересует.
IID>>Причём тут доходы мобильных приложений? CC>Это доходы разработчиков приложений.
Откуда взялись разработчики мы так и не выяснили.
IID>>Когда эплобою возразить хочется, но нечем, он начинает хвастаться как качественно его умеют доить. CC>Пригорает? CC>У меня всю жизнь ведроид межжупрочим
А это я не тебе отвечал, ты тут в разговор вклинился. Впрочем у тебя свой мотив есть, вступиться за работодателя, шоп не обижали.
Здравствуйте, IID, Вы писали:
IID>Откуда взялся девелопер ?
А кто на жабе аппы обычно пишет?
IID>Изначальная мысль была что число огрызков стремительно сокращается, и их уже осталось совсем немного.
Дада, вот вот вымрут совсем.
IID>Собственно откуда взялись ценники-флагманы я тоже не понимаю.
Ты поди в плоском виде форум читаешь и веток обсуждения не видишь?
CC>>Ну и в целом платежеспособность/готовность покупать у людей с бюджетными моделями как правило ниже. IID>Неверно. Я уже писал про исследование рынка игр. Как раз небогатые люди с далеко не топовыми компами платили больше всего.
Эк ты сову растянул то!
Осталось ещё исследование погоды на Марсе приложить и тогда всё станет понятно каким боком игры на нетоповых компах к доходам разработчиков мобильных аппов.
IID>>>Речь о рыночной доле телефонов. И да — доля эпла только снижается. CC>>Пофигу. Интересует денежный выхлоп этой доли. IID>Меня не интересует.
IID>>>Причём тут доходы мобильных приложений? CC>>Это доходы разработчиков приложений.
IID>Откуда взялись разработчики мы так и не выяснили.
Ветку то перечитай наконец. Она началась с фразы "В последнее время выстрелили мобильные предложения. А там рулит Ява."
IID>А это я не тебе отвечал, ты тут в разговор вклинился.
По такой логике я Сократу отвечал а ты вклинился
IID> Впрочем у тебя свой мотив есть, вступиться за работодателя, шоп не обижали.
Здравствуйте, zverjuga, Вы писали:
Z>Здравствуйте, Mamut, Вы писали:
M>>Вот пример C#:
Z>он не соответствует исходному примеру.
Z>1. нет приведения response к HTTPURLResponse с соответствующей проверкой на валидность
Это в C# делается вот так:
if(response is HTTPURLResponse httpResponse)
Z>2. коды должны быть в диапазоне от 200 до 299. а не IsSuccessStatusCode
Это делается через Range operator 200..300. (Ranges в C# — end-exclusive).
Уйдемте отсюда, Румата! У вас слишком богатые погреба.
Здравствуйте, CreatorCray, Вы писали:
IID>>Собственно откуда взялись ценники-флагманы я тоже не понимаю. CC>Ты поди в плоском виде форум читаешь и веток обсуждения не видишь?
Я написал утверждение про количество устройств. Ценники-флагманы уже вы зачем-то в ответ притащили, чтобы тему замылить.
CC>>>Ну и в целом платежеспособность/готовность покупать у людей с бюджетными моделями как правило ниже. IID>>Неверно. Я уже писал про исследование рынка игр. Как раз небогатые люди с далеко не топовыми компами платили больше всего. CC>Эк ты сову растянул то! CC>Осталось ещё исследование погоды на Марсе приложить и тогда всё станет понятно каким боком игры на нетоповых компах к доходам разработчиков мобильных аппов.
Ты придуриваешься ?
Речь о платежеспособных юзерах. Которые ВНЕЗАПНО не коррелируют с ценой девайса. Откуда опять разработчики взялись ?
IID>>>>Причём тут доходы мобильных приложений? CC>>>Это доходы разработчиков приложений.
И эпла...
Да насрать на них. Не о них речь.
IID>>Откуда взялись разработчики мы так и не выяснили. CC>Ветку то перечитай наконец. Она началась с фразы "В последнее время выстрелили мобильные предложения. А там рулит Ява."
Конкретно эта подветка началась с обсуждения числа девайсов
Здравствуйте, CreatorCray, Вы писали:
CC>Здравствуйте, IID, Вы писали:
IID>>Чтобы корова давала больше молока — её надо больше доить и меньше кормить
CC>Care to explain?