Задать вопрос
  • В каком контексте значение класса String является неизменяемым в отличии от StringBuilder?

    xez
    @xez Куратор тега Java
    TL Junior Roo

    Почему нужно было помимо класса String создавать дополнительные классы по типу StringBuilder?

    Потому, что String - иммутабельный класс. Чтобы конструировать строки как раз добавлены StringBuffer (в версии 1.0) и StringBuilder (в 1.5).

    В данном примере строка s спокойно изменяется путем конкатенации, что аналогично sb.append

    В итоге у вас каждый раз создается новый объект. Не всегда это бывает уместно.

    2. Почему все методы StringBuilderнельзя было поместить в класс String, чтобы не плодить классы строк?

    Потому, что это нарушает принцип единой ответственности. Так же можно заметить, что мысль не стоит на месте и со временем появляются новые методы для конструирования строк.

    3. Почему s.equals(sb) равно false, если мы сравниваем только значения, а не ссылки

    Потому, что вы сравниваете разные объекты. StringBuilder - это не String.
    Ответ написан
    Комментировать
  • Можно ли купить операционную систему macOS?

    @dronmaxman
    VoIP Administrator
    может купит операционную систему macOS легально как нибудь?

    Она продается вместе с оборудованием, легально можно установить только на технику apple.

    а к их операционной системе я привык.

    Поставь linux и настрой окружение что бы было похоже на macOS или хакинтош.
    Ответ написан
    Комментировать
  • Есть сервера, которые стоит написать именно на Java, а не на Node?

    @Everything_is_bad
    что для REST серверов лучше Node не найти
    это твой главный неправильный вывод, лучший будет тот, который написан на технологии, которую лучше всего знает исполнитель.

    Например стриминговый сервер или сервер для чата, он же относится к разряду типичных запрос/ответ
    еще одна большая ошибка, вообще всё смешал в кучу, "стриминговый" это больше про максимальный pull c сервера, "чата" это про полноценный обмен в обе стороны, а "запрос/ответ" это про базовый http и он для этих обоих случаев, очень невыгодная стратегия, поэтому для них в http написаны свои частные протоколы, например, websocket для нормальной реализации чатов.
    Ответ написан
    5 комментариев
  • Как проинициализировать по умолчанию переменную?

    sergey-gornostaev
    @sergey-gornostaev Куратор тега Java
    Седой и строгий
    Определить два конструктора - один с параметрами, а второй без, устанавливающий значения по умолчанию. При наличии файла читать из него параметры и вызывать конструктор с параметрами. При отсутствии файла вызывать конструктор по умолчанию. Если параметров много, то можно вместо множества полей использовать коллекцию или подключить шаблон "строитель", вам виднее, что будет правильнее в вашем случае.
    Ответ написан
    Комментировать
  • Где найти недостающие куски пазла, что лежат между сеньором и архитектором?

    sergey-gornostaev
    @sergey-gornostaev
    Седой и строгий
    Прежде всего, нет никакого "между". Сеньор - это грейд, а архитектор - это должность. Программисты в архитекторы не вырастают, а уходят, как и в менеджмент. По сути же вопроса, парадигмы, шаблоны проектирования и прочее можно выучить по книжкам, но по-настоящему понять можно только попав в условия, для которых они были придуманы. То есть это больше практический навык длительной работы в крупных, быстроизменяющихся проектах с большой командой. Ну, и стоит заметить, что проектирование систем - это не столько код, сколько стандарты, спецификации, схемы и ооочень много общения с бизнесом, разработкой, эксплуатацией, безопасниками и т.д. и т.п.
    Ответ написан
  • Разработка продающего сайта для начинающих. Как не заплатить деньги зря?

    @Refguser
    Решения для бизнеса: от создания ИМ до...
    Главный вопрос - не сделать ИМ, а привести в него клиентов. Т.е. это работа с целевой аудиторией (ЦА) и уникальным торговым предложением (УТП). Если нет понимания как это сделать, то всё остальное не имеет смысла. И на это, прежде всего нужно потратиться.

    А площадка для продаж - дело второе. Не последнее, но не первое - второе. Будь то маркетплейс, соцсети или собственный ИМ.

    Но в данном случае есть важный нюанс - работающий оффлайн-бизнесс. Т.е. если рассматривать ИМ не как первичный инструмент продажи, а как дополнительное удобство для покупателей, то можно начать с какого-нибудь конструктора типа тильды. Но надо помнить, что переезд с конструкторов обойдется дороже, чем делать сразу нормальный ИМ.
    Ида, сильно заморачиваться на "дизайн" - не нужно. Главное требование - покупателю должно быть удобно и понятно совершать покупки.
    Ответ написан
    4 комментария
  • На сколько Java отличается в обозначении типизации от C# для понятия TS?

    Alexandroppolus
    @Alexandroppolus
    кодир
    Учить TS по курсам Java/C# неправильно. Да, у них есть пересечения (например, в классах), но в целом семантика и философия весьма отличается.

    Если ты уже писал код и не совсем новичок, то курсы не нужны. Сначала постигни фундамент - JS, чтобы понять что к чему.
    https://learn.javascript.ru/ - вот тут.

    Потом, усвоив и попрактиковавшись, можно обмазывать это дело типами. Всё необходимое есть в https://www.typescriptlang.org/docs/handbook/intro.html - по этому материалу ты в максимально короткие сроки научишься типизировать.
    Два стартовых поинта:
    1) TS - это только проверка типов, а не что-то рантаймовое (никакого рефлекшена, как в C#, нет).
    2) всегда можно и нужно обойтись без any.
    Ответ написан
    Комментировать
  • На сколько Java отличается в обозначении типизации от C# для понятия TS?

    У TS типизация структурная и там есть алгебраические типы данных, а у C#/Java номинативная и алгебраических типов данных нет (upd: хотя вроде в жаве есть enum class)
    Ответ написан
    3 комментария
  • На сколько Java отличается в обозначении типизации от C# для понятия TS?

    xez
    @xez Куратор тега Java
    TL Junior Roo
    Странная идея вообще учить язык А или Б для того чтобы понять язык В.
    Учите TS чтобы понимать TS, учите C# чтобы понимать C#.
    Ответ написан
    Комментировать
  • Берут ли программистом 1с имея только сертификаты профессионала и специалиста?

    sergey-gornostaev
    @sergey-gornostaev
    Седой и строгий
    Высшее техническое не требуется даже тем, кто пишет критические банковские системы. А 1Снику экономическое ещё и полезнее будет, умеющих код писать как собак, понимающих прикладную область днём с огнём не сыщешь.
    Ответ написан
    Комментировать
  • Что делать если разработали и выложили в Сеть программу с таким же названием, как у меня?

    BasiC2k
    @BasiC2k
    .NET developer (open to job offers)
    Нужно различать авторское право и право на товарный знак (название).
    Авторское право - верно, появляется у Вас по факту создания авторского произведения (программы).
    А вот с правом на товарный знак всё сложнее. Если кратко - кто запатентовал использование товарного знака на определённой территории, тот и прав. Даже если Вы начали использовать название раньше, это не поможет Вам запретить его использование другими лицами (но возможно спасёт от финансовых претензий). Любой суд Вам скажет, что ничего Вам не мешало выполнить регистрацию товарного знака раньше.
    Вам нужно опасаться возможных претензий со стороны этих "нехороших людей". Для этого нужно найти реестр товарных знаков на территории РФ (он в открытом доступе) и проверить - успел ли кто-либо оформить права на это название. Если никто не оформил - у Вас есть все шансы сделать это первым.
    Если право уже оформлено третьей стороной - проверьте, в каких категориях сервисов или товаров правообладатель может использовать это название. Возможно там нет "программ для ЭВМ".
    Если все варианты решения исчерпаны - можно сменить название программы или сменить юрисдикцию её авторов. Например автор программы может жить в другой стране, следовательно там будет свой реестр .
    Ответ написан
    1 комментарий
  • Когда вписывать технологию в свой стек?

    @Kostik_1993
    Web Developer
    Кто-то говорит, что чуть ли не сразу после чтения документации

    Одного прочтения наверное мало. Но если ты изучил! документацию, не обязятельно наизусть и по ней что-то смог состряпать то уже можно считать что ты ее использовал
    Ответ написан
    Комментировать
  • Как ускорить загрузку сайта?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    Картинки, скрипты, стили не при чём. У вас сама стартовая страница долго формируется сервером.
    spoiler
    657a0ebdc8980129845206.png
    Надо разбираться, что на сервере происходит.
    Ответ написан
    Комментировать
  • VPN для обучения программированию?

    @Drno
    В туркменистане заблокированно уже порядка 70-80% всех IP публичных. С вероятностью в 90% сервера, которые находятся в Турции, будут недоступны.

    Так что ищите кто Вам продаст ВПН к Вашей стране, и уточняйте заранее можно ли его будет установить на ПК.

    И да, npm не работает, потому что у него нет доступа к нужным IP адреам и ресурсам.
    Ответ написан
    Комментировать
  • Насколько Spring Security хорошо защищает твой бакэнд?

    xez
    @xez
    TL Junior Roo
    Spring security - фреймворк аутентификации конкретного приложения.
    Okta - поставляет решения для аутентификации набора приложений, при этом аутентификацией какого-то конкретного приложения оно не занимается. Это типа как "войти с помощью google".
    Сранивать spring security с okta - нет никакого смысла.
    Ответ написан
    2 комментария
  • Как компилировать jar в exe?

    @Dementor
    программист, архитектор, аналитик
    А если не видосы смотреть, а стековерфлоу?
    https://stackoverflow.com/questions/69811401/how-t...
    Ответ написан
    5 комментариев
  • Чат для быстрого получения информации об айти технологиях?

    @ewgenc
    "Ответ получать быстро и от живых людей" - обычно стоит много денег, иногда неприлично много.
    Ответ написан
    Комментировать
  • Использование Linux?

    @ewgenc
    Покупать корпоративный ноутбук, на котором производителем заявлена поддержка Linux. Или Dell XPS в версии для разработчиков, там Ubuntu стоит изначально. Ну и компании изначально делающие ноутбуки на Linux не стоит забывать, например System76.
    Ответ написан
    Комментировать
  • Почему не работает двусторонняя привязка с родительским компонентом во vue2?

    0xD34F
    @0xD34F Куратор тега Vue.js
    Потому что возможность указывать аргумент для v-model появилась в третьей версии vue.

    Вместо v-model используйте sync.
    Ответ написан
    3 комментария
  • Как сделать простой прием платежей на сайте?

    @Everything_is_bad
    1. Покупатели в РФ.
    2. Соответствие каким то ФЗ - не интересует.
    тут противоречие
    Ответ написан
    1 комментарий