@Mr.Modest Нормальный жабоскоиптер не назовёт жабоскрипт гениальным. Аналогично с похапэшниками. Любой программист с кругозором должен видеть уродства в своих инструментах, особенно если инструменты реально имеют тяжёлое детство.
Лично я думаю что Java язык для не для ПО для ПК. Если это серьезная программа то я бы лично отодвинул кроссплатформенность в пользу скорости, имхо опять-же.
@PashaPash У JS тяжёлое детство. Упоротая типизация (операторы, приведение типов), упоротая объектная модель (прототипы, которые в реальных движках всё равно оптимизируются как классы), ад обратных вызовов (это уже больше к ноде, правда с async/await это уже отходит на второй план), упоротая логика вокруг this (здесь так наследуется, здесь сяк), зоопарк let/var, ну и ещё много чего.
@PashaPash У Java много проблем проистекает из кривых дженериков. Из-за этого костыли размножаются экспоненциально. Проверяемые исключения в современном коде тоже портят малину. Других серьёзных родовых травм у джавы не припоминаю, но этих двух хватает, чтобы портить стандартную библиотеку.
@FoggyFinder Redux - это просто фреймворк на JavaScript. очень легковесный. походите по их сайту, там простые примеры. знание js не особо требуется чтобы понять суть
@PashaPash Вы сииильно преувеличиваете. Случай с foreach — это сущая мелочь. На трудное детство ни в каком приближении не тянет. Несколько родовых травм есть в стандартной библиотеке, и они со временем копятся (недженериковые коллекции, муть с интерфейсами коллекций, прочее такое), есть некоторые спорные недальновидные архитектурные решения (сравнение типов делегатов), но вот прямо родовых травм на уровне PHP или JS у C# нет.
// а читать? Message msg = new Message("ru-RU"); msg.add(msg.getИ()).add(msg.getSpace()).add(msg.getБ()).add(msg.getЕ()).add(msg.getС()).add(msg.getС()).add(msg.getМ()).add(msg.getЫ()).add(msg.getС()).add(msg.getЛ()).add(msg.getЕ()).add(msg.getН()).add(msg.getН()).add(msg.getО()).add(msg.getЕ()); String text = msg.toString();
@PashaPash Хороший специалист напишет на любом языке. :) Вон, на C++ пишут же как-то, хотя более кошмарный язык ещё поискать — при всех родовых травмах он ещё и развивается особенным диким маршрутом.
@Qwertiy к этому можно ещё дополнить отсутствие индексаторов классов, которое приводит к тому, что в ява к коллекциям нельзя обращаться по индексу, как к массивам, что тоже удручает..
@Nofate Не перехвалите компилятор джавы. :) Если в каких-то редких специфических случаях джава работает быстрее плюсов, то это лишь значит, что код для плюсов не оптимизирован.
@VladD ну, на нем надо пописать немного. перестать наступать на детские грабли. и тогда становится понятно, что многие вещи в нем делаются удобнее и красивее
так я вроде и не говорил, что имею что-то против =D мне просто нравится работать с коллекциями с его помощью. И с БД. Это дико удобно и сильно упрощает чтение кода. если без фанатизма подходить, конечно)
@PashaPash А убедительный пример можно? А то отказ от сильной типизации для меня очень серьёзная вещь. Я вот года два назад из-за ошибок в стиле «сложили угол в радианах с углом в градусах» отказался от примитивных типов и перешёл на семантические с перегруженными операциями. А JS мне кажется огромным прыжком назад.
@Nofate Это намёк на одного участника, который считает популярность C# следствием того, что «в программировании находится разная публика, чаще всего которая не блистает интеллектом и не умеет программировать». И я, кстати, рад, что его здесь нет.
@PashaPash Распаковку массивов не в жабоскрипте изобрели. Оно есть в том же питоне, и это не считается каким-то диким синтаксическим сахаром (питон, как и джава, склонен к аскетичности).
@Nofate Не понял, вообще выкидывает? Типа, "раз не произошло за миллион раз, значит, никогда не произойдёт"? Или какой-то бранчинг оптимизируется? Ну так для плюсов тоже есть возможность скомпилить, погонять, перекомпилить по полученному профилю.
@Squidward да, вообще выкинуть. если же исключение все таки произойдет, будет просадка перформанса в этот момент, JIT компилятор откатит оптимизацию и будет думать, что дальше делать. Перекомпилировать по профилю это хорошо, но лучше когда эта перекомпиляция в рантайме.
@VladD наоборот, это отлично локализует изменения. разделением ответственности смены стейта, маппинга стейта и действий между разными изолирвоанными кусками
@VladD это топовый фреймворк на JS на данный момент :) на вполне можно писать сложные вещи :)
Такой ход конем: полностью заменить текст своего старого вопроса и сразу конкурс выставить (чтобы не ждать 2 дня). Это грубое нарушение правила буравчика?
Хочу направить аудио поток из воспроизводимого mp3 файла так, чтобы другая программа думала, что звук идёт будто бы с микрофона. Как это организовать?
Например, у меня есть mp3-файл, и с помощью скрипта python он будет воспроизводить его через мой микрофон, чтобы другие в голосовой комнате услыш...
@NicolasChabanovsky добро вечеро-ноченьки. тут участника надо слить воедино наверное. https://ru.stackoverflow.com/users/269943/era-hosting https://ru.stackoverflow.com/users/269916/era-hosting он тут: https://ru.stackoverflow.com/q/730548/191482 признается))
@Grundy чет ты не туда ссылки нарисовал в своей предвыборной учётке)
Как можно заменить текст на изображение? Пытаюсь через буфер обмена-простое место вместо текста.
Clipboard.SetImage(Image.FromFile("E:\\Dropbox\\Фонд\\1310\\опрос\\1210\\Statistick_program\\Statistick_program\\bin\\Debug\\dig1.bmp"));
// copy the image to the clipboard
// Clipboard.SetIm...
@Grundy ну про единственный профессионал был какой-то совсем далёкий отсыл, а у тебя чет на какого-то непонятного Nofate. Про двойников наверное тоже надо было сюда chat.stackexchange.com/… .... ну это мне так кажется) Но тебе виднее)
The default version of the webbrowser control in a C# Windows Forms
application is 7. I have changed to 9 by the article Browser Emulation, but how is it possible to use the latest version of the installed Internet Explorer in a webbrowser control?
@FoggyFinder ну правка реестра не подходит, если предполагается запускать прогу на других компах, да и вообще, нехорошо глобальные настройки под себя менять - много чего от этого развалиться может, а про мета-тег я не уверен, что это сработает, к тому же, страница-то не его - он её из интернета загружает, так что мимо вопроса
@FoggyFinder браузер начинает парсить страницу и вдруг встречает этот тег (и ещё meta encoding такой же) и думает: "блин.. я ж неправильно паршу страницу" и начинает её парсить заново уже с учётом этого тега
@FoggyFinder принадлежность домену слетит, из-за CORS ничего работать не будет
Несколько мгновений после того, как участник задал свой первый вопрос, в правой части экрана показывается приветственное сообщение:
Welcome!
This is a collaboratively edited question and answer site for программистов. It's 100% free, no registration required.
Got a question ...