
sss3 ?
17.09.2017
19:10:29
Имутабельность можно и в ооп

illiatshurotshka❄️
17.09.2017
19:10:34
ну да

sss3 ?
17.09.2017
19:10:39
Ооп от этого не станет фп

Yan
17.09.2017
19:11:18

Google

illiatshurotshka❄️
17.09.2017
19:11:52

Yan
17.09.2017
19:12:35

illiatshurotshka❄️
17.09.2017
19:12:43
чем функция принадлежащая тайпклассу отличается от метода?

sss3 ?
17.09.2017
19:13:05

Yan
17.09.2017
19:13:09
почему?
Уже выше писал, потому что обращаются к объекту

illiatshurotshka❄️
17.09.2017
19:13:20
кто обращается

Yan
17.09.2017
19:13:56

illiatshurotshka❄️
17.09.2017
19:14:04
да
что это меняет

Yan
17.09.2017
19:14:53
Ну так как тогда это может быть функционально, когда ты обращаешься к объекту, хранящему состояние, определенное классом, и не одним. Это ж не результат нескольких отдельных функций

illiatshurotshka❄️
17.09.2017
19:15:36
состояние не меняется
поэтому я не могу придумать разницу между подобным методом и любым методом тайпкласса, который берет сам параметрезованный тип в аргумент

Google

Sergei
17.09.2017
19:16:37

illiatshurotshka❄️
17.09.2017
19:17:04

Sergei
17.09.2017
19:17:33

illiatshurotshka❄️
17.09.2017
19:17:55
которые принадлежат объектам

Sergei
17.09.2017
19:19:29

Sergei
17.09.2017
19:20:35

illiatshurotshka❄️
17.09.2017
19:20:43
https://docs.oracle.com/javase/tutorial/java/javaOO/methods.html
держи

Sergei
17.09.2017
19:21:54

illiatshurotshka❄️
17.09.2017
19:22:42
да

Sergei
17.09.2017
19:23:00

illiatshurotshka❄️
17.09.2017
19:23:53
ты пропозицируешь что эти термины не синонимичны в java?

Sergei
17.09.2017
19:24:25

Evgeniy
17.09.2017
19:25:03
в java 8 же добавили анонимные функции
насколько я помню
а раньше там всегда было через класс и метод
который объявлялся

illiatshurotshka❄️
17.09.2017
19:26:17

Sergei
17.09.2017
19:26:31
Как по мне - статический метод не то чтобы сильно отличался от "тру-функции".

illiatshurotshka❄️
17.09.2017
19:26:42
где это метод не подходит этому определению.

Google

Yan
17.09.2017
19:27:18

