powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / Java [игнор отключен] [закрыт для гостей] / вадя. Встретил твой код на хабре.
25 сообщений из 109, страница 4 из 5
вадя. Встретил твой код на хабре.
    #39890408
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton
рантайм
это у заказчика?
Надо при разработке.
...
Рейтинг: 0 / 0
вадя. Встретил твой код на хабре.
    #39890440
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
Но вот скажи, как ты пишешь на js без типизации.
Если перед параметром this поставить false и в самом низу убрать один параметр, то ничего не заругается но работать не будет.
ну с типизацией у js туго.
но как-то мне это не мешает. немного больше внимания и всё.
передать параметры в функцию можно несколькими способами и передать можно любое количество, неизвестное на момент выполнения
...
Рейтинг: 0 / 0
вадя. Встретил твой код на хабре.
    #39890447
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадя
но как-то мне это не мешает
да. Я знаю.
Ты вот сегодня, взял пропустил файлы не jpeg молчком, в консоль которую никто не видит. И всё.
А в корпоративе все строго. Стоп загрузки и ошибку (изумление смайлик) на экран.
Для энтерпрайза js не удобен.
...
Рейтинг: 0 / 0
вадя. Встретил твой код на хабре.
    #39890485
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
А в корпоративе все строго. Стоп загрузки и ошибку (изумление смайлик) на экран.
Для энтерпрайза js не удобен.
тут вопрос спорный, что лучше. ты привык к одному и поэтому тяжело, но иногда количество передаваемых параметров неизвестно и тут уже без возможностей js не обойтись.
тот же энтерпрайз пишут и на node. и ничего.
...
Рейтинг: 0 / 0
вадя. Встретил твой код на хабре.
    #39890490
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
mayton
рантайм
это у заказчика?
Надо при разработке.

Ну тут сорян. Это - недостатки языков динамической типизации.
А именно - компиллятор не может 100% доказать валидность тайп-кастингов.

В строгих языках таких как Scala, типизация возведена в нечто вроде главного смысла.
Тоесть ты думаешь о типах каждую секунду.
...
Рейтинг: 0 / 0
вадя. Встретил твой код на хабре.
    #39890495
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадя
но иногда количество передаваемых параметров неизвестно
приведи пример
...
Рейтинг: 0 / 0
вадя. Встретил твой код на хабре.
    #39890497
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton
В строгих языках таких как Scala, типизация возведена в нечто вроде главного смысла.
Тоесть ты думаешь о типах каждую секунду.
здорово. Гибкость и типизация одновременно?
...
Рейтинг: 0 / 0
вадя. Встретил твой код на хабре.
    #39890498
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гибкость в каком смысле?
...
Рейтинг: 0 / 0
вадя. Встретил твой код на хабре.
    #39890509
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton,
У него вроде преимущество перед java в гибкости. Я не спец в нем.
...
Рейтинг: 0 / 0
вадя. Встретил твой код на хабре.
    #39890519
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не уверен. Его создатель - Мартин Одерский полагал что мультипарадигменность - основная фича.
Тоесть можно ООП-стиль. Можно ФП. Вместе.

Насчет гибкости.. ну не знаю. Термин это слишком гумантитарный. Гибким может быть например матрас.
...
Рейтинг: 0 / 0
вадя. Встретил твой код на хабре.
    #39890525
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton
мультипарадигменность
ок
...
Рейтинг: 0 / 0
вадя. Встретил твой код на хабре.
    #39890528
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton,
Упс... Подумал.
В скале наверно решений вопроса вади больше вариантов.
Когда надо передать гибко параметры.
Это я и назал гибкость.
...
Рейтинг: 0 / 0
вадя. Встретил твой код на хабре.
    #39890535
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не знаю как вопрос Вади натянуть на топик.

Можно передать аргументы как тип Any. Базовый тип для всех скаловских типов.
А внутри сделать что-то вроде паттерн-матчинг. Но это КМК не ООП. Это немножко другое.

Я имею в виду подход другой.
...
Рейтинг: 0 / 0
вадя. Встретил твой код на хабре.
    #39890553
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
вадя. Встретил твой код на хабре.
    #39890556
mad_nazgul
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton
Можно передать аргументы как тип Any. Базовый тип для всех скаловских типов.
А внутри сделать что-то вроде паттерн-матчинг. Но это КМК не ООП. Это немножко другое.


Так в Scala и так паттерн-матчинг "из коробки".

По идее, т.к. в Scala есть вывод типов.
То Any нужен мало лишь когда.

Все через всякие лямбдочки-монадки.

С одной стороны строгая типизация и компилятор если что ругнется.

С другой смотришь на код и думаешь "что ты такое?!". :-)
...
Рейтинг: 0 / 0
вадя. Встретил твой код на хабре.
    #39890571
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадя,
Ок. Пример понял.

Для объединения нескольких объектов в один:
Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
var vasya = {
  age: 21,
  name: 'Вася',
  surname: 'Петров'
};

var user = {
  isAdmin: false,
  isEmailConfirmed: true
};

var student = {
  university: 'My university'
};

// добавить к vasya свойства из user и student
copy(vasya, user, student);

alert( vasya.isAdmin ); // false
alert( vasya.university ); // My university
...
Рейтинг: 0 / 0
вадя. Встретил твой код на хабре.
    #39890572
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mad_nazgul
С одной стороны строгая типизация и компилятор если что ругнется.

С другой смотришь на код и думаешь "что ты такое?!". :-)
да.))
...
Рейтинг: 0 / 0
вадя. Встретил твой код на хабре.
    #39890577
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mad_nazgul
С другой смотришь на код и думаешь "что ты такое?!". :-)
тут всё зависит от уровня владения языком на котором написан этот код.
пришлось мне однажды разбираться - ну пересилил свой подход, встал на позицию автора кода и как бы ничего , переделал то. что требовалось, оставив остальное как есть.
...
Рейтинг: 0 / 0
вадя. Встретил твой код на хабре.
    #39890578
забыл ник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Scala может, scala может... все что угодно!

Люди умудряются даже булеву логику написать исключительно на типах - https://medium.com/swlh/boolean-logic-using-the-scala-compiler-41d83e6891ec

После scala(если хорошо разобрался с системой типов) смотришь на Java, как ты смотрел со стороны Java на Javascript.

Я бы не сказал что она более гибкая, но если код скомпилировался я прктически уверен что все ок, в связи с этим и тесты пишутся в 3 раза меньше.

Я тоже не понимаю зачем может понадобиться переменное количетво параметров. Разные параметры = разная функция, в крайнем случае принимать как параметр функцию высшего порядка
...
Рейтинг: 0 / 0
вадя. Встретил твой код на хабре.
    #39890587
забыл ник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
вадя,
Ок. Пример понял.

Для объединения нескольких объектов в один:
Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
var vasya = {
  age: 21,
  name: 'Вася',
  surname: 'Петров'
};

var user = {
  isAdmin: false,
  isEmailConfirmed: true
};

var student = {
  university: 'My university'
};

// добавить к vasya свойства из user и student
copy(vasya, user, student);

alert( vasya.isAdmin ); // false
alert( vasya.university ); // My university



Омг. Какое унылое говнище...
А что будет если сделать copy(vasya, user, window)?

У ублюдочного javascript просто нету перегрузки методов вот и крутятся бедняги...
...
Рейтинг: 0 / 0
вадя. Встретил твой код на хабре.
    #39890597
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
забыл ник

Я тоже не понимаю зачем может понадобиться переменное количетво параметров. Разные параметры = разная функция, в крайнем случае принимать как параметр функцию высшего порядка

Переменное число параметров - это самый страшный треш который можно было придумать для функций.

Фактически речь идет об одном параметре-списке. И соотв. логика которая процессит эти все параметры - должна
быть набита проверками на количество этих параметров чтоб принимать решения.

Единственный полезный кейс который я видел это ... инициализация тогоже списка через varargs в Guava для
разных коллекций (List, Set).

Лучше выкрутится перегруженной функцией или опциональным параметром с дефолт-значением. Это хотя-бы
дает какие-то уровни строгости.
...
Рейтинг: 0 / 0
вадя. Встретил твой код на хабре.
    #39890617
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадя,
Второй вопрос.
Почему ты не пишешь на промисах?
22008985
...
Рейтинг: 0 / 0
вадя. Встретил твой код на хабре.
    #39890621
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот это разве красиво?
Код: java
1.
2.
3.
4.
5.
6.
zip.createReader(new zip.BlobReader(document.querySelector('#file').files[0]), function (zipReader) {
// get all entries from the zip
            zipReader.getEntries(function (entries) {
                entries.forEach(function (entry) {
                    loa.map.push(entry);
                });
...
Рейтинг: 0 / 0
вадя. Встретил твой код на хабре.
    #39890623
mad_nazgul
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадя
тут всё зависит от уровня владения языком на котором написан этот код.
пришлось мне однажды разбираться - ну пересилил свой подход, встал на позицию автора кода и как бы ничего , переделал то. что требовалось, оставив остальное как есть.


Так это понятно, что "если кто-то сделал, другой завсегда сломать может".
Но блин нафиг на Scala слишком легко написать всякий изврат.
Что-то подобное я испытал/видел в Clipper'е.
Там тоже через блоки кода можно было сделать самомодифицирующуюся программу.
...
Рейтинг: 0 / 0
вадя. Встретил твой код на хабре.
    #39890775
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
Вот это разве красиво?
Код: javascript
1.
2.
3.
4.
5.
6.
zip.createReader(new zip.BlobReader(document.querySelector('#file').files[0]), function (zipReader) {
// get all entries from the zip
            zipReader.getEntries(function (entries) {
                entries.forEach(function (entry) {
                    loa.map.push(entry);
                });


а что тут не понятного?
createReader "метод" объекта zip
в который передаётся вновь создаваемый объект zip.BlobReader , параметром которого является элемент document.querySelector('#file').files[0] (сам догадаешься что за элемент?)
и колбэк function (zipReader)

ну и дальше по списку...

это язык javascript, нравится тебе он или нет.

тоже самое можно и про sql сказать, если глубоко вникать всех sql - mssql, mysql, postgresql, oracle...
...
Рейтинг: 0 / 0
25 сообщений из 109, страница 4 из 5
Форумы / Java [игнор отключен] [закрыт для гостей] / вадя. Встретил твой код на хабре.
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]