Sergei
17.09.2017
19:28:31
в java 8 же добавили анонимные функции
Ну там и сейчас так, там где можно было передавать анонимный класс который создавался на месте вызова метода
someObject.do(new Action { //code //};)
там просто добавили возможность писать литерал. Что то вроде того как пишется стринг, а там вызывается new String("") за кулисами. Ну или как в груви например вместо того чтобы писать new ArrayList добавили просто литерал листа как квадратные скобки List list = [];

sss3 ?
17.09.2017
19:28:32

Sergei
17.09.2017
19:29:15

illiatshurotshka❄️
17.09.2017
19:29:25
по какому смыслу?

Evgeniy
17.09.2017
19:29:37
я с Java довольно давно не сталкиваюсь, еще со времен java7

Sergei
17.09.2017
19:30:05
по какому смыслу?
функция сама по себе, метод это метод воздействия на обьект в котором находится данный метод

illiatshurotshka❄️
17.09.2017
19:30:18

Sergei
17.09.2017
19:32:09
можно источник?
ну из названий и так же понятно, может где то и описано в какой то книге. Важно их отличать, а том потом делают какие то утил классы (потому что без обьявления класса не компилятся функции (которые на самом деле методы)) и потом в этом классе может быть сотни функций. А вот метод это уже другое дело.

illiatshurotshka❄️
17.09.2017
19:33:11

Sergei
17.09.2017
19:33:39

Yan
17.09.2017
19:34:29

Sergei
17.09.2017
19:34:31

illiatshurotshka❄️
17.09.2017
19:36:22

Sergei
17.09.2017
19:36:43

illiatshurotshka❄️
17.09.2017
19:37:05

Sergei
17.09.2017
19:37:41
Как? Я просто на джаве не пишу, там так можно?
"static import" - можно импортировать из package статические методы класса, поле чего они добавляются к текущему пространству имен. Больше похоже на syntactic sugar, чем на что-то полезное.
import static java.lang.Math.*;
class Demo2{
public static void main(String args[])
{
double var1= sqrt(5.0);
double var2= tan(30);
}
}

Sergei
17.09.2017
19:37:55

illiatshurotshka❄️
17.09.2017
19:38:28

Google

illiatshurotshka❄️
17.09.2017
19:38:42
в прототипе.
прототип это хешмап
в хешмап мы вроде как ложим функции по твоему определению функций

Sergei
17.09.2017
19:39:04

Sergei
17.09.2017
19:39:27
ну да, магии нет

Dezmunt
17.09.2017
19:39:33
Ребят, начитался кучу статей и мнений по-поводу проведенной черты между абстракцией и инкапсуляцией. Только по-понятному плс)

Sergei
17.09.2017
19:39:36

illiatshurotshka❄️
17.09.2017
19:39:44

Yan
17.09.2017
19:40:23

Sergei
17.09.2017
19:43:49
что?
Ну что такое обьект, по вроде бы общепринятому определению, это структура данных ( сущность более подходящее определение) обладающая состоянием и поведением, в основном обьекты представляют собой абстракции реального мира для упрощения решения задач человеком в человеческих терминах и логике мышления.
функция тоже может обладать состоянием, поведение это сама функция, вот и обьект

andretshurotshka?❄️кде
17.09.2017
19:45:18
Какое состояние у функции
лол

illiatshurotshka❄️
17.09.2017
19:49:07

Sergei
17.09.2017
19:49:32
"lol no generics" (но это про Golang)

illiatshurotshka❄️
17.09.2017
19:49:35
и я вообще не понял к чему это

Sergei
17.09.2017
19:50:51
мы вроде про js
function counter() {
let count = 0;
return function() {
count = count + 1;
return count;
}
}
c1 = counter();
c2 = counter();
console.log(c1()); //1
console.log(c1()); //2
console.log(c2()); //1
Ну например я создаю конструктор функций (обьектов) вызываю этот конструктор, он возвращает мне экземпляры функции, каждый экземпляр функции(обьекта) независим один от другого

Google

Sergei
17.09.2017
19:51:38
как без дженериков??

illiatshurotshka❄️
17.09.2017
19:51:57
объекты в жс вообще не так делаются

andretshurotshka?❄️кде
17.09.2017
19:52:15

illiatshurotshka❄️
17.09.2017
19:52:37

Sergei
17.09.2017
19:54:05
объекты в жс вообще не так делаются
как делаются обьекты: берётся структура типа таблица т.е. ключ значение, и набивается стрингами и функциями, так же можно добавлять и поля, только в этом случае ключем так же будет строка, а значением уже другой тип.

illiatshurotshka❄️
17.09.2017
19:54:52
мне кажется тебе стоит почитать про prototype based programming

Sergei
17.09.2017
19:55:36
вот вам и тру ООП))
Как говорил Егор, если ооп это обьекты это сущности из реального мира, то отсутствие дженериков как бы противоречит этому

Aleh
17.09.2017
19:56:04

illiatshurotshka❄️
17.09.2017
19:56:39
я на этом закончу потому что весь разговор основан на выдуманной терминологии которая была поставлена вместо правдивой

Sergei
17.09.2017
19:56:49

Yan
17.09.2017
20:05:31
Почему?
Потому что функция не объект

Sergey
17.09.2017
20:06:08
все зависит от контекста. В языках типа js-а функция это объект.

Yan
17.09.2017
20:06:57

Sergey
17.09.2017
20:07:01
да и в Lua насколько я помню

illiatshurotshka❄️
17.09.2017
20:07:09
function meme () { this.a = 1 }
new meme ()

Sergei
17.09.2017
20:08:51
да и в Lua насколько я помню
ну там есть отдельный тип как функция, но сути особо не меняет, вообще определение обьекта, это состояние и поведение, состояние может быть, а поведение это как бы один метод, (функция